Предыдущая Следующая

Таблица 11.3. Биты регистра приемного буфера UART1 (U1RBR — ОхЕООЮООО, когда DLAB = 0, доступен только для чтения)

U1RBR

Функция

Описание

Значение после сброса

7:0

Регистр буфера приема

Регистр буфера приема UART1 содержит самый «старый» байт, принятый в приемный буфер FIFO UART1

Неопределенное

Регистр буфера передачи UART1 (U1THR — ОхЕООЮООО, когда DLAB = О, доступен только для записи)

Регистр U1THR используется как старший байт передающего буфера FIFO UART1. Старший байт передающего буфера FIFO содержит самый «новый» (последний поступивший в передающий буфер FIFO) символ и может быть записан через шинный интерфейс. Младший бит регистра передается через UART1 первым.

Чтобы обратиться к регистру U1THR, необходимо сбросить бит доступа к значению делителя (DLAB) в регистре U1LCR. Регистр U1THR доступен только для записи.

Битовая структура регистра U1THR приведена в Табл. 11.4.

Таблица 11.4. Биты регистра передающего буфера UART1 (U1THR — ОхЕООЮООО, когда DLAB = 0, доступен только для записи)

U1THR

Функция

Описание

Значение после сброса

7:0

Регистр

буфера

передачи

Запись в регистр буфера передачи UART1 вызывает сохранение записанного байта в передающем буфере FIFO UART1. Байт будет передан через UART1, когда он достигнет «дна» передающего буфера FIFO (т. е. окажется первым в очереди на передачу) и когда передатчик станет доступен (свободен)

NA

Регистры, содержащие младший и старший байты делителя UART1 (U1DLL - ОхЕООЮООО, U1DLM - 0хЕ00Ю004, когда DLAB = 1)

Программируемый 16-битный делитель UART1 входит в состав встроенного генератора задания скорости обмена через UART1. В регистрах U1DLL (младшие 8 битов) и U1DLM (старшие 8 битов) содержится значение коэффициента, на который следует делить тактовую частоту VPB (pclk), чтобы в результате получить на выходе UAJHT синхросигнал, частота которого ровно в 16 раз превышает требуемую скорость обмена с периферийными устройствами. Значение коэффициента деления, равное OOOOh, воспринимается логикой UART1 как значение OOOlh, чтобы не допустить деления на нуль. Для обращения к регистрам U1 DLL и U1DLM, следует установить в регистре U1LCR бит доступа к значению делителя (DLAB).

Битовая структура регистра U1DLL приведена в Табл. 11.5, a U1DLM — в Табл. 11.6.

Таблица 11.5. Регистр, содержащий младший байт делителя UART1 (U1DLL - ОхЕООЮООО, когда DLAB = 1)

U1DLL

Функция

Описание

Значение после сброса

7:0

Регистр, содержащий младший байт делителя

Регистр, содержащий младший байт делителя, совместно с регистром U1DLM задает скорость обмена через UART1

0x01

Таблица 11.6. Регистр, содержащий старший байт делителя TJART1 (U1DLM - 0хЕ0010004, когда DLAB = 1)

U1DLM

Функция

Описание

Значение после сброса

7:0

Регистр, содержащий старший байт делителя

Регистр, содержащий старший байт делителя, совместно с регистром U1DLL задает скорость обмена через UART1

0

Регистр разрешения прерываний UART1 (U1IER — OxEOOl0004, когда DLAB = О)


Предыдущая Следующая






Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book4_133.html on line 274

Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book4_133.html on line 274

Warning: include() [function.include]: Failed opening './news.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/picprof/data/www/picprof.com/book/book4_133.html on line 274