реклама на сайте
подробности

 
 
> CRC вопрос!
bezobraznic
сообщение Oct 5 2007, 19:04
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 169
Регистрация: 26-05-05
Пользователь №: 5 441



Необходимо гонять между контроллером и PC через уарт большие пакеты данных. Надо проверять целостность и если что повторять передачу. Кто реализовывал подобные задачи подскажите пожалуйста идею реализации!! Спасибо!!!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
DiMomite
сообщение Oct 6 2007, 22:16
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 47
Регистрация: 8-04-06
Из: Одесса
Пользователь №: 15 959



Позволю себе немного дополнить и уточнить пост Сергея для придания ему математической точности.

Цитата
CRC - это остаток от деления массива данных (который берется как очень длинное число) на полином. По аналогии с простым делением - если A/B дает в остатке C, то (A-C)/B дадут в остатке ноль.


Здесь под А нужно понимать не исходный массив данных как он есть, а массив исходных данных с дописанными к нему в конце нулевыми байтами (для CRC-16 - это 2 байта). Простое деление исходного массива без дополнения его сзади нулями на порождающий полином не есть циклический код.
Во всех готовых реализациях (аппаратных и программных) это "дописывание" происходит само собой.

Это на случай, если кто-то захочет проверить код "на бумажке", а у него не будет сходиться ответ.

Сообщение отредактировал DiMomite - Oct 6 2007, 22:21
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- bezobraznic   CRC вопрос!   Oct 5 2007, 19:04
- - rezident   Дык, а в чем собственно вопрос-то? Есть CRC8, CRC1...   Oct 5 2007, 19:14
- - PSP   В общем случае в зависимости от вероятности ошибки...   Oct 5 2007, 19:34
- - mdmitry   Посмотрите стандартные протоколы: xmodem, zmodem,...   Oct 5 2007, 19:45
- - rezident   Ну тогда еще один вариант CRC16. С начальным входн...   Oct 5 2007, 22:26
- - CD_Eater   Для больших пакетов рулит Adler32 (скорость вычисл...   Oct 6 2007, 06:11
- - Kuzmi4   2 PSP - а про корректирующие коды - можно поподроб...   Oct 6 2007, 08:24
|- - PSP   Цитата(Kuzmi4 @ Oct 6 2007, 11:24) 2 PSP ...   Oct 6 2007, 12:39
- - bezobraznic   Спасибо за ответы! Последний вопрос! Я по...   Oct 6 2007, 08:37
- - Kuzmi4   2 bezobraznic - правильно..   Oct 6 2007, 08:43
- - DiMomite   ЦитатаСпасибо за ответы! Последний вопрос...   Oct 6 2007, 11:10
- - sensor_ua   Цитатавторой - CRC считается для всех данных+поле ...   Oct 6 2007, 11:34
- - bezobraznic   Цитата(DiMomite @ Oct 6 2007, 14:10) Еще ...   Oct 6 2007, 12:20
|- - Сергей Борщ   Цитата(bezobraznic @ Oct 6 2007, 15:20) Я...   Oct 6 2007, 18:44
|- - AVR   Есть одна интересная страница, которая сгенерирует...   Oct 6 2007, 19:13
- - sensor_ua   В передатчике ничего не правим. В приёмнике подсчё...   Oct 6 2007, 12:26


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 13:54
Рейтинг@Mail.ru


Страница сгенерированна за 0.01358 секунд с 7
ELECTRONIX ©2004-2016