Устройство управления пуском-остановом двигателей аэробуса, страница 6

 


Блок-схема: альтернативный процесс:                            Конец 2.3

Расчет постоянной времени задержки.

 ОД= 17+7+2×5+2×10+10

 МН= 2×(11+10+7+7+10+10+10+7+10+5+5+4+10)

 ОД+МН×t = 2×2.22×1000000

  t=39214

Объектный файл программы представлен в Приложении.

                                                Листинг программы

Кросс-ассемблер 80/85 ### Файл листинга Kelt.lst

Входной файл   > Kelt.asm

Объектный файл > Kelt.obj

1 проход

2 проход

  1                     porta              equ      80h

  2                     portb              equ      81h

  3                     portc              equ      82h

  4                     portdev          equ      83h

  5                     repdr              equ      254

  6                     keycod          equ      18

  7                     delay              equ      39214

  8                                           org       800h      ; стартовый адрес программы в ОЗУ стенда

  9  0800   31 90 09                            lxi        sp,990h  ; инициализация указателя стека

 10  0803   3E 89                   mvi      a,89h      ; загрузка управляющего байта внешних устройств

 11  0805   D3 83                               out       portdev

 12  0807   3E 00                   mvi      a,0

 13  0809   D3 80                               out       porta

 14  080B   D3 81                  out       portb

 15  080D   16 0A                  mvi      d,10        ;инициализация эталона секунд и

 16  080F   06 00                   mvi      b,0          ;режима счета-0:обычный режим,1-ускоренный

 17  0811   0E FE       strt:      mvi      c,repdr

 18  0813   DB 82       dreb:   in         portc       ;защита от дребезга при нажатии

 19  0815   E6 12                   ani       keycod

 20  0817   CA 11 08             jz         strt

 21  081A   0D                      dcr       c

 22  081B   C2 13 08              jnz       dreb

 23  081E   DB 82                  in         portc

 24  0820   21 C5 08              lxi        h,key

 25  0823   77                          mov     m,a          ;сохранение кода считанной клавиши в памяти

 26  0824   0E FE       dreb1:  mvi      c,repdr

 27  0826   DB 82       dreb2: in         portc        ;защита от дребезга при отпускании

 28  0828   A7                        ana      a

 29  0829   C2 24 08              jnz       dreb1

 30  082C   0D                        dcr       c

 31  082D   C2 26 08             jnz       dreb2

 32  0830   21 C5 08              lxi        h,key

 33  0833   7E                         mov     a,m

 34  0834   FE 10                    cpi       16           ;анализ кода считанной клавиши-смена режима или запуск

 35  0836   C2 3F 08              jnz       strt1

 36  0839   CD 70 08             call      regim

 37  083C   C3 11 08              jmp      strt

 38  083F   3E 00       strt1:    mvi      a,0           ;включение первого двигателя