2011-10-20 2 views
1

Лучшей вещью, которую я мог найти в Google, была кодировка Рида-Соломона; но это кажется довольно резким.Улучшение надежности IR-серий с помощью программного обеспечения

В общем, я общаюсь с небольшим устройством с ограниченными ресурсами, имеющим последовательный порт. Связь осуществляется через ИК-порт; последовательные порты напрямую подключаются к аппаратам ИК-кодировщика/декодера, которые затем подключаются к ИК-трансиверам.

Связь полудуплекс. Это аппаратное ограничение, так как ИК-трансиверы будут видеть свою собственную передачу в противном случае. Я опросу с хостом и использую прерывание на клиенте, чтобы знать, когда его нужно вернуть.

Проблема заключается в том, что оборудование чрезвычайно чувствительно к электростатическим разрядам. Я принял все практические аппаратные меры, чтобы уменьшить эту проблему, и они недостаточно хороши; Я сейчас смотрю на проблемы с программным обеспечением.

Может ли кто-нибудь предложить какие-либо реализации для восстановления ошибок, в идеале, которые не требуют повторной передачи?

Чем проще, тем лучше. И если там есть свободная библиотека, еще лучше!

+1

Рида-Соломона, кажется, в значительной степени стандарт для коррекции ошибок. У меня нет опыта работы с ниже, просто нашел его по поиску в Google и, таким образом, проверка reiabiltu будет зависеть от вас, но библиотеки для RS находятся там: – gnometorule

+1

http://www.ka9q.net/code/fec/ – gnometorule

ответ

2

Если вы не хотите использовать Рида-Соломона, как насчет Golay Кодировка? Его довольно маленький алгоритм, и этот код полностью реализует его в одном файле C и появляется кошерно для использования в коммерческих проектах (хотя это не одна из стандартных лицензий Open Source).

Возможно, вы также найдете другие реализации. Коды Голей являются одним из нескольких механизмов, используемых для восстановления ошибок в цифровых радиосистемах с низкой скоростью передачи.

link to source code

Смежные вопросы