Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
микропроцессоры.DOC
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
1.46 Mб
Скачать

2.5.2. Организация ввода-вывода

Порты Р0, Р1, Р2, Р3 являются двунаправленными портами ввода-вывода и предназначены для обеспечения обмена информацией ОМЭВМ с внешними устройствами, образуя 32 шины ввода-вывода. Помимо работы в качестве обычных портов ввода-вывода линии портов Р0-Р3 могут выполнять ряд дополнительных функций.

Через порт Р0:

  • выводится младший байт адреса А0-А7 при работе с внешней памятью программ и внешним ОЗУ

  • выдается из ОЭВМ и принимается в ОЭВМ байт данных при работе с внешней памятью (таким образом, этот порт представляет собой в этом режиме так называемую мультиплексированную шину адреса/данных).

  • задаются данные при программировании внутреннего ППЗУ, и читается содержимое внутренней памяти команд

Через порт Р1:

  • задается младший байт адреса при программировании внутреннего ППЗУ и при чтении внутренней памяти программ

Через порт Р2:

  • выводится старший байт адреса А8-А15 при работе с внешней памятью команд и внешней памятью данных (для внешней памяти данных – только при использовании команд MOVX A,@DPTR и MOVX @DPTR,A, которые вырабатывают 16-разрядный адрес)

  • задается старший байт (разряды А8-А15) адреса при программировании внутреннего ППЗУ и при чтении внутренней памяти программ.

Каждая линия порта Р3 имеет индивидуальную альтернативную функцию:

  • Р3.0 – RxD, вход последовательного порта;

  • Р3.1 – TxD, выход последовательного порта;

  • Р3.2 – INT 0, используется как вход 0 внешнего запроса прерывания;

  • Р3.3 – INT 1, используется как вход 1 внешнего запроса прерывания;

  • Р3.4 – T0, используется как вход счетчика внешних событий Т/С0;

  • Р3.5 – T1, используется как вход счетчика внешних событий Т/С1;

  • Р3.6 – WR, строб записи во внешнюю память данных, выходной сигнал, сопровождающий вывод данных через порт Р0 при использовании команд MOVX @Ri,A и MOVX @DPTR,A;

  • Р3.7 – RD, строб чтения из внешней памяти данных, выходной сигнал, сопровождающий ввод данных через порт Р0 при использовании команд MOVX A,@Ri и MOVX A,@DPTR.

Таким образом, функции портов ввода/вывода зависят от режима работы ОЭВМ. В принципе она может работать в двух принципиально разных режимах:

  • минимальный режим, в котором не требуется подключения к ОЭВМ дополнительных БИС ОЗУ, ПЗУ, или УВВ. В этом случае все 4 порта могут использоваться совершенно произвольно.

  • максимальный режим, в котором требуется подключение к ОЭВМ дополнительных БИС либо ОЗУ, либо ПЗУ, либо УВВ. В этом случае необходимо организовать шинную структуру (ША, ШД и ШУ).При этом для фиксации младшего байта адреса ША необходимо подключить специальный регистр-защелку, в котором будет храниться этот байт в течение всего цикла обращения к внешней памяти. (Напомним, что Р0 является мультиплексированной шиной адреса-данных). По сигналу ALE этот байт запоминается в регистре. Старший байт адреса и так сохраняется неизменным на выводах порта Р2. Таким образом в этом режиме занятыми оказываются порты Р0, Р2, и в случае подключения внешних ОЗУ или УВВ - выводы WR и RD.