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

030C  C9                   RET            ;


030D  F5         STOR:     PUSH  PSW      ; запоминаем аккумулятор

030E  E6 03                ANI   03H      ; парафазное значине ли на входных цепях?

0310  E2 F3 0A             JPO   VIKL     ; если нет - защитное состояние

0313  EE 02                XRI   02H      ; маска, меняем формат хранимых данных

0315  77                   MOV   M,A      ; если парафазное - 11-сободна, 00 - занята секция

0316  F1                   POP   PSW      ; восстанавливаем аккумулятор

0317  0F                   RRC            ;

0318  0F                   RRC            ;

0319  C9                   RET            ;

031A  00         EXIT_D:   NOP            ; конец процесса декодирования информации

; выбор данных для исполнения

031B  3A 19 20   CMD_MOD:  LDA   IN_BYTE8 ;

031E  E6 10                ANI   10H      ; нажата ли кнопка "ДСП" - местное управление

0320  C2 3A 03             JNZ   LOCAL    ; да - исполнение от пульта

0323  3A 1A 20             LDA   MDM_BYTE1; нет - берем информацию от модема

0326  32 10 20             STA   COMMAND1 ;

0329  3A 1B 20             LDA   MDM_BYTE2;

032C  32 11 20             STA   COMMAND2 ;

032F  3A 41 20             LDA   MDM_OUTB2; в информации для ДЦ сбрасываем "ДСП"

0332  E6 FB                ANI   FBH      ;

0334  32 41 20             STA   MDM_OUTB2;

0337  C3 46 03             JMP   EXIT_CM  ;

033A  3A 18 20   LOCAL:    LDA   IN_BYTE7 ; берем информацию с пульта

033D  32 10 20             STA   COMMAND1 ;

0340  3A 19 20             LDA   IN_BYTE8 ;

0343  32 11 20             STA   COMMAND2 ;

0346  00         EXIT_CM:  NOP            ; переход дальше

; выбор маршрута для активизации

0347  3A 10 20   CHOOSE:   LDA   COMMAND1 ;

034A  FE 01                CPI   01H      ;

034C  C2 F7 02             JNZ   M2       ; не 1 маршрут

034F  21 00 20             LXI   H,2000h  ;

0352  C3 D6 03             JMP   OPER     ;

0355  FE 02      M2:       CPI   02H      ;

0357  C2 EB 02             JNZ   M3       ; не 2 маршрут

035A  21 01 20             LXI   H,2001h  ;

035D  C3 D6 03             JMP   OPER     ;

0360  FE 04      M3:       CPI   04H      ;

0362  C2 E7 02             JNZ   M4       ; не 3 маршрут

0365  21 02 20             LXI   H,2002h  ;

0368  C3 D6 03             JMP   OPER     ;

036B  FE 08      M4:       CPI   08H      ;

036D  C2 76 03             JNZ   M5       ; не 4 маршрут

0370  21 03 20             LXI   H,2003h  ;

0373  C3 D6 03             JMP   OPER     ;

0376  FE 10      M5:       CPI   10H      ;

0378  C2 81 03             JNZ   M6       ; не 5 маршрут

037B  21 04 20             LXI   H,2004h  ;

037E  C3 D6 03             JMP   OPER     ;

0381  FE 20      M6:       CPI   20H      ;

0383  C2 8C 03             JNZ   M7       ; не 6 маршрут

0386  21 05 20             LXI   H,2005h  ;

0389  C3 D6 03             JMP   OPER     ;

038C  FE 40      M7:       CPI   40H      ;

038E  C2 97 03             JNZ   M8       ; не 7 маршрут

0391  21 06 20             LXI   H,2006h  ;

0394  C3 D6 03             JMP   OPER     ;

0397  FE 80      M8:       CPI   80H      ;

0399  C2 A2 03             JNZ   M9       ; не 8 маршрут

039C  21 07 20             LXI   H,2007h  ;

039F  C3 D6 03             JMP   OPER     ;

03A2  3A 11 20   M9:       LDA   COMMAND2 ;

03A5  E6 0F                ANI   0FH      ; на всякий случай маска

03A7  FE 01                CPI   01H      ;

03A9  C2 B2 03             JNZ   M10      ; не 9 маршрут

03AC  21 08 20             LXI   H,2008h  ;

03AF  C3 D6 03             JMP   OPER     ;

03B2  FE 02      M10:      CPI   02H      ;

03B4  C2 BD 03             JNZ   M11      ; не 10 маршрут

03B7  21 09 20             LXI   H,2009h  ;

03BA  C3 D6 03             JMP   OPER     ;

03BD  FE 04      M11:      CPI   04H      ;

03BF  C2 C8 03             JNZ   M12      ; не 11 маршрут

03C2  21 0A 20             LXI   H,200Ah  ;

03C5  C3 D6 03             JMP   OPER     ;