Перейти к содержанию
    

вычисление crc14 при помощи железа в stm32

Должен получаться не ноль, а некая константа,
Если CRC просто добавляется к данным без преобразований (инверсии), то должен всегда получаться ноль. Если совсем на пальцах, то CRC - остаток от деления полиномов. По аналогии с обычным делением, если A/B дает в остатке C, то (A-C)/B даст в остатке ноль. Всегда. При делении полиномов вычитание выполняется по модулю 2, а оно эквивалентно сложению по модулю 2 (то же происходит и при добавлению CRC к исходному сообщению).

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

A/B - Остаток С

(А-С)/B остаток ноль

это понятно

 

даже понятно что для модуля 2

A-C == A+C

 

(A+C)/B - остаток ноль

 

непонятно почему дописывание остатка в конце слова данных эквивалентно сложению. Вот какой момент мне не очень понятен... И в црц для модбаса у меня реально не получался ноль, но црц считается правильно так как сообщения принимаются и моими и чужими программами.

 

вот что в зависимости от полинома может выходить какая то константа и она часто ноль, это более приятная версия:) хотя бы потому что не рушит мой мир:)

 

Можно еще дальше на пальцах почему получается ноль?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дописывание остатка это умножение сообщения на xn и сложение. A*xn+C

где n - длина crc.

Но у Модбаса есть ещё одна особенность: у них в начале регистр инициализируется не нулём, а 0xFFFF.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Дописывание остатка это умножение сообщения на xn и сложение. A*xn+C

где n - длина crc.

Но у Модбаса есть ещё одна особенность: у них в начале регистр инициализируется не нулём, а 0xFFFF.

 

про особенность понятно, наверное это и не дает нулить сумму, хотя тоже не факт.

 

и про дописывание в конце - тоже понятно, там даже больше Х == 2, но от этого не становится очевидным почему такая добавка должна привести к нулевому остатку...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...