Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
686.docx
Скачиваний:
84
Добавлен:
24.04.2019
Размер:
6.68 Mб
Скачать

4.6.9.10 Операции чтения и записи команд/данных

Рисунок 86. Запись команды/данных в ЖКИ

Рисунок 87. Чтение данных из ЖКИ

Пример программирования ЖКИ стенда SDK-1.1 приведен в подразделе

6.5.

4.7 Внешняя память программ и данных

Внешняя память программ и данных стенда SDK-1.1 (см. подраздел 4.4.2)

статическое

ОЗУ

(SRAM),

имеющее

страничную

организацию

и

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

Подключается к МК ADuC812 по системной шине (как и ПЛИС).

Так как МК ADuC812 имеет Гарвардскую архитектуру, то доступ к

внешней памяти по чтению команд и данных организован по-разному.

217

Используется одна и та же шина адреса и данных, а шина управления

отличается.

Сначала рассмотрим цикл чтения команды из внешней памяти программ:

Рисунок 88. Интерфейс подключения внешней памяти программ к МК ADuC812

В такой схеме для портов P0 и P2 должна быть выбрана альтернативная

функция (т.е. не порты ввода-вывода), при этом порт P0 превращается

мультиплексированную шину адреса/данных. Сначала через P0 передается

младший байт счетчика команд, который запоминается регистром-защелкой

(Latch) по синхроимпульсу ALE (Address Latch Enable). Через P2 передается

старший байт счетчика команд. Далее вырабатывается сигнал PSEN (Program

Store Enable), по которому из внешней памяти программ считывается команда в

ADuC812 через P0.

Рисунок 89. Диаграмма цикла чтения команды из внешней памяти программ

Рассмотрим схему подключения внешней памяти данных объемом 16 Мб

(больше 64 Кб) к МК ADuC812:

218

Рисунок 90. Интерфейс подключения внешней памяти данных (16 Мб) к МК ADuC812

В такой схеме подключения используется два регистра-защелки. Цикл

чтения байта данных организован следующим образом: через порт P0

выставляется младший байт адреса (содержимое SFR-регистра DPL), а через

порт P2 — старший байт адреса (регистр DPP). Каждый байт адреса

сохраняется по сигналу ALE в соответствующем регистре-защелке. Далее через

порт P2 выставляется средний байт адреса (регистр DPH), и по сигналу RD

ADuC812 читает байт данных через порт P0.

Рисунок 91. Диаграмма цикла чтения байта из внешней памяти данных

219

Если второго регистра-защелки нет, то объем доступной внешней памяти

данных равен 64 Кб.

Цикл записи байта во внешнюю память данных выполняется аналогично,

только вместо сигнала RD используется сигнал WR, а через порт P0 передается

записываемый байт.

Таким образом, для обращения к внешней памяти данных и к памяти

программ используются одни и те же шина адреса и шина данных, но разные

управляющие сигналы. Для чтения памяти программ вырабатывается сигнал

PSEN (Program Store Enable), а для чтения памяти данных вырабатывается

сигнал RD. Для записи информации в память данных вырабатывается сигнал

WR. То есть память программ доступна только для чтения, а память данных

доступна и для чтения, и для записи любой информации, записанной в

двоичном коде.

Рисунок 92. Диаграмма цикла записи байта во внешнюю память данных

220

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