Действительно ли возможно использовать 9-разрядную последовательную передачу в Linux?

Коммуникация RS-232 иногда использует 9-разрядные байты. Это может использоваться для общения с несколькими микроконтроллерами на шине, где 8 битов являются данными, и дополнительный бит указывает на адресный байт (а не данные). Неактивные контроллеры только генерируют прерывание для адресных байтов.

Программа Linux может отправить и получить 9-разрядные байты по последовательному устройству? Как?

11
задан Charles 8 February 2012 в 14:33
поделиться

2 ответа

Система termios не поддерживает напрямую 9-битные операции, но в некоторых системах ее можно эмулировать, играя трюками с флагом CMSPAR. Это недокументировано, и я не во всех реализациях.

Вот ссылка на подробное описание того, как выполняется 9-битная эмуляция:

http://www.lothosoft.ch/thomas/libmip/markspaceparity.php

5
ответ дан 3 December 2019 в 08:28
поделиться

Может ли программа Linux отправлять и получать 9-битные байты через последовательное устройство ?

Стандартное оборудование UART (8251 и т. Д.) Не поддерживает режимы 9-битных данных.

1
ответ дан 3 December 2019 в 08:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: