Режим работы с внутренней памятью программ

Режимы работы.

IN A, P2

IN A, P1

OUTL P2, A

По этим командам содержимое аккумулятора записывается в триггера-защелки портов и присутствует на выводах портов.

По этим командам в аккумулятор вводится состояние на выводах портов. Предварительно в триггеры-защелки портов должны быть записаны “лог.1”.

Следующие команды - это команды “чтение – модификация - запись”.

ANL P1, #data8

ANL P2, #data8

Эта команда сложная, выполняется в три этапа. Во-первых, читается содержимое триггера – защелки по внутренней команде “чтение защелки”. Во-вторых, это значение логически умножается на константу #data8. В-третьих, полученное значение записывается в порт. Таким образом, можно модифицировать содержимое порта. Команду типа ANL удобно использовать, когда необходимо обнулить некоторые разряды порта. Для этого константа data8 должна иметь нули в разрядах, которые обнуляются. Например имеем состояние порта P1, работающего на вывод, равное 01011111. Необходимо установить в нулевое состояние разряды 1 и 3 порта. Для этого необходимо выполнить команду ANL P1, #11110101B. При этом остальные разряды не меняют своего состояния. Продемонстрировать.

ORL P1, #data8

ORL P2, #data8

Команды, подобные предыдущим, только здесь используется логическое сложение. Заметим, что данную команду можно использовать для установки в “1” отдельных разрядов портов. Например, команда ORL P2, #10000001B установит в “1” 0 и 7 разряды порта P2.

Порт P0(шина DB) в отличие от портов P1,P2 имеет дополнительные функции. Эти функции связаны с использованием микроэвм в расширенных системах, то есть когда используется внешняя память программ или данных. Если порт P0 используется как статический порт ввода/вывода, подобно портам P1,P2, то вывод из него выполняется по команде OUTL BUS, A, а ввод по команде INS A, BUS. В отличие от портов P1,P2 порт P0 допускает только побайтовый обмен, когда по всем линиям порта производится либо ввод, либо вывод. Кроме этого имеются команды типа “чтение – модификация - запись”.

ANL BUS, #data8

ORL BUS, #data8.

Отметим, что порт P0 все же своей основной функцией имеет функцию работы с внешней памятью, поэтому рассмотрим режимы работы микроэвм с внутренней и внешней памятью.

Если внутренней памяти микроэвм достаточно для реализации возложенных на нее функций, то используется этот режим. Этот режим устанавливается в микроэвм при подаче напряжения “лог.0” на вывод EMA. В этом режиме микроэвм не формирует никакие внешние управляющие сигналы, за исключением сигнала ALE. То есть все процессы проходят внутри микроэвм. Сигнал ALE вырабатывается в каждом машинном цикле, и имеет период 2,5 мкс. Здесь и далее имеется в виду, что частота кварцевого генератора равна 6 МГц.

Если микросхема имеет внутреннюю память программ и вывод EMA подключен к “лог 0”, то обращение к внутренней памяти программ производится до последнего адреса внутренней памяти, далее автоматически начинается обращение к внешней памяти.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: