Смекни!
smekni.com

Микроконтроллер 8250 (стр. 3 из 4)

Разряды 1 и 2 : эти два бита IIR используются для идентификации старшего по приоритету прерывания, находящегося в ожидании (см. табл. 5).

Разряды 3 - 7: эти 5-ть битов IIR всегда в состоянии лог. 0.

Таблица 5

Функции управления прерыванием

Регистр индикации прерывания -----------Бит|Бит|Бит 2 | 1 | 0 Условия установки и -------------------- Уровень| Флаг приори-| прерывания тета || сброса прерывания------------------------------| Источник | Управление| прерывания | сбросом| | прерывания| |
0 | 0 | 11 | 1 | 0 | | | | | | | |1 | 0 | 0 | | | |0 | 1 | 0 | | | | | | | | | | | | | |0 | 0 | 0 | | | | | | | | | | | | | | | | - | НетСамый |Состояние ливысокий|нии приема|||Второй |Наличие при- |нятых данных |Третий |Регистр хра- |нения пере- |датчика пуст | | | | |Четвер-| Состояниетый |модема||||||| | Нет | -|Переполнение, |Чтение регист-|ошибка парите-|ра состояния|та, ошибка |линии|кадра,прерыва-||ние передачи || Наличие при- |Чтение реги-|нятых данных |стра буфера| |приемника| Регистр хра- | Чтение ре-|нения пере- |гистра IIR|датчика пуст |(как источни-| |ка прерывания)| |или запись в| |регистр хране-| |ния передат-| |чика| Готов к пере-| Чтение реги-|даче, ус-во |стра состоя-|сопряжения да-|ния модема|нных готово, ||индикатор вы- ||зова, детектор||принимаемого ||линейного сиг-||нала |

РЕГИСТР РАЗРЕШЕНИЯ ПРЕРЫВАНИЯ

Этот 8-ми разрядный регистр разрешает каждому из 4 источников прерывания WD8250 в отдельности формировать выходной сигнал прерывания (INTRPT). Возможно полностью отключить систему прерывания, сбросив биты 0 - 3 регистра разрешения прерывания в состояние лог. 0. Подобно этому устанавливая соответствующие биты этого регистра в состояние лог. 1, могут быть разрешены выбранные прерывания. Отключая систему прерывания, мы отключаем регистр идентификации прерывания и активный (высокий) уровень выходного сигнала INTRPT. Все другие функции ИМС действуют, как обычно, включая установку регистра состояния, регистров состояния линий и модема. Содержимое регистра разрешения прерывания представлено в табл. 2 и описано ниже.

Разряд 0: этот бит разрешает прерывание по наличию принятых данных, если он установлен в состояние лог. 1.

Разряд 1: этот бит разрешает прерывание,когда регистр хранения передатчика пуст, и он установлен в состояние лог. 1.

Разряд 2: этот бит разрешает прерывание по состоянию линии приема, когда он установлен в состояние лог. 1.

Разряд 3: этот бит разрешает прерывание по состоянию модема при установке его в состояние лог. 1.

Разряды 4 - 7: эти 4 бита всегда установлены в состояние лог. 0.

РЕГИСТР УПРАВЛЕНИЯ МОДЕМОМ

Восьмиразрядный регистр управляет интерфейсом с утройством сопряжения, или модемом, или перефирийным устройством, иммитирующим модем. Содержимое регистра управления модемом представлено в табл. 2 и описано ниже.

Разряд 0: этот бит управляет выходом готовности терминала данных (DTR). Когда бит 0 устанавливается в состояние лог. 1, выход DTR принудительно устанавливается в состояние лог. 0. Когда бит 0 сбрасывается в состояние лог. 0, выход DTR устанавливается в состояние лог. 1.

Примечание: выход DTR WD8250 может подаваться на

инвертирующий линейный драйвер (такой как DS1488)

для получения выхода нужной полярности на

подключаемом модеме или устройстве сопряжения. Разряд 1: этот бит управляет выходом запроса передачи (RTS).

Бит 1 действует на выход аналогично биту 0.

Разряд 2: этот бит управляет сигналом "выход 1" (OUT1), который является вспомогательным выходом, определяемым пользователем. Бит 2 действует на выход аналогично биту 0.

Разряд 3: этот бит управляет сигналом "выход 2" (OUT2), который является вспомогательным выходом, определяемым пользователем. Бит 3 действует на выход аналогично биту 0.

Разряд 4: этот бит обеспечивает зацикливание для

диагностического тестирования WD8250. Когда бит 4

устанавливается в состояние лог. 1, происходит следующее:

выход передатчика (SOUT) устанавливается в состояние лог.1

(высокий уровень); вход приемника (SIN) отключается; выход

сдвигового регистра передатчика замыкается на вход здвигового

регистра приемника; 4-ре управляющих входа модема (CTS, DSR,

RLSD, RI) отключаются; 4-ре управляющих выхода модема (DTR, RTS, OUT1, OUT2) внутренне подключаются к 4-м управляющим входам модема. В диагностическом режиме передаваемые данные принимаются немедленно. Это позволяет процессору проверить передающие и принимающие каналы данных WD8250.

