2013-07-05 4 views
0

Предположим, вы хотите подключить свой настольный компьютер Ubuntu 13.04 через USB-кабель TTL-232R-3V3 к интерфейсу UART встроенной системы, в которой используется индивидуальный стиль Linux, который не относится к крупному дистрибутиву. Ваша собственная машина предлагает вам интерфейс к вашему соединению через /dev/ttyUSB0. Поскольку вы используете фреймворк для языка высокого уровня (pySerial), вы знаете, что вы настраиваете некоторые параметры терминала через C-struct termios.Как узнать, какой терминал настроен?

Теперь вопрос в том, где находится этот терминал, который вы настраиваете? Эта информация отправляется на удаленное устройство и настраивается? Или вы просто конфигурируете, как интерфейс /dev/ttyUSB0 интерпретируется вашей системой? Или может быть, даже какая-то конфигурация происходит в логике кабеля UART-USB-конвертера? И если все 3 возможны, как бы вы определили, какой набор параметров сконфигурирован вашими операциями termios на /dev/ttyUSB0?

Если он делает вещи проще объяснить, рассмотрим пример LF/CR обработки, которые могут содержать, в зависимости от флагов вы установите, либо только LF, только CR или оба, как бы характерно для окон. Однако мой вопрос не ограничивается этими вариантами.

Примечание: Я пришел к этому вопросу после того, как понял, что уже видел какие-то параметры активными, что man page заявляет, что недоступен в POSIX и Linux.

ответ

1

Все параметры конфигурации - это настройки для драйвера устройства. Большинство из них полностью реализованы в программном обеспечении драйвера, таком как эхо, трансляция CR-to-LF и режим raw-vs-cooked.

Некоторые из них, такие как режимы, относящиеся к сигналам RS-232, могут быть реализованы в аппаратном обеспечении устройства, и драйвер устройства выполнит соответствующие операции управления устройством, чтобы включить эти параметры.