Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции МПСУ.doc
Скачиваний:
54
Добавлен:
06.12.2018
Размер:
7.86 Mб
Скачать

2.3. Схемы подключения внешней памяти к мк51

МК51 имеет встроенную РПП объемом 4 Кбайта, которой обычно достаточно для размещения программ МКСУ. Однако в тех случаях, когда программа содержит большой объем математических вычислений над дробными числами со знаком длиной 2 и более байт, когда используются таблицы математических функций (тригонометрические, логарифмические и т.д.) или содержатся большие объемы текстовой информации, предназначенной для вывода на дисплей, необходимо применение ВПП. Кроме указанных случаев, ВПП применяется на этапах отладки программ МПСУ, так как возможные изменения программ лучше выполнять над содержимым внешнего ПЗУ и даже в ОЗУ, к которому подведено не отключаемое напряжение питания. Максимальный объем ВПП составляет 64 Кбайт, из которых нижние 4 Кбайта могут замещать РПП.

На рис.2.15 приведена схема подключения ВПП на ИМС типа КР573РФ2 емкостью 2 Кбайта, а сигналом отключена РПП. Чтение информации из ВПП происходит следующим образом:

1). Двухбайтный адрес, взятый из счетчика команд микропроцессора, выставляется через включенные на вывод порты Р0 (младший байт адреса) и Р2 (старший байт адреса).

2). По срезу импульса ALE, поступающему на вход STB регистра DD2 временного хранения младшего байта адреса, этот байт защелкивается в регистре. При заземленном входе регистр находится постоянно в режиме чтения.

3). Происходит считывание информации по тактам в последовательности:

- на адресную шину ИМС DD3 поступает полный адрес ячейки памяти, состоящий из младшего байта, снимаемого с регистра DD2, и старшего байта, снимаемого с порта Р2;

- порт Р0 переключается на ввод;

- с приходом сигнала =0 информация с ШД DD3 поступает в порт Р0 МК51;

- по фронту сигнала данные из ВПП переписываются в МК51.

Порты Р0, Р2 нельзя использовать для простого ввода/вывода информации, так как через них в начале чтения производится вывод двух байт адреса.

МК51 имеет встроенную РПД объемом 128 байт ОПД и 21 байт РСФ, которой обычно достаточно для выполнения программ МКСУ. ВПД подключают в тех случаях, когда требуется хранить большие объемы оперативной информации, что характерно для МКСУ со сбором статистической информации, регистрации графиков переходных процессов и т.п. Максимальный объем ВПД составляет 64 Кбайта.

На рис.2.15 приведена схема подключения ВПД на ИМС типа КР537РУ10 емкостью 2 Кбайта, а сигналом подключена РПП.

Чтение информации, например, из ячейки ВПД по адресу 037DH происходит по программе, приведенной на рис.2.16, следующим образом:

1). В регистр указатель данных DPTR загружается данное #037D, которое является адресом ячейки ВПД.

2). Выполняется команда пересылки в аккумулятор байта из расширенной (полной) ВПД по тактам в последовательности:

Код

Мнемокод

Комментарии

90 03 7D

MOV DPTR, #037D

Загрузка регистра указателя данных DPTR

E0

MOVX A, @DPTR

Пересылка в аккумулятор байта из расширенной ВПД

Рис.2.16. Чтение расширенной ВПД

- двухбайтный адрес, взятый из DPTR, выставляется через включенные на вывод порты Р0 (младший байт адреса) и Р2 (старший байт адреса);

- по срезу импульса ALE, поступающему на вход STB регистра DD2 временного хранения младшего байта адреса, этот байт защелкивается в регистре, который при заземленном входе находится постоянно в режиме чтения;

- на адресную шину ИМС DD3 поступает полный адрес ячейки памяти, состоящий из младшего байта, снимаемого с регистра DD2, и старшего байта, снимаемого с порта Р2;

- порт Р0 переключается на ввод;

- через вывод Р3.7 порта Р3 генерируется нулевой импульс , который стробирует чтение ВПД;

- при =0 и постоянном единичном сигнале на входе ИМС DD3 выбрана для чтения;

- по фронту сигнала данные из ВПД поступают в аккумулятор МК51.

Порты Р0, Р2 нельзя использовать для простого ввода/вывода информации.

