Последовательные порты

У EM2000 четыре последовательных порта, каждый из которых может работать в одном из трёх режимов: UART, Wiegand или clock/data.

Режим UART

Режим UART поддерживает полнодуплексную и полудуплексную связь.

Полнодуплексный интерфейс обычно применяется для связи по RS232, RS422, полнодуплексному RS485 или «последовательному TTL» (КМОП).

В полнодуплексном режиме UART у каждого порта есть линии TX и RX, а также линии RTS и CTS, которые при необходимости используются для аппаратного управления потоком. Когда управление потоком включено, EM2000 управляет линиями RTS и CTS автоматически.

Полудуплексный интерфейс обычно связан с полудуплексной связью по RS485. В этом режиме последовательный порт использует линии TX, RX и RTS, причём последняя служит линией управления направлением. Управление направлением автоматическое и не требует никакого вмешательства со стороны вашей программы на Tibbo BASIC/C.

Линии TX и RX перенести нельзя. Линии RTS и CTS можно переназначать. В качестве RTS последовательного порта можно назначить любую неиспользуемую линию GPIO. Для CTS можно выбрать только линии прерывания 0-7 (линии GPIO 17-24). Гибкое переназначение линий RTS и CTS обеспечивают свойства назначения линий ввода-вывода, которые предлагает объект ser..

Линиями DTR и DSR, которые часто встречаются на портах RS232, объект ser. не управляет. За эти линии отвечает ваше приложение на Tibbo BASIC/C. Поэтому вы сами выбираете, какие линии GPIO EM2000 будут использоваться как DTR и DSR в вашей системе.

Несмотря на гибкое назначение, Tibbo определила назначение по умолчанию для линий RTS, CTS, DTR и DSR. Это сделано для стандартизации принципиальных схем во всей линейке продуктов Tibbo. На схеме EM2000 такие назначения по умолчанию показаны СИНИМ цветом.

У UART EM2000 есть одно существенное ограничение: нельзя одновременно использовать режим 7 бит на символ и режим «без контроля чётности». Все остальные режимы поддерживаются.

Режим Wiegand

Интерфейс Wiegand часто применяется в системах безопасности. Его поддерживает множество считывателей магнитных карт и RFID-меток. Объект ser. позволяет как принимать, так и передавать потоки данных в формате Wiegand.

Для Wiegand нужны всего две линии интерфейса - W0 и W1. Вот как они соответствуют «традиционным» линиям последовательного порта:

TXвыход W1
RXвход W1
RTSвыход W0
CTSвход W0 & W1

Как видно из таблицы, на линию CTS должно поступать «логическое И» входящих сигналов W0 и W1. Для этого нужна внешняя схема - подробности см. в разделе Примеры схем Wiegand и Clock/Data. Для вывода данных Wiegand дополнительные схемы не нужны.

«Выход W1» (на TX) и «вход W1» (на RX) переназначить нельзя, а «выход W0» (на RTS) можно переназначить на любую подходящую линию GPIO. «Вход W0 & W1» (на CTS) можно переназначить, но выбор ограничен линиями прерывания I0-7 (GPIO16-23).

Режим Clock/Data

Интерфейс clock/data - тоже очень популярный интерфейс считывателей. Объект ser. позволяет принимать и передавать потоки данных в формате clock/data.

Как следует из названия, для этого интерфейса нужны две линии - CLOCK и DATA. Вот как они соответствуют «традиционным» линиям последовательного порта:

TXвыход DATA
RXвход DATA
RTSвыход CLOCK
CTSвход CLOCK

Как и в режиме UART, «выход DATA» (на TX) и «вход DATA» (на RX) переназначить нельзя, а «выход CLOCK» (на RTS) можно переназначить на любую подходящую линию GPIO. «Вход CLOCK» (на CTS) можно переназначить, но выбор ограничен линиями прерывания I0-7 (GPIO16-23).

Для работы с потоками clock/data дополнительные схемы не нужны.

Исходный материал Tibbo обновлён 12 сентября 2022Оригинал на docs.tibbo.com · Сообщить об ошибке