Программная память
2.4.1. При сбросе МК (по внешнему сигналу RST) CPU начинает выполнение программы с адреса 0000H. В том случае, когда EA’=1 (см. рис. 2.4), начальный участок программы (младшие 4К байт) извлекается процессором из внутренней постоянной памяти, а остальная часть программы – из внешней памяти. Если МК не имеет внутренней постоянной памяти (или она не используется), то на вход EA’ следует подать логический сигнал 0. При этом выборка всей программы будет осуществляться из внешней памяти
2.4.2. Область адресного пространства программной памяти, начиная с адреса 0003Н, отводится для размещения начальных участков подпрограмм обслуживания прерываний (8 байтов на каждую из пяти программ). Адрес первого байта подпрограммы обслуживания прерывания (0003Н, 000BH, 0013H, 001BH, 0023Н), называемый адресом вектора прерывания, формируется контроллером прерываний МК аппаратно при обработке соответствующего запроса прерывания (см. подраздел 2.17).
2.4.3. Подключение к МК микросхемы внешней программной памяти показано на рис. 2.5, где A0 ¸ A7 – входы младших разрядов адреса, A8 ¸ A15 – входы старших разрядов адреса, OE’ и CS’ – управляющие входы, DATA – данные, считываемые из памяти, LATCH – регистр-защелка младшего байта адреса (8-разрядный параллельный регистр памяти, тактируемый уровнем).
При обращении к внешней программной памяти порт P0 МК работает в режиме временного мультиплексирования и служит как для вывода младшего байта адреса ячейки внешней памяти, так и для ввода в МК байта данных. Порт P2 используется для вывода старшего байта адреса.
Временным мультиплексированием (time-division multiplexing) называется предоставление канала ввода/вывода информации различным устройствам в разные промежутки времени.
Стробирование ввода/вывода информации через порт P0 при чтении данных из внешней программной памяти осуществляется с помощью управляющих сигналов ALE и PSEN’, вырабатываемых МК. Сигнал ALE (Address Latch Enable), поступающий с соответствующего выхода МК на тактовый вход регистра-защелки, предназначен для “защелкивания” младшего байта адреса, т.е. запоминания в регистре-защелке того кода, который был на выходах порта P0 в момент окончания сигнала ALE. Сигнал PSEN’ служит для управления считыванием данных из микросхемы памяти. Если на управляющий вход CS’ (Chip Select) микросхемы памяти поступает сигнал CS’=0, то подача сигнала PSEN’=0на управляющий вход OE’ (Output Enable) микросхемы приведет к тому, что байт данных (DATA) из адресуемой ячейки памяти поступит на вход порта P0 МК.
Рис. 2.5. Подключение микросхемы EPROM к МК 80C51
Временные диаграммы работы МК при выборке кодов команд из внешней программной памяти приведены в подразделе 2.9.
2.4.4. При обращении к внешней программной памяти всегда вырабатывается
16-разрядный адрес (даже тогда, когда объем исполняемой программы меньше, чем 64К байт), поэтому в тех случаях, когда для хранения программы или значений констант используется внешняя программная память, приходится “жертвовать” двумя портами МК.
Дата добавления: 2015-10-09; просмотров: 796;