Если бы адрес ячейки ВПД находился в пределах от 0000Н до 00FFH, например, был адресом 5СН, что соответствовало бы ВПД-I (рис.2.1), то изменились бы принципиальная электрическая схема и программа чтения ВПД. В измененной электрической схеме адресные входы А10А9А8 ИМС DD3 нужно от порта Р2 отключить и заземлить. Измененная программа приведена на рис.2.17, а ее выполнение происходит в следующей последовательности:

Код

Мнемокод

Комментарии

79 5С

MOV R1, #5С

Загрузка в регистр R1 данного #5С

E3

MOVX A, @R1

Пересылка в аккумулятор байта из ВПД-I

Рис.2.17. Чтение ВПД-I

1). В регистр общего назначения R1 загружается данное #5С, которое является адресом ячейки ВПД-I. Для этих целей могут использоваться лишь два регистра - R0 или R1 - из восьми регистров общего назначения (рис.2.3).

2). Выполняется команда пересылки в аккумулятор байта из ВПД-I по тактам в последовательности:

- однобайтный адрес, взятый из R1, выставляется через включенный на вывод порт Р0;

- по срезу импульса ALE, поступающему на вход STB регистра DD2 временного хранения младшего байта адреса, этот байт защелкивается в регистре, который при заземленном входе находится постоянно в режиме чтения;

- порт Р0 переключается на ввод;

- через вывод Р3.7 порта Р3 генерируется нулевой импульс , который стробирует чтение ВПД-I;

- при =0 и постоянном единичном сигнале на входе ИМС DD3 выбрана для чтения;

- по фронту сигнала данные из ВПД поступают в аккумулятор МК51.

Порт Р0 нельзя использовать для простого ввода/вывода информации, а порт Р2 - можно.

Запись информации, например, в ячейку ВПД по адресу 08ВСH происходит по программе, приведенной на рис.2.18 следующим образом:

Код

Мнемокод

Комментарии

90 08 ВС

MOV DPTR, #08ВС

Загрузка регистра указателя данных DPTR

F0

MOVX @DPTR, A

Пересылка байта из аккумулятора в расширенную ВПД

Рис.2.18. Запись в расширенную ВПД

1). В регистр указатель данных DPTR загружается данное #08ВС, которое является адресом ячейки ВПД.

2). Выполняется команда пересылки байта из аккумулятора в расширенную ВПД по тактам в последовательности:

- двухбайтный адрес, взятый из DPTR, выставляется через включенные на вывод адреса порты Р0 (младший байт адреса) и Р2 (старший байт адреса);

- по срезу импульса ALE, поступающему на вход STB регистра DD2 временного хранения младшего байта адреса, этот байт защелкивается в регистре, который при заземленном входе находится постоянно в режиме чтения;

- на адресную шину ИМС DD3 поступает полный адрес ячейки памяти, состоящий из младшего байта, снимаемого с регистра DD2, и старшего байта, снимаемого с порта Р2;

- порт Р0 остается в режиме вывода, но в него теперь поступает информация из аккумулятора МК51;

- через вывод Р3.6 порта Р3 генерируется нулевой импульс , который стробирует запись в ВПД;

- при сигнале =0 и постоянном единичном сигнале на входе ИМС DD3 выбрана для записи;

- по фронту сигнала информация из порта Р0 МК51 переписывается в ячейку ВПД.

Порты Р0, Р2 нельзя использовать для простого ввода/вывода информации.

Возможен вариант записи в ВПД-I, который, в общем, аналогичен чтению ее, рассмотренному выше. При такой записи только порт Р0 нельзя использовать для простого ввода/вывода информации.

Как видно, при работе с ВПД управляющие сигналы и поступали из порта Р3. Разряды Р3.6 и Р3.7 также нельзя использовать для простого ввода/вывода информации. Полный перечень альтернативных функций порта Р3 приведен на рис.2.19. Если через некоторый разряд порта Р3 вводятся или выводятся обозначенные на рис.2.19 сигналы, то этот разряд нельзя использовать для простого ввода/вывода информации.

Бит

Обознач.

Назначение

7

Чтение из ВПД

6

Запись в ВПД

5

T1

Вход Т/С1 в режиме счета внешних импульсов

4

T0

Вход Т/С0 в режиме счета внешних импульсов

3

Запрос прерывания 1

2

Запрос прерывания 0

1

TXD

Выход передатчика последовательного порта

0

RXD

Вход передатчика последовательного порта

Рис.2.19. Альтернативные функции порта Р3

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]