Если в МПС используется МП КР1821ВМ85А и отсутствует ПКП, то в программу CONTROL нужно внести изменения:
1. Необходимо изменить векторы прерываний (начальные адреса подпрограмм обработки прерываний).
2. Необходимо кроме общего разрешения прерываний разрешить прерывания по входам RST7.5, RST6.5, RST5.5 индивидуально с помощью команды SIM.
Команда SIM загружает в регистр прерываний МП содержимое аккумулятора, которое должно иметь вид:
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
0 |
0 |
0 |
R7.5 |
МSE |
М7.5 |
М6.5 |
М5.5 |
Здесь М7.5, М6.5, М5.5 – маски прерываний (1 – маска установлена); МSE – разрешение установки маски (1 – разрешено); R7.5 – разрешение сброса триггера на входе RST7.5 (1 – сброс).
Например, необходимо разрешить прерывания RST7.5 и RST6.5, но запретить RST5.5, выполнить сброс триггера RST7.5. Содержимое аккумулятора должно быть: 00011001В=19Н. Программа для МП:
MVI A, 19H |
|||
SIM |
Следует отметить, что сброс триггера на входе RST7.5 необходимо выполнять каждый раз перед выходом из подпрограммы обслуживания прерывания по этому входу, иначе МП не будет реагировать на запросы по RST7.5.
Таким образом, для МП КР1821ВМ85А программа CONTROL будет иметь вид:
ORG 0000H |
|||
CONTROL: |
LXI SP, STACK |
||
JMP MAIN |
|||
ORG 0024H |
; ; |
Вектор прерывания по входу TRAP (запрос INT0) |
|
JMP ISR0 |
|||
ORG 003СH |
; ; |
Вектор прерывания по входу RST7.5 (запрос INT1) |
|
JMP ISR1 |
|||
ORG 0034H |
; ; |
Вектор прерывания по входу RST6.5 (запрос INT2) |
|
JMP ISR2 |
|||
ORG 002CH |
; ; |
Вектор прерывания по входу RST5.5 (запрос INT3) |
|
JMP ISR3 |
|||
ORG 0050H |
|||
MAIN: |
MVI A, 92H |
||
MVI A, 18H |
|||
SIM |
; ; |
Разрешить прерывания RST7.5, RST6.5, RST5.5 |
|
EI |
; |
Общее разрешение прерываний |
|
HLT |
Блок-схема алгоритма (БСА) подпрограммы обработки прерывания ISR3 по запросу INT3 приведена на рис. 2.3. Вначале производится ввод и обработка цифровой информации (входные сигналы Х1-Х4), затем ввод и обработка аналоговой информации (входные сигналы V1-V4), в конце проверяется состояние тумблера “Останов” на пульте управления.
БСА обработки цифровой информации приведена на рис. 2.5. Рассмотрим программную его реализацию на примере вычисления логической функции двух переменных
, где – знак операции логического сложения (функция ИЛИ);
– знак операции логического умножения (функция И);
– знак операции логического отрицания (функция НЕ).
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.