В диагностическом режиме работают прерывания приемника и передатчика. Прерывания по состоянию модема выполняются так же, но источником прерывания теперь являются 4 младших бита регистра управления модемом, а не 4-ре входа управления модема. Прерывания управляются регистром разрешения прерываний. Система прерывания WD8250 может быть проверена записью в 6-ть младших битов регистра состояния линии и 4-ре младших бита регистра состояния модема. Установка этих битов в состояние лог. 1 (любого из них) формирует соответствующее прерывание, если оно разрешено. Сброс этих прерываний происходит так же, как и при нормальной работе WD8250. Для возвращения к реальной работе регистры должны быть перепрограммированы для нормальной работы, а затем бит 4 должен быть сброшен в состояние лог. 0.

Разряды 5 - 7: эти биты постоянно установлены в состояние лог. 0.

РЕГИСТР СОСТОЯНИЯ МОДЕМА

Этот 8-ми разрядный регистр обеспечивает чтение текущего состояния управляющих линий от модема (или перефирийного устройства) на ЦПУ. Кроме этой информации о текущем состоянии 4-ре бита регистра состояния модема обеспечивают информацию об изменении этого текущего состояния. Эти биты устанавливаются в состояние лог. 1, когда управляющий вход от модема меняет состояние. Они сбрасываются в состояние лог. 0, когда ЦПУ читает регистр состояния модема. Содержимое регистра состояния модема приведено в табл. 2 и описано ниже.

Разряд 0: этот бит является индикатором изменения сигнала готовности к передаче (DCTS). Бит 0 указывает, что вход CTS в ИМС изменил состояние по отношению к тому, как он в предыдущий раз был считан ЦПУ.

Разряд 1: этот бит - индикатор изменения сигнала готовности терминала данных (DDSR). Бит 1 указывает, что вход DSR в ИМС изменил состояние по отношению к тому, как он в предыдущий раз считывался ЦПУ.

Разряд 2: этот бит - детектор заднего фронта индикатора вызова (TERI). Бит 2 указывает на то, что вход RI в ИМС изменился с ON (лог.1) на OFF (лог.0).

Разряд 3: этот бит - индикатор изменения детектора принятого линейного сигнала канала данных (DRLSD). Бит 3 указывает на изменение состояния входа RLSD в ИМС. Примечание: когда биты 0, 1, 2 или 3 установлены в состояние лог. 1, генерируется прерывание по состоянию модема.

Разряд 4: этот бит - дополнение ко входу "готов для передачи" (CTS).

Разряд 5: этот бит - дополнение входа готовности терминала данных (DSR).

Разряд 6: этот бит - дополнение входа "индикатор вызова" (RI).

Разряд 7: этот бит - дополнение входа "детектор принимаемого линейного сигнала" (RLSD).

Таблица 2

Доступные регистры WD8250

--------------------------------------------------------------

| Адрес регистра 0 DLAB 0 | Адрес регистра 0 DLAB 0

N бита Регистр буфера приемника (только чтение) Регистр хранения передатчика (только запись)
0 Разряд данных 0 * Разряд данных 0 *
1 Разряд 1 " 1
2 Разряд 2 " 2
3 Разряд 3 " 3
4 Разряд 4 " 4
5 Разряд 5 " 5
6 Разряд 6 " 6
7 Разряд 7 " 7

*Разряд 0 является найменьшим значащим разрядом, передаваемым или принимаемым.

--------------------------------------------------------------

| Адрес регистра 1 DLAB 0

----------------------------------------------------- N бита | Регистр разрешения прерывания

0 Разрешает прерывание по получению данных (ERBFI)
1 Разрешает прерывание при пустом буфере передатчика (ETBEI)
2 Прерывание по состоянию линии приема (ELSI)
3 Разрешение прерывания по состоянию модема (ЕDSSI)
4 0
5 0
6 0
7-------- 0 ----------------------------------------------------
Адрес регистра 2
N бита Регистр идентификации прерывания
0 Наличие прерывания
1 Идентификация прерываний разряд 0
2 Идентификация прерываний разряд 1
3 0
4 0
5 0
6 0
7-------- 0 ----------------------------------------------------
Адрес регистра 3
N бита Регистр управления линией
0 Выбор длины символа разряд 0 (WLS0)
1 Выбор длины символа разряд 1 (WLS1)
2 Количество битов останова (STB)
3 Разрешение паритета (PEN)
4 Выбор паритета (EPS)
5 Фиксированный паритет
6 Прерывание передачи
7-------- Разряд доступа к регистрам делителя (DLAB) ----------------------------------------------------
Адрес регистра 4
N бита Регистр управления модемом
0 Готовность терминала данных (DTR)
1 Запрос на передачу (RTS)
2 Вывод 1 (OUT1)
3 Вывод 2 (OUT2)
4 Зацикливание
5 0
6 0
7-------- 0 ----------------------------------------------------
Адрес регистра 5
N бита Регистр состояния линии
0 Готовность данных (DR)
1 Ошибка переполнения (OR)
2 Ошибка паритета (PE)
3 Ошибка кадрирования (FE)
4 Прерывание приема (ВI)
5 Пуст регистр хранения данных передатчика (THRE)
6 Пуст сдвиговый регистр (TSRE)
7-------- 0 ----------------------------------------------------
Адрес регистра 6
N бита Регистр состояния модема
0 Изменение сигнала "свободен для передачи" (DCTS)
1 Изменение сигнала "готовность передать данные" (DDSR)
2 Отрицательный фронт сигнала "индикатор вызова"(TERI)
3 Изменение детектора линейного сигнала (DSLSD)
4 Свободен для передачи (CTS)
5 Готовность передать данные (DSR)
6 Индикатор вызова (RI)
7-------- Детектор принимаемого линейного сигнала (RLSO) -----------------------------------------------------

|Адрес регистра | Адрес регистра