Разработка принципиальной схемы микропроцессорной системы. Модуль процессора. Разработка основного алгоритма работы программы, страница 5


2.4  Программа аварийного срабатывания.

Программа аварийного срабатывания вызывается если не совпадает значения данных поданных в порт А и данных  считанных с датчиков с порта В.

Программу можно разбить на три части:

ü Вычисление номера не сработавшего двигателя.

ü Вывод номера на индикатор.

ü Выдача в порт звукового сигнала частотой 400 герц.

Листинг программы следующий:

адрес

Маш. Код

Метка

Мнемо код

Комментарий

0079h

78

Avar2:

mov

A

,B

; (А)¬(B)

007Ah

2F

Avar1:

cma

;(A)¬not(A)

007Bh

0E

00h

Avar0:

mvi

C

,00h

;(C)¬00h

007Dh

A7

ana

A

;СY¬0

007Eh

0F

Shift:

rrc

;сдвиг вправо

;через CY

007Fh

DA

86

00

jc

Display

;переход на

;Display

0082h

0C

inr

C

;(C)¬(C)+1

0083h

C3

7E

00

jmp

Shift

;переход на Shift

0086h

3E

00h

Display:

mvi

A

,00h

;(A)¬00h

0088h

D3

FC

out

PA

;(порт А)¬(A)

008Ah

21

00

03

lxi

H

,Tabl

;(HL)¬Tabl

008Dh

06

00

mvi

B

.00h

;(B)¬00h

008Fh

09

dad

B

;(HL)¬(HL)+(BC)

0090h

7E

mov

A

,M

;(А)¬(M(HL))

0091h

21

FF

FF

lxi

H

,Indik

;(HL)¬Indik

0094h

77

mov

M

,A

;Mem(HL)¬(A)

0095h

3E

80h

Signal:

mvi

A

,80h

;(A)¬80h

0097h

D3

FEh

out

PC

;(порт C)¬(A)

0099h

CD

17

01

call

Delay2

;пауза

009Ch

3E

00h

mvi

A

,00h

;(A)¬00h

009Eh

C3

01

01

jmp

S1

;t+10тактов

0101h

D3

FE

S1:

out

PC

;(порт С)¬(A)

0103h

CD

17

01

call

Delay2

;пауза

0106h

C3

95

00

jmp

Signal

;переход на

;Signal

Tabl – адреса в котором храняться коды цифр в семисегментном коде. (см. приложение)