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

10F6 A4            160                  mul AB;A:=A*125

10F7 8564F0        161                  mov B, 100

10FA 84            162                  div AB;A:=A/100

10FB 850AF0        163          mov B, 10

10FE 84            164          div AB;A:=A/1000=>A=N7*0.125

10FF 2570          165          add A, 70h;A:=A+0.17

1101 90FF10        166                  mov DPTR, #0FF10h;Адрес ЦАП            

Ashling Microsystems - A51 Assembler - Version 3.0.0        12-12-99 PAGE   4

LOC   OBJ            LINE   SOURCE

1104 F0            167  movx @DPTR,A; вывод цифрового значения в ЦАП

1105 F571          168                  mov 0071h, A ; Сохранение текущего значения Q4

169                                  ; для вывода на индикаторы

1107 02102C        170          ljmp beg                ; Возврат к началу цикла управления

1390               171  org 1390h

172  intpr:

1390 209008        173          jb P1.0, fk1; вызов обработки аварии

1393 20910A        174          jb P1.1, fk2; вызов обработки питания

1396 20920C        175          jb P1.2, fk3;вызов обработки клав.

1399 800D          176          sjmp endint

139B 121400        177  fk1:    lcall failcall

139E 8008          178          sjmp endint

13A0 121500        179  fk2:    lcall pwrcall

13A3 8003          180          sjmp endint

13A5 121600        181  fk3:    lcall keycall

13A8 22            182  endint: ret

1400               183  org  1400h

184  failcall:

1400 C0E0          185          push ACC; Сохранение A

1402 E570          186          mov A, 0070h; Текущие значения X1 - X4

1404 D28C          187          setb TR0; Включение аварийной сигнализации

1406 90FF14        188          mov DPTR, #0FF14h; Адрес регистра со светодиодами

1409 F0            189          movx @DPTR, A

190          ; Вызов процедуры вывода на дисплей

140A E571          191          mov A,0071h; A:=Q4

140C 75F00A        192          mov b,#10

140F 84            193          div ab; a:=a div b; b:=a mod b

1410 900073        194          mov DPTR, #tbl

1413 E8            195          mov A, R0

1414 93            196          movc A, @A+DPTR;a:=[dptr+<a>]

1415 C082          197          push DPL

1417 C083          198          push DPH

1419 C0E0          199          push ACC

141B E580          200          mov A,10000000b;1-ый символ дисплея

141D 90FF0C        201          mov DPTR, #0FF0Ch

1420 F0            202          movx @DPTR, A

1421 D0E0          203          pop ACC

1423 90FF0D        204          mov DPTR, #0FF0Dh

1426 F0            205          movx @DPTR, A

1427 D083          206          pop DPH

1429 D082          207          pop DPL

142B E9            208          mov A, R1

142C 93            209          movc A,@A+DPTR

142D C082          210          push DPL

142F C083          211          PUSH DPH

1431 C0E0          212          push ACC

1433 E581          213          mov A,10000001b;2-ой символ дисплея

1435 90FF0C        214          mov DPTR, #0FF0Ch

1438 F0            215          movx @DPTR, A

1439 D0E0          216          pop ACC

143B 90FF0D        217          mov DPTR, #0FF0Dh

143E F0            218          movx @DPTR, A

143F D083          219          pop DPH

1441 D082          220          pop DPL

1443 D0E0          221          pop ACC

1445 C290          222          clr P1.0

223          ;hlt; Останов процессора

Ashling Microsystems - A51 Assembler - Version 3.0.0        12-12-99 PAGE   5

LOC   OBJ            LINE   SOURCE

1447 22            224          ret                     ; Возврат из прерывания

1500               225  org 1500h

226  pwrcall:

1500 C0E0          227                  push ACC

1502 C082          228                  push DPL

1504 C083          229                  push DPH

1506 C0D0          230                  push PSW

1508 D0E0          231                  pop ACC

150A C291          232                  clr P1.1

233                  ;hlt