Menu

Commit [r27]  Maximize  Restore  History

Добавлена константа ERR_PACKET_THRESHOLD = 2. Теперь вы можете в одном месте задать правило: 1 (ошибка хотя бы в одном), 2 (ошибка в большинстве) или 3 (ошибка только если все 3 пакета битые).

Логика подсчета: введен счетчик err_packet_count. Он инкрементируется только один раз за попытку (за один req_idx), даже если в ответе пришло несколько байт ошибок. Это корректно считает именно количество пакетов, а не общее количество байт ошибок.
Финальное условие: переменная is_error теперь вычисляется как (!cycle_connected) || (err_packet_count >= ERR_PACKET_THRESHOLD). Это элегантно закрывает оба ваших требования (отсутствие связи = ошибка, наличие ошибок в N пакетах = ошибка).

dynamicsalex 2026-08-21

changed /trunk/CLPCOM_Magnit_Experimental/CLPCOM_Magnit.pdsprj
changed /trunk/CLPCOM_Magnit_Experimental/CLPCOM_Magnit.pdsprj.DESKTOP-2NG828O.alter.workspace
changed /trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit.atsuo
changed /trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/CLPCOM_Magnit.cpp
changed /trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/Debug/CLPCOM_Magnit.elf
changed /trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/Debug/CLPCOM_Magnit.hex
changed /trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/Debug/CLPCOM_Magnit.lss
changed /trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/Debug/CLPCOM_Magnit.map
changed /trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/Debug/CLPCOM_Magnit.srec
changed /trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/TIME_CONSTANT.h
changed /trunk/CLPCOM_Magnit_Experimental/Last Loaded CLPCOM_Magnit.pdsbak
/trunk/CLPCOM_Magnit_Experimental/CLPCOM_Magnit.pdsprj.DESKTOP-2NG828O.alter.workspace Diff Switch to side-by-side view
Loading...
/trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/CLPCOM_Magnit.cpp Diff Switch to side-by-side view
Loading...
/trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/Debug/CLPCOM_Magnit.hex Diff Switch to side-by-side view
Loading...
/trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/Debug/CLPCOM_Magnit.lss Diff Switch to side-by-side view
Loading...
/trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/Debug/CLPCOM_Magnit.map Diff Switch to side-by-side view
Loading...
/trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/Debug/CLPCOM_Magnit.srec Diff Switch to side-by-side view
Loading...
/trunk/CLPCOM_Magnit_Experimental/Firmware/CLPCOM_Magnit/CLPCOM_Magnit/TIME_CONSTANT.h Diff Switch to side-by-side view
Loading...