Раздел: Документация
0 ... 154 155 156 157 158 159 160 ... 195 13.2. Использование модулей USART Упрощенная структурная схема одного модуля USART приведена на Рис. 13.1. ± UBRR(H:L) -I- Блок тактирования OSC Контроллер скорости передачи Синхронизатор Интерфейс ± Передатчик -4Н UDR (передача) Сдвиговый регистр ( ► передатчика Формирователь бита четности Схема управления tH Интерфейс Сдвиговый регистр > приемника -UDR (прием)- Блок восстановления тактового сигнала Блок восстановления данных Блок контроля четности Приемник Схема управления Интерфейс UCSRA I UCSRB I UCSRC Т ХСК TxD RxD Рис. 13.1. Структурная схема модуля USART Как показано на рисунке, модуль состоит из трех основных частей: блока тактирования, блока передатчика и блока приемника. Блок тактирования модулей USART содержит схему синхронизации, которая используется при работе в синхронном режиме, и контроллер скорости передачи. Блок передатчика включает одноуровневый буфер, сдвиговый регистр, схему формирования бита четности и схему управления. Блок приемника, в свою очередь, содержит схемы восстановления тактового сигнала и дан- ных, схему контроля четности, двухуровневый буфер, сдвиговый регистр, а также схему управления. Буферные регистры приемника и передатчика располагаются по одному адресу пространства ввода/вывода и обозначаются как регистр данных UDR (UDR/?). В этом регистре хранятся младшие 8 битов принимаемых и передаваемых данных. При чтении регистра UDR выполняется обращение к буферному регистру приемника, при записи — к буферному регистру передатчика. Размещение регистров данных UDR для различных моделей микроконтроллеров приведено в Табл. 13.3. Таблица 13.3. Размещение регистров данных модулей USART
В модулях USART буфер приемника является двухуровневым (FIFO-буфер), изменение состояния которого происходит при любом обращении к регистру UDR. В связи с этим не следует использовать регистр UDR в качестве операндов команд типа «чтение/модификация/запись» (SBI и CBI) Кроме того, следует быть очень аккуратными при использо- вании команд проверки SBIChSBIS, поскольку они также изменяют состояние буфера приемника. Для управления модулями USART используются три регистра: UCSRA (UCSRM), UCSRB (UCSR/jB) и UCSRC (UCSR/jC). Адреса этих регистров указаны в Табл. 13.4. Таблица 13.4. Регистры управления и состояния модулей USART
0 ... 154 155 156 157 158 159 160 ... 195
|