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

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

Режим UART

Режим UART поддерживает полудуплексный и полнодуплексный обмен.

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

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

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

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

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

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

У UART платы EM2001 есть одно существенное ограничение: нельзя одновременно использовать режим 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) можно переназначить, но выбор ограничен линиями прерывания 0-7 (GPIO16 ~ GPIO23).

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

Дополнительную информацию см. в документации по объекту ser.

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