Лучшей вещью, которую я мог найти в Google, была кодировка Рида-Соломона; но это кажется довольно резким.Улучшение надежности IR-серий с помощью программного обеспечения
В общем, я общаюсь с небольшим устройством с ограниченными ресурсами, имеющим последовательный порт. Связь осуществляется через ИК-порт; последовательные порты напрямую подключаются к аппаратам ИК-кодировщика/декодера, которые затем подключаются к ИК-трансиверам.
Связь полудуплекс. Это аппаратное ограничение, так как ИК-трансиверы будут видеть свою собственную передачу в противном случае. Я опросу с хостом и использую прерывание на клиенте, чтобы знать, когда его нужно вернуть.
Проблема заключается в том, что оборудование чрезвычайно чувствительно к электростатическим разрядам. Я принял все практические аппаратные меры, чтобы уменьшить эту проблему, и они недостаточно хороши; Я сейчас смотрю на проблемы с программным обеспечением.
Может ли кто-нибудь предложить какие-либо реализации для восстановления ошибок, в идеале, которые не требуют повторной передачи?
Чем проще, тем лучше. И если там есть свободная библиотека, еще лучше!
Рида-Соломона, кажется, в значительной степени стандарт для коррекции ошибок. У меня нет опыта работы с ниже, просто нашел его по поиску в Google и, таким образом, проверка reiabiltu будет зависеть от вас, но библиотеки для RS находятся там: – gnometorule
http://www.ka9q.net/code/fec/ – gnometorule