Мы делаем следующим образом:
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено LM 28 декабря 2004 г. 16:27
В ответ на: Ребята надо организовать сеть МК (AVR), по UART пакетами по 10 байт. Как на ASM проще CRC организовать? Помогите примером. Не изобретать же колесо. отправлено Ursul 28 декабря 2004 г. 12:54

Сеть правда имеет MASTER-а, но подсчет КС от этого не страдает.
Контрольная сумма подсчитывается побайтным суммированием без учета переноса всех передаваемых байтов пакета, за исключением самой КС, с последующим дополнением до двух (инверсия + 1). В таком виде КС передается последним байтом пакета.
При приеме пакета текущая КС подсчитывается аналогично и после приема байта КС и его суммирования с текущей КС получаем результат, равный 0. Если были ошибки, то результат будет отличен от 0.
Конечно, такая КС не защищает на 100%, но у нас работает уже около 14 лет. Все недоразумения при передаче решаются протоколом более высокого уровня, как то передача квитанции, повторный запрос и пр.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru