Отличное объяснение. Всегда использовал, но не вдавался настолько глубоко в подробности как рассчитывать. Тоже пытался найти адекватно написанную информацию про алгоритм вычисления полинома, но не находил. А тут прекрасный рассказ👌
@zeroman9172 жыл бұрын
Очень сильно помогло. Все четко шаг за шагом объяснил. Спасибо тебе большое. 🤩🤩🤩🤗
@ajdarseidzade6883 жыл бұрын
Спасибо. Реально то, что нужно было. А нужно было до конца разобраться тут и все откладывал.
@slavaglow69333 жыл бұрын
Спасибо за материал. Еще предстоит разобраться с CRC.
@d1zz3l3 жыл бұрын
Спасибо за очередное видео. Заждались уже... =)
@MoralGTV5 ай бұрын
Спасибо за нормальный разбор инициализации хардварного юнита для crc16. Ибо нигде в документации на свой камень не нашел, что при смене размера элемента входного потока со слова на байт, функции передается именно число байт, а не слов. А то все не мог понять почему при корректной настройке только, если ставить на вход слово и скармливать именно слово, то результат сходится.
@openFrimeTv2 жыл бұрын
часто в аврках встречал табличный срс, было б интересно про него тоже послушать)
@szapsis Жыл бұрын
Спасибо тебе большое друг!
@ДмитрийВсемогущий-я2и2 ай бұрын
Отлично! Если бы вы ещё выложили пример MODBUS-RTU на МК с проектом на гитхаб, то видео цены бы не было!
@Solderingironspb2 ай бұрын
Пример работы мастера есть, но там личный проект и не факт, что разберетесь
@АндрейВасильев-ъ9э Жыл бұрын
Спасибо за объяснение
@maisterofdeath71732 жыл бұрын
красава по факту все разложил без фигни
@statstopfinish3 жыл бұрын
Спасибо нужно, попробовать . У меня в Mudbos расчет CRC16 программный , работаю с MK серией G. Что то особо не вникал в аппаратный расчет CRC думал там на 32 бита все заточено, а оказывается вон оно как. Нужно попробовать , надеюсь аппаратный расчет CRC 16 действительно происходит быстрей чтоб ради этого заморачиваться . Мне как раз не мешало бы снять нагрузку с МК, особенно по Modbus а то HMI панель напрягает своими запросами.
@rfvalve2 жыл бұрын
Благодарю за видео! У меня возник один вопрос по поводу алгоритма(8:16): почему после шага "Начало", необходимо начальное значение crc складывать по модулю 2 с входным данным(на видео данный шаг, выглядит следующим образом: CRC = 0xFFFFFFFF ^ 0x4F32CCDE)?
@Solderingironspb2 жыл бұрын
После начала происходит операция XOR между входными данными и начальным значением CRC. В большинстве случаев начальное CRC равняется 0xFFFFFFFF .Т.е. Представим, что у нас массив из 2 элементов типа uint32_t. Мы хотим посчитать CRC32. Изначально у нас CRC32 = 0xFFFFFFFF. Далее мы делаем операцию XOR между 0xFFFFFFFF и 1 элементом буфера, заводим после этого счетчик и топаем по алгоритму. В итоге имеем новое CRC32. Возвращаемся в начало. Теперь у нас CRC32 уже измененное. Делаем операцию XOR между ним и 2 элементом массива, опять проходим по циклу и получаем CRC32 от 2 элементов массива. Гляньте код на Си, что я представил. Может понятней будет.
@zlakomanoff2 жыл бұрын
@@Solderingironspb мне кажется или функция расчета crc в примере (которая на С), не умеет в более чем одно 32 битное слово...
@openFrimeTv3 жыл бұрын
блин, да это ж мозг сломать можно. я еще с указателями разбираюсь) а тут такое
@Solderingironspb3 жыл бұрын
Ахах) ну да, это сложные темы)
@serggorod14232 жыл бұрын
Я тоже... -> , : , :: , ->[],....
@serggorod14232 жыл бұрын
До этого дня я и не_знал_зачем мне нужно СяС!
@АнонимАнаномный2 жыл бұрын
я так понимаю все эти полиномы не позволят отбросив 2 старших байта от результата получить правильную CRC16 сумму?
@РоманСазанов-ы4х11 ай бұрын
Почему так crc32 = (crc32
@АнатолийСеменов-л9г Жыл бұрын
Добрый день, посмотрите мое представления об идее CRC 4