Дано: имеем RS-232 и termios.
Так же есть железка, которая гонит данные в 9-битном режиме, причём этот дополнительный бит используется для сигнализации начала пакета.
Жопа в следующем:
Никакими установками последовательного порта нельзя добиться приёма этого 9-го бита. Есть режимы, где проверяется чётность (если этот бит трактовать как чётность), и при ошибке принятый байт предваряется кодом 0xFF, - это единственный режим, который хоть как-то затрагивает приём 9-го бита. Естественно, он не подходит, поскольку чётность байта может совпасть (в 50%) с этим битом, и мы никак не отловим в таком случае начало пакета.
Хотелось бы что-нибудь типа 16-битного режима ( read() читает по 16-битным словам), в которых старший байт показывает состояние 9-го бита (и даже чего-нибудь еще!).
Я прав, что жопа неразрешима, или я чего-то недопонял?
Ответ на:
комментарий
от DonkeyHot
Ответ на:
комментарий
от scyld
Ответ на:
комментарий
от DonkeyHot
Ответ на:
комментарий
от DonkeyHot
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум POSIX (2010)
- Форум POSIX (2006)
- Форум косяки (2008)
- Форум Косяк (2006)
- Форум мир огромный и огромные возможности (2005)
- Форум POSIX signals (2012)
- Форум posix threads (2011)
- Форум POSIX таймеры (2011)
- Форум POSIX & API (2014)
- Форум bash, posix?.. (2021)