Гальваническая развязка для COM-порта — КиберПедия 

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...

Гальваническая развязка для COM-порта

2019-06-06 984
Гальваническая развязка для COM-порта 0.00 из 5.00 0 оценок
Заказать работу

Для преобразования сигналов между уровнями ТТЛ/КМОП логики и уровнями RS-232 существуют специализированные микросхемы.

Также есть варианты очень простых схем на оптронах, которые обеспечивают не только согласование уровней, но и гальваническую развязку между подключаемыми устройствами - очень ценное свойство схемы. Пример такой схемы приведен на рисунке 5. С указанными номиналами элементов обеспечивает скорость передачи до 2400 бод. Уменьшая сопротивление резистора R5, можно увеличить быстродействие (скорость 9600 бод достижима практически на любых оптронах).

 

Рисунок 5 – Схема гальванической развязки

 

Аппаратный контроль потоком данных по линиям CTS/RTS здесь не используется. Питание схемы со стороны COM-порта осуществляется от сигнальных линий самого COM-порта, но для её работы требуется программная конфигурация COM-порта: на выходе RTS должен быть установлен уровень лог. 1 (-5..-15 В), а на выходе DTR - уровень лог. 0 (+5..+15 В). Это существенный недостаток схемы, требующий учёта в программе для компьютера, обычные программы-терминалы не будут правильно работать. Недостаток устраним, но тогда схема станет менее простой.

Работает предложенная схема гальванической развязки для COM-порта следующим образом. Когда на TD выходе UART установлен уровень лог. 0 (обычные КМОП-уровни для микроконтроллеров), ток через светодиод оптрона U1 отсутствует, транзистор оптрона заперт, за счёт резистора R1 от выхода DTR(+) COM-порта на входе RD устанавливается положительный относительно общего провода потенциал, что соответствует уровню лог. 0 для RS-232. Если на выходе TD устройства UART установлена лог. 1, транзистор оптрона U1 открывается и RD вход COM-порта подключается к выходу RTS (-), за счёт чего на входе RD формируется отрицательный потенциал (лог. 1 для RS-232).

Оптрон U2 отвечает за передачу данных в обратном направлении. Когда на TD выходе COM-порта установлен уровень лог. 0 (положительный потенциал), транзистор оптрона U2 открывается, формируя лог. 0 на входе UART. Если на выходе TD COM-порта устанавливается лог. 1 (отрицательный потенциал), транзистор оптрона U2 закрывается и за счёт подтягивающего к высокому уровню резистора на входе RD устройства UART формируется логическая 1.

Если разъём P1 отключён от COM-порта, или компьютер выключен, то это будет восприниматься как "линия свободна" (отсутствие передачи данных), на вход USART микроконтроллера при этом будет подаваться лог. 1. Допускается подключение разъёма P1 к COM-порту работающего компьютера, это не приведёт к повреждению оборудования, но в некоторых случаях, в момент подключения, компьютер может получить какое-то количество случайных байтов.

D1, D2 - защищают светодиоды оптронов от обратного напряжения. R1 - формирует смещение на входе RD COM-порта при закрытом транзисторе оптрона U1. R2, R3 - ограничивают ток через светодиоды оптронов. R4 - защищает вывод микроконтроллера от неправильного подключения или неправильного конфигурирования его режима работы, можно заменить перемычкой. R5 - внешний подтягивающий резистор. Сопротивление внутреннего подтягивающего резистора микроконтроллера довольно велико и подключение внешнего улучшает скоростные характеристики канала передачи от COM-порта к UART микроконтроллера (уменьшает время переключения из состояния лог. 0 в лог. 1 на входе RD устройства UART). Может быть исключён.

Для однонаправленной связи можно оставить только соответствующую часть схемы. Если используется только передача данных от COM-порта к UART микроконтроллера, то отпадает необходимость в описанном выше программном конфигурировании COM-порта.

 

USART в STM32 (STM32F100xx)

 

USART в микроконтроллерах STM32 предоставляет гибкие средства для полнодуплексного обмена данными с внешними устройствами в последовательном формате с возможностью поддержки сигналов CTS/RTS; поддерживает полудуплексный обмен по однопроводной линии; может работать в широком диапазоне скоростей передачи. В мультибуферном режиме DMA достигается высокая скорость передачи данных, максимальное значение составляет 3 Мбит/с. Также поддерживается однонаправленная передача в синхронном режиме; мультипроцессорная связь; LIN (local interconnection network) - сеть для локальной связи; smartcard протокол; инфракрасный протокол в соответствии со спецификацией IrDA (infrared data association) SIR ENDEC.

 

Основные возможности

 

1) Асинхронная полнодуплексная связь.

2) Асинхронная однопроводная полудуплексная связь.

3) Настраиваемый метод оверсэмплинга (супердискретизации) даёт возможность выбора между скоростью передачи и допустимым отклонением скорости.

4) Передатчик и приёмник используют общую программируемую скорость передачи, которая может настраиваться в широких пределах; максимальное значение достигает 3 Мбит/с при 8-кратном оверсэмплинге.

5) Программируемая длина слова (8 или 9 бит).

6) Настраиваемое количество стоп-битов (1 или 2).

