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

Регистр U1IER используется, чтобы разрешать прерывания от четырех источников UART1.

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

Таблица И. 7. Регистр разрешения прерываний UART1 (TJ1IER — 0хЕ0010004, когда DLAB = 0)

U1IER

Функция

Описание

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

0

Разрешение прерывания RBR

0: Запретить прерывание RDA. 1: Разрешить прерыванию RDA.

Бит U1IER[0] разрешает прерывание при доступности принятых данных RDA (Receive Data Available) для UART1. Он также управляет прерыванием от тайм-аута при приеме символа CRT (Character Receive Time-out)

0

1

Разрешение прерывания THRE

0: Запретить прерывание THRE. 1: Разрешить прерыванию THRE.

Бит U 1IER[1] разрешает прерывание THRE для UART1. Текущее состояние этого прерывания отображается в значении бита U1LSR[5]

0

2

Разрешение прерывания по состоянию линии Rx

0: Запретить прерывания по состоянию линии Rx. 1: разрешить прерывания по состоянию линии Rx. Бит U1IER[2] разрешает прерывания по состоянию линии Rx UART1. Текущее состояние этих прерываний отображается в значении битов U1LSR [4:1]

0

3

Разрешение прерывания по состоянию модема

Пользовательское программное обеспечение не должно производить запись в зарезервированные биты. Чтение зарезервированного бита возвращает неопределенное значение

0

7:4

Зарезервированы

0: Запретить прерывание RDA. 1: Разрешить прерыванию RDA.

Бит U1IER[0] разрешает прерывание при доступности принятых данных RDA (Receive Data Available) для UART1. Он также управляет прерыванием от тайм-аута при приеме символа CRT (Character Receive Time-out)

NA

Регистр идентификации прерывания UART1 (U1IIR — OxEOOl0008, доступен только для чтения)

Регистр U1IIR содержит код текущего состояния, который отображает приоритет и источник отложенного прерывания. Во время осуществления доступа к регистру U1IIR его содержимое не меняется. Если прерывание происходит во время доступа к U1IIR, то состояние этого прерывания будет отображено при

следующем доступе к U1IIR. Прерывания обрабатываются так, как это описано в Табл. 11.8. Считывая значения битов U1IIR[3:0], подпрограмма обработки прерывания может определить причину прерывания и способ сброса активного прерывания. Аппаратный сброс прерывания производится, только если оно идентифицируется как прерывание типа THRE.

Таблица 11.8. Регистр идентификации прерываний UART1 (TJ1IIR — 0хЕ0010008, доступен только для чтения)

ШИК

Функция

Описание

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

0

Отложенное прерывание

0: Как минимум, одно прерывание является отложенным. 1: Нет отложенных прерываний.

Обратите внимание, что бит U1IIR[0] имеет НИЗКИЙ активный уровень. Отложенное прерывание может быть идентифицировано путем анализа битов U1IER[3:1]

1

3:1

Идентификация прерывания

011: Состояние линии приема (RLS).

010: Доступны принятые данные (RDA).

ПО: Тайм-аут индикации принятого символа (CTI).

001: Прерывание THRE.

Бит U1IER[3] идентифицирует прерывание от приемного буфера FIFO UART1. Все другие комбинации битов U1IER[3:1], кроме вышеуказанных, являются зарезервированными (000, 100,101,111)

0

5:4

Зарезервированы

Пользовательское программное обеспечение не должно производить запись в зарезервированные биты. Чтение зарезервированного бита возвращает неопределенное значение

NA

7:6

Разрешение FIFO

Эти биты эквивалентны биту U1FCR[0]

0

Обработка прерываний иллюстрируется в Табл. 11.9.


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



НА ГЛАВНУЮ | ЧТО ТАКОЕ PIC ? | ПРОГРАММАТОР | ПРОЕКТЫ | СТАТЬИ | ССЫЛКИ | КАРТА САЙТА
Hosted by uCoz