STM32. CRC. Теория. Как считать. Алгоритм. CRC HAL. Аппаратный блок. CRC-8/16/32 бита.

  Переглядів 5,187

Олег Волков

Олег Волков

День тому

Многие пренебрегают изучением CRC. Пренебрегают общением между устройствами с использованием CRC. А ведь это Ваша защита от битых данных. Ключ к успеху в проектировании надежных устройств)
Не поленись, посмотри видео)
Мой GitHub: github.com/Solderingironspb/L...
Мы в контакте: solderingiron.stm32
ЯндексДзен: zen.yandex.ru/id/622208eed2eb...
Материалы из занятия: github.com/Solderingironspb/L...
Википедия про CRC: ru.wikipedia.org/wiki/%D0%A6%...
AN4187: www.st.com/resource/en/applic...
CRC_Calc_Online: crccalc.com/
00:00 Введение
00:12 Что такое CRC
00:58 Как нам поможет CRC
01:25 Вычисление CRC(Как считать полином?)
05:58 Алгоритм вычисления CRC
08:55 Программный вариант расчета CRC-32(как пример)
09:52 Про аппаратную поддержку CRC на STM32
10:31 Активация модуля CRC(простые МК)
12:22 Активация модуля CRC(продвинутые МК)

КОМЕНТАРІ: 22
@sozdatelEd
@sozdatelEd 2 роки тому
Отличное объяснение. Всегда использовал, но не вдавался настолько глубоко в подробности как рассчитывать. Тоже пытался найти адекватно написанную информацию про алгоритм вычисления полинома, но не находил. А тут прекрасный рассказ👌
@zeroman917
@zeroman917 Рік тому
Очень сильно помогло. Все четко шаг за шагом объяснил. Спасибо тебе большое. 🤩🤩🤩🤗
@user-td8wl7dd4m
@user-td8wl7dd4m 5 місяців тому
Спасибо за объяснение
@slavaglow6933
@slavaglow6933 2 роки тому
Спасибо за материал. Еще предстоит разобраться с CRC.
@ajdarseidzade688
@ajdarseidzade688 2 роки тому
Спасибо. Реально то, что нужно было. А нужно было до конца разобраться тут и все откладывал.
@d1zz3l
@d1zz3l 2 роки тому
Спасибо за очередное видео. Заждались уже... =)
@szapsis
@szapsis 11 місяців тому
Спасибо тебе большое друг!
@OpenFrimeTVcom
@OpenFrimeTVcom 2 роки тому
часто в аврках встречал табличный срс, было б интересно про него тоже послушать)
@maisterofdeath7173
@maisterofdeath7173 Рік тому
красава по факту все разложил без фигни
@statstopfinish
@statstopfinish 2 роки тому
Спасибо нужно, попробовать . У меня в Mudbos расчет CRC16 программный , работаю с MK серией G. Что то особо не вникал в аппаратный расчет CRC думал там на 32 бита все заточено, а оказывается вон оно как. Нужно попробовать , надеюсь аппаратный расчет CRC 16 действительно происходит быстрей чтоб ради этого заморачиваться . Мне как раз не мешало бы снять нагрузку с МК, особенно по Modbus а то HMI панель напрягает своими запросами.
@OpenFrimeTVcom
@OpenFrimeTVcom 2 роки тому
блин, да это ж мозг сломать можно. я еще с указателями разбираюсь) а тут такое
@Solderingironspb
@Solderingironspb 2 роки тому
Ахах) ну да, это сложные темы)
@serggorod1423
@serggorod1423 Рік тому
Я тоже... -> , : , :: , ->[],....
@rfvalve
@rfvalve 2 роки тому
Благодарю за видео! У меня возник один вопрос по поводу алгоритма(8:16): почему после шага "Начало", необходимо начальное значение crc складывать по модулю 2 с входным данным(на видео данный шаг, выглядит следующим образом: CRC = 0xFFFFFFFF ^ 0x4F32CCDE)?
@Solderingironspb
@Solderingironspb 2 роки тому
После начала происходит операция XOR между входными данными и начальным значением CRC. В большинстве случаев начальное CRC равняется 0xFFFFFFFF .Т.е. Представим, что у нас массив из 2 элементов типа uint32_t. Мы хотим посчитать CRC32. Изначально у нас CRC32 = 0xFFFFFFFF. Далее мы делаем операцию XOR между 0xFFFFFFFF и 1 элементом буфера, заводим после этого счетчик и топаем по алгоритму. В итоге имеем новое CRC32. Возвращаемся в начало. Теперь у нас CRC32 уже измененное. Делаем операцию XOR между ним и 2 элементом массива, опять проходим по циклу и получаем CRC32 от 2 элементов массива. Гляньте код на Си, что я представил. Может понятней будет.
@zlakomanoff
@zlakomanoff Рік тому
@@Solderingironspb мне кажется или функция расчета crc в примере (которая на С), не умеет в более чем одно 32 битное слово...
@serggorod1423
@serggorod1423 Рік тому
До этого дня я и не_знал_зачем мне нужно СяС!
@safotv1026
@safotv1026 Рік тому
Здравствуйте как с вами можно связаться
@Solderingironspb
@Solderingironspb Рік тому
olegdizzvolkov@yandex.ru
@user-mq9wp3mj8x
@user-mq9wp3mj8x Рік тому
Добрый день, посмотрите мое представления об идее CRC 4
@user-tl6ev6nh2k
@user-tl6ev6nh2k Рік тому
я так понимаю все эти полиномы не позволят отбросив 2 старших байта от результата получить правильную CRC16 сумму?
@user-hy3bn1vz7k
@user-hy3bn1vz7k 2 місяці тому
Почему так crc32 = (crc32
STM32. Обращение к подписчикам
3:40
Олег Волков
Переглядів 3,1 тис.
Спектакль для окупантів та ждунів 🤯
00:47
Радіо Байрактар
Переглядів 539 тис.
GADGETS VS HACKS || Random Useful Tools For your child #hacks #gadgets
00:35
Как проредить отметки на поперечниках?
10:45
Олег Коновалов
Переглядів 4
How do CRCs work?
47:30
Ben Eater
Переглядів 618 тис.
EEPROM AT24Cxx. Подключаем к STM32. CRC32.
27:09
Олег Волков
Переглядів 7 тис.
57.  CRC алгоритм (Урок 48. Теория)
21:27
MyChipPic
Переглядів 31 тис.
💪Установи свой Home Assistant за 5 минут! 🏠 Умный Дом это просто!
6:04
Контрольная сумма crc + modbus rtu
7:03
Александр Писанец
Переглядів 24 тис.
Изучаю STM32!
20:26
Лёша Кластер
Переглядів 186 тис.
Первые продажи Ryzen на Ozon и первый возврат! 😱
13:17
Герасимов Live
Переглядів 21 тис.
ЭТОТ МОНСТР ОТ INFINIX КРУЧЕ ЛЮБОГО XIAOMI! Я в шоке…
13:01
Thebox - о технике и гаджетах
Переглядів 24 тис.
I7 2600K тест в играх и сравнение с AMD Ryzen
17:53