Аппаратные и программные средства встраиваемых систем


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



Pdf көрінісі
бет211/268
Дата07.01.2022
өлшемі3,23 Mb.
#18255
1   ...   207   208   209   210   211   212   213   214   ...   268
4.6.9.10 Операции чтения и записи команд/данных 
 
Рисунок 86. Запись команды/данных в ЖКИ 
 
 
Рисунок 87. Чтение данных из ЖКИ 
Пример  программирования  ЖКИ  стенда SDK-1.1 приведен  в  подразделе 
6.5. 
 
4.7  Внешняя память программ и данных 
Внешняя память программ и данных стенда SDK-1.1 (см. подраздел 4.4.2) 
–  статическое  ОЗУ (SRAM), имеющее  страничную  организацию  и 
предназначенное  для  размещения  пользовательских  программ  и  данных. 
Подключается к МК ADuC812 по системной шине (как и ПЛИС). 
Так  как  МК ADuC812 имеет  Гарвардскую  архитектуру,  то  доступ  к 
внешней  памяти  по  чтению  команд  и  данных  организован  по-разному. 


 
218 
Используется  одна  и  та  же  шина  адреса  и  данных,  а  шина  управления 
отличается. 
Сначала рассмотрим цикл чтения команды из внешней памяти программ: 
 
Рисунок 88. Интерфейс подключения внешней памяти программ к МК ADuC812 
В  такой  схеме  для  портов P0 и P2 должна  быть  выбрана  альтернативная 
функция  (т.е.  не  порты  ввода-вывода),  при  этом  порт P0 превращается 
мультиплексированную  шину  адреса/данных.  Сначала  через P0 передается 
младший  байт  счетчика  команд,  который  запоминается  регистром-защелкой 
(Latch)  по  синхроимпульсу ALE (Address Latch Enable). Через P2 передается 
старший  байт  счетчика  команд.  Далее  вырабатывается  сигнал PSEN (Program 
Store Enable), по которому из внешней памяти программ считывается команда в 
ADuC812 через P0. 
 
Рисунок 89. Диаграмма цикла чтения команды из внешней памяти программ 
Рассмотрим схему подключения внешней памяти данных объемом 16 Мб 
(больше 64 Кб) к МК ADuC812: 


 
219 
 
Рисунок 90. Интерфейс подключения внешней памяти данных (16 Мб) к МК ADuC812 
В  такой  схеме  подключения  используется  два  регистра-защелки.  Цикл 
чтения  байта  данных  организован  следующим  образом:  через  порт P0 
выставляется  младший  байт  адреса  (содержимое SFR-регистра DPL), а  через 
порт P2 — старший  байт  адреса  (регистр DPP). Каждый  байт  адреса 
сохраняется по сигналу ALE в соответствующем регистре-защелке. Далее через 
порт P2 выставляется  средний  байт  адреса  (регистр DPH), и  по  сигналу RD 
ADuC812 читает байт данных через порт P0. 
 
Рисунок 91. Диаграмма цикла чтения байта из внешней памяти данных 


 
220 
Если второго регистра-защелки нет, то объем доступной внешней памяти 
данных равен 64 Кб. 
Цикл  записи  байта  во  внешнюю  память  данных  выполняется  аналогично, 
только вместо сигнала RD используется сигнал WR, а через порт P0 передается 
записываемый байт. 
Таким  образом,  для  обращения  к  внешней  памяти  данных  и  к  памяти 
программ используются одни и те же шина  адреса и  шина данных, но разные 
управляющие  сигналы.  Для  чтения  памяти  программ  вырабатывается  сигнал 
PSEN (Program Store Enable), а  для  чтения  памяти  данных  вырабатывается 
сигнал RD. Для  записи  информации  в  память  данных  вырабатывается  сигнал 
WR.  То  есть  память  программ  доступна  только  для  чтения,  а  память  данных 
доступна  и  для  чтения,  и  для  записи  любой  информации,  записанной  в 
двоичном коде. 
 
Рисунок 92. Диаграмма цикла записи байта во внешнюю память данных 
 


 
221 


Достарыңызбен бөлісу:
1   ...   207   208   209   210   211   212   213   214   ...   268




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет