ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
4 июля
1308917 Топик полностью
Cкpипaч, пророк (12.05.2023 11:30, просмотров: 175) ответил my504 на Столкнулся со странным... Делаю проект на AT32F421 (Cortex M4). В проекте есть обмен по UART с идентичным другому серийному устройству (с таким же МК) протоколом. Обмен ведется пакетами по 64 байта. В пакете от ПО к МК имеется CRC8 в 59-м байте, который считается по таблице. В серийном изделии все работает превосходно. В текущем проекте просто скопировал весь обмен из серийного. Обмен идет отлично - пакет в отладчике я вижу идентичный посланному из ПО. Но CRC при
Скобки от for? Или у вас осознанно crc считается по всему блоку, за исключением одного байта в середине? 

if(arrayUARTin[59]==crc) return 1; else return 0;


А ";" после return 1 точно не отбивает else на предыдущий if ?

Я бы поставил фигурные скобки и проверил.

... но не любой ценой.