7) В LIN режиме поддерживается отправка и обнаружение приёмником Break-посылки (генерируется 13-битная и детектируется 10/11 битная).

8) Имеется выход тактового сигнала для синхронной передачи.

9) IrDA SIR кодек для инфракрасной связи (поддерживается длительность бита 3/16 в нормальном режиме).

10) Интерфейс Smartcard поддерживает асинхронный протокол смарт-карт как определено в стандарте ISO 7816-3; используется 0.5, 1.5 стоп-битов в операциях со смарт-картой.

11) Конфигурируемая мультибуферная связь с использованием DMA (direct memory access).

12) Флаги, устанавливаемые при обнаружении событий во время обмена данными (приёмный буфер заполнен; буфер для передачи пуст; передача завершена).

13) Контроль чётности (можно настроить передатчик на формирование бита чётности и приёмник на контроль бита чётности).

14) Четыре флага, устанавливаемые при обнаружении ошибок (ошибка переполнения; обнаружен шум в принимаемом сигнале; ошибка фрейма; ошибка чётности).

15) 10 источников прерывания USART, связанных с флагами регистра состояния SR (изменение состояния CTS; обнаружение посылки LIN Break; регистр данных передатчика пуст; передача завершена; регистр данных приёмника заполнен; обнаружение события "линия свободна" (Idle line); ошибка переполнения; ошибка фрейма; обнаружение шума; ошибка чётности).

16) Мультипроцессорная связь (переход в тихий режим, если не произошло сопоставление адреса).

17) Пробуждение из тихого режима при обнаружении свободной линии (Idle line) или при обнаружении адресной метки.

18) Два режима пробуждения приёмника - по адресному биту (9-й, старший бит) или при обнаружении, что линия свободна.

 

Функциональная схема USART

 

Функциональная схема USART в микроконтроллерах STM32 приведена на рисунке 6.

 

Рисунок 6 – Функциональная схема USART в микроконтроллерах STM32

SW: Single Wire - вывод для однопроводного подключения устройств.

В обычном двунаправленном полнодуплексном режиме требуется как минимум два вывода для подключения USART: RX (Receive Data In) и TX (Transmit Data Out).

RX: вход для последовательных данных. Для извлечения данных используется техника оверсэмплинга (супердискретизации), когда чтение входа осуществляется с частотой, в несколько раз превышающей скорость передачи данных (в данном случае в 8 или 16 раз). Сопоставление считанной последовательности с предопределёнными шаблонами позволяет выделить фронт сигнала, определить значение принимаемого бита и обнаружить шум при его наличии в принимаемом сигнале.

TX: выход для передачи данных в последовательной форме. Когда передатчик отключён, вывод возвращается в состояние, заданное конфигурацией порта ввода-вывода. Когда передатчик включён, но никаких данных не передаётся, на выходе TX устанавливается высокий уровень (паузе в передаче данных, или свободной линии соответствует наличие лог. 1 в линии). В однопроводном режиме или режиме смарт-карты этот вывод используется как для передачи, так и для приёма данных (поэтому на схеме он обозначен как TX/SW).

SCLK: выход для тактового сигнала при синхронной передаче данных, соответствует мастер-режиму SPI. Тактовые импульсы не формируются во время старт и стоп-битов. Наличие импульса во время передачи последнего бита данных определяется программно. Параллельно может происходить синхронный приём данных на входе RX. Фаза и полярность импульсов задаются программно. В режиме смарт-карты вывод SCLK может формировать тактовый сигнал для смарт-карты.

IrDA_RDI: Receive Data Input - вход для получаемых данных в IrDA режиме.

IrDA_TDO: Transmit Data Output - выход для передаваемых данных в IrDA режиме.

nCTS: Clear To Send - высокий уровень на входе приостанавливает передачу данных после завершения текущей посылки.

nRTS: Request to send - низкий уровень на этом выходе сигнализирует о готовности USART принимать данные.

Программно приём и передача данных через интерфейс USART осуществляется путём чтения и записи регистра данных DR. Записываемые в регистр данные помещаются в регистр передаваемых данных TDR, а затем, когда завершится текущая передача, копируются в передающий сдвигающий регистр (сдвигающий регистр также называют регистром сдвига или сдвиговым регистром). Если в данный момент ничего не передаётся, данные сразу помещаются в сдвигающий регистр. Сдвигающий регистр преобразует данные из параллельной формы представления в последовательную: схема управления с заданной тактовой частотой сдвигает содержимое регистра на 1 бит вправо. Сдвигаемые биты, начиная с младшего, подаются на выход USART. Кроме того, схема управления формирует стартовый бит, бит чётности (если используется) и стоп-биты.

После того, как содержимое TDR копируется в сдвигающий регистр, в DR можно записывать очередной байт, без риска повредить предыдущее содержимое.

Принимаемые данные попадают в приёмный сдвигающий регистр. Когда приём фрейма завершается, данные из приёмного сдвигающего регистра помещаются в регистр принимаемых данных (RDR), откуда они могут быть прочитаны путём чтения регистра данных DR. Такое устройство регистра данных позволяет одновременно передавать и получать данные.

 


Поделиться с друзьями:

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.007 с.