Повышение надежности последовательной ИК-связи с помощью программного обеспечения - PullRequest
1 голос
/ 20 октября 2011

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

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

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

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

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

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

1 Ответ

2 голосов
/ 20 октября 2011

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

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

ссылка на исходный код

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...