Hamming
Кодирование и восстановление данных по алгоритму Extended Hamming для надёжной передачи по ненадёжным каналам связи
Установка
Последняя опубликованная версия- Скачайте архив — реестр отдает его уже проверенным.
- В Arduino IDE выберите «Скетч → Подключить библиотеку → Добавить .ZIP библиотеку».
- Укажите скачанный файл — библиотека появится в списке доступных.
SHA-256:0bb3ed1b87cef27c1676d62580dd963586e51cf0a321da39ee861eb0404be585Hamming-2.0.3-0bb3ed1b.zipОписание
Когда нужно передать данные по ненадёжному каналу — будь то радиосвязь или шумный провод — один испорченный бит может испортить всё. Эта библиотека реализует алгоритм Extended Hamming для кодирования и восстановления данных. Вы упаковываете исходные данные с избыточностью, и на приёме библиотека не только обнаружит ошибку, но и восстановит повреждённый бит в пределах блока. Поддерживаются несколько классов кодирования (Hamming3—7) с разным балансом между размером пакета и надёжностью: низкие порядки (3-4) компактнее, но обрабатываются медленнее. Есть опция перемешивания данных для защиты от нескольких ошибок подряд. На ATmega328p кодирование 100 байт занимает 7-10 мс в зависимости от выбранного класса. Версия 2 несовместима с первой, но если нужна старая реализация, можно подключить её через include.