Свойство .mode
| Назначение: | Устанавливает режим работы выбранного в данный момент последовательного порта (выбор выполняется через ser.num). |
| Тип: | Enum (pl_ser_mode, byte) |
| Диапазон значений: |
|
| См. также: | Три режима последовательного порта, Настройки последовательного порта |
Подробности
Менять режим порта можно только при закрытом порте (ser.enabled = 0 - NO). В зависимости от платформы вы можете переназначить линии RTS/W1out/cout и CTS/W0&1in/cin на другие выводы устройства с помощью свойств ser.rtsmap и ser.ctsmap. Кроме того, в зависимости от выбранного режима и платформы, некоторые или все линии последовательного порта может потребоваться настроить как входы или выходы через свойство io.enabled объекта io.. Подробности см. в документации по платформе вашего устройства (например, для EM1000 она находится здесь).
В Tibbo понимают, что логичнее было бы назвать это свойство «interface», а не «mode». Проблема в том, что свойство появилось позже, когда ser.interface уже стало означать нечто другое. Поэтому пришлось выбрать неиспользованный термин.
Ниже кратко представлены три режима работы последовательного порта.
Режим UART
Подходит для связи по RS232, RS422, RS485 и т. п. в полнодуплексном или полудуплексном режиме (см. ser.interface). Данные передаются через вывод TX и принимаются через вывод RX. Дополнительно в полнодуплексном режиме для управления потоком (см. ser.flowcontrol) используются линии RTS (выход) и CTS (вход). Кроме того, в полудуплексном режиме RTS можно использовать для управления направлением.
Режим Wiegand
Подходит для отправки данных на любое стандартное устройство Wiegand и приёма данных от него. Данные передаются через выводы W0out и W1out, а принимаются через выводы W0&1in и W1in. «W0&1in» означает, что на этот вход необходимо подать логическое И сигналов W0 и W1. Поэтому для приёма данных Wiegand нужен внешний логический элемент.
Режим clock/data
Подходит для отправки данных на любое стандартное устройство clock/data (магнитной полосы) и приёма данных от него. Данные передаются через выводы cout и dout, а принимаются через выводы cin и din. Третья линия интерфейса магнитной полосы - card present (карта присутствует) - для приёма данных не нужна. Для передачи в качестве выхода card present (под управлением программы) можно использовать любую линию ввода-вывода.