ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 26.02.2020
Просмотров: 2329
Скачиваний: 5
ЕХ0 — управление прерыванием от внешнего источника INT0. ЕХ0=1 — разрешение. ЕХ0=0 — запрещение.
При чтении резервных разрядов соответствующие линии магистрали не определены. Пользователь не должен записывать "1" в резервные разряды, т. к. онк зарезервированы под дальнейшее расширение семейства МК51. ',
Таблица 2.14
|
Биты |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
Обозначение |
ЕА |
X |
X |
ES |
ЕТ1 |
ЕХ1 |
ЕТ0 |
. ЕХ0 |
Логика обработки флагов прерываний осуществляет приоритетный выбор запроса прерывания, сброс его флага и инициирует выработку аппаратно реализованной команды перехода на подпрограмму обслуживания прерывания.
Схема выработки вектора прерывания вырабатывает двухбайтовые адреса подпрограмм обслуживания прерывания в зависимости от источника прерываний, которые приведены в таблице 2.15.
Подробно система прерываний описана в разделе 2.3.4.
Таблица 2.15
|
Источник прерывания |
Вектор прерывания |
|
|
0003Н |
|
Внешнее прерывание INT0 |
|
|
Таймер/счетчик Т/С 0 |
000ВН |
|
Внешнее прерывание INT1 |
0013Н |
|
Таймер/счетчик Т/С 1 |
001 ВН |
|
Последовательный порт |
0023Н |
2.2.5. Счетчик команд. Регистр DPTR
Счетчик команд (PC) предназначен для формирования текущего 16-разрядного адреса программной памяти и 8/16-разрядного адреса внешней памяти данных.
В состав счетчика команд входят 16-разрядные буфер PC, регистр указателя данных DPTR, регистр PC, схема инкремента, регистр адреса памяти.
Буфер PC осуществляет связь между 16-разрядной шиной PC и восьмиразрядной магистралью данных, обеспечивая запись, хранение и коммутацию информации.
Регистр указателя данных (DPTR) предназначен для хранения 16-разрядного адреса внешней памяти данных. Состоит из двух восьмиразрядных регистров DPH и DPL, входящих в блок регистров специальных функций. Они программно доступны и могут использоваться в качестве двух независимых РОН, если нет необходимости в хранении 16-разрядного адреса внешней памяти данных.
В регистре PC хранится текущий 16-разрядный адрес памяти программ.
Схема инкремента увеличивает текущее значение 16-разрядного адреса памяти программ на единицу.
Регистр адреса памяти предназначен для записи и хранения исполнительного 16-разрядного адреса памяти программ или 8/16-разрядного адреса внешней памяти данных, а также для передачи данных на порт Р0 при выполнении команд MOVX @Ri,A и MOVX ©DPTR, А, обеспечивающих запись данных через порт Р0 во внешние устройства.
2.2.6. Порты
Порты Р0, PI, P2, РЗ являются двунаправленными портами ввода-вывода и предназначены для обеспечения обмена информацией ОМЭВМ с внешними устройствами, образуя 32 линии ввода-вывода. Каждый из портов содержит фиксатор-защелку, который представляет собой восьмиразрядный регистр, имеющий
байтовую и битовую адресацию для установки (сброса) разрядов с помощью программного обеспечения.
Физические адреса фиксаторов Р0, PI, P2, РЗ составляют для:
Р0 — 80Н, при битовой адресации 80Н—87Н;
Р1 — 90Н, при битовой адресации 90Н—97Н;
P2 — А0Н, при битовой адресации А0Н—А7Н;
РЗ — В0Н, при битовой адресации В0Н—В7Н.
Помимо работы в качестве обычных портов ввода/вывода линии портов Р0—РЗ могут выполнять ряд дополнительных функций, описанных ниже.
Через порт Р0:
— выводится младший байт адреса А0—А 7 при работе с внешней памятью программ и внешней памятью данных;
— выдается из ОМЭВМ и принимается в ОМЭВМ байт данных при работе с внешней памятью (при этом обмен байтом данных и вывод младшего байта адреса внешней памяти мультиплексированы во времени);
— задаются данные при программировании внутреннего ППЗУ и читается содержимое внутренней памяти программ. Через порт Р1:
— задается младший байт адреса при программировании внутреннего ППЗУ и при чтении внутренней памяти программ. Через порт P2:
— выводится старший байт адреса А8—А15 при работе с внешней памятью программ и внешней памятью данных (для внешней памяти данных — только при использовании команд MOVX A,@DPTR и MOVX ©DPTR,A, которые вырабатывают 16-разрядный адрес);
— задается старший байт (разряды А8—А 14) адреса при программировании внутреннего ППЗУ и при чтении внутренней памяти программ.
Каждая линия порта РЗ имеет индивидуальную альтернативную функцию:
РЗ. 0 — RxD, вход последовательного порта, предназначен для ввода последовательных данных в приемник последовательного порта;
РЗ. 1 — TxD, выход последовательного порта, предназначен для вывода последовательных данных из передатчика последовательного порта;
РЗ. 2 — INT0, используется как вход 0 внешнего запроса прерывания;
РЗ.З — INT1, используется как вход 1 внешнего запроса прерывания;
РЗ. 4 — Т0, используется как вход счетчика внешних событий Т/С 0;
РЗ. 5 — Т1, используется как вход счетчика внешних событий Т/С 1;
РЗ. 6 — WR, строб записи во внешнюю память данных, выходной сигнал, сопровождающий вывод данных через порт Р0 при использовании команд MOVX @Ri,A^_MOVX ©DPTR, А.
РЗ. 7 — RD, строб чтения из внешней памяти данных, выходной сигнал, сопровождающий ввод данных через порт Р0 при использовании команд MOVX А,@Р1иМОУХ А, ©DPTR.
Альтернативная функция любой из линий порта РЗ реализуется только в том случае, если в соответствующем этой линии разряде фиксатора-защелки содержится "I". В противном случае на линии порта РЗ будет присутствовать "0".
На рис. 2.7—2.10 показаны функциональные схемы одного вывода в каждом из портов для серии 1816. Для серии 1830 конфигурация портов PI—РЗ отличается только выходным усилительным каскадом, который представлен на рис. 2.11. Электрические параметры портов Р0—РЗ приведены в табл. 2.24. На рис. 2.7—2.10 фиксатор-защелка показан в виде D-триггера, тактируемого внутренним сигналом "Запись в защелку", который вырабатывается при записи данных в порт. Выход триггера Q может быть подключен на внутреннюю шину ОМЭВМ через буфер В1 сигналом "Чтение защелки", что обеспечивает возможность программного чтения содержимого фиксатора. Значение сигнала непосредственно на выводе порта может быть программно считано на внутреннюю шину ОМЭВМ через буфер В2, управляемый внутренним сигналом
"Чтение выводов". Часть команд ОМЭВМ при чтении порта активизируют сигнал "Чтение защелки", другая часть команд — сигнал "Чтение выводов".
Как показано на рис. 2.7 и 2.9, выходные каскады порта Р0 (образованы транзисторами Nl, N) и порта Р2 (образованы транзисторами Nl, N2, N) через мультиплексоры MX могут подключаться либо к выходу защелок, либо к внутренним шинам "Адрес/данные" и "Адрес". Последнее используется при обращении к внешней памяти. Во время обращения к внешней памяти содержимое защелок порта Р2 не изменяется. В аналогичной ситуации в защелки порта Р0 всегда автоматически записываются "1" во все разряды.
Рис. 2.7. Разряд порта О
Рис. 2.8. Разряд порта 1
Рис. 2.9. Разряд порта 2
Рис. 2.10. Разряд порта 3
Из рис. 2.10 видно, что если защелка вывода порта РЗ содержит "I", то выходным каскадом управляет внутренний сигнал, названный на рисунке "Альтернативная функция выхода", обеспечивающий выполнение соответствующей альтернативной функции. Если альтернативная функция предполагает, что данный вывод порта РЗ является входом, то значение уровня сигнала на нем поступает на внутреннюю линию "Альтернативная функция входа".
Все выводы портов PI, P2 и РЗ имеют внутренние подключенные к питанию подтягивающие резисторы (выполнены в виде показанных на рис. 2.8—2.10 транзисторов N2, включенных в режиме источников тока). Каждый выво^ указанных портов может независимо от других использоваться как вход или как