Практические задания на экзамен по дисциплине "Цифровые и микропроцессорные устройства", страница 6

TH8155                        DS              1                 ; TIMER HIGH PART OF 8155 IN I/O SPACE

                    DEFSEG  PA8355SEG,START=8,CLASS=IOSPACE

                    SEG           PA8355SEG

PA8355          DS      1 ; PORT A OF 8355 IN I/O SPACE

PB8355                        DS              1 ; PORT B OF 8355 IN I/O SPACE

DA8355                        DS              1 ; DDR OF PORT A OF 8355 IN I/O SPACE

DB8355                        DS              1 ; DDR OF PORT B OF 8355 IN I/O SPACE

                    ;

        ;PROGRAMM

        DEFSEG  STARTSEG,CLASS=CODE,START=0

        SEG     STARTSEG

                    LXI     SP,STPOINT

;                  JMP           ZAD1                                                                                                           ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Нечет.

;                  JMP           ZAD3

;                  JMP           ZAD5       

;                  JMP           ZAD19

;                  JMP           ZAD21

        JMP     PROG

        DEFSEG  RST75SEG,CLASS=CODE,START=3CH

        SEG     RST75SEG

        PUSH    PSW

        IN      PB8155

        MOV     M,A

        INX     H

        DCR     B

        JZ     SET_FLAG

        POP     PSW

        EI

        RET

SET_FLAG:

        MVI     A,0

        STA     FLGZGR

        POP     PSW

        EI

        RET

        SEG     CODE

PROG:   LXI     SP,STPOINT

        MVI     A,00001011B     ;SET MASK TO RST6.5, RST5.5

        SIM

        INIT1   STACKR,'.',STACKSIZE

        INIT1   BUF1,'1',TEXTSIZE-1

        INIT1   BUF2,'2',TEXTSIZE-1

        INIT1   BUF3,'3',TEXTSIZE-1

        MVI     A,1

        STA     FLGZGR

        MVI     A,0     ;ALL INPUT

        OUT     DB8355

                    LXI            H,BUF1+TEXTSIZE-1               ;END OF BUF1

        DCR     A

        OUT     DA8355  ;ALL OUTPUT

;           BIT=  76543210

        MVI     A,00101000B     ;B7,6=TIMER-STOP,

                                ;B5,4=INTB-DESABLE, INTA -ENABLE,

                                ;B3,2=ALT4

        OUT     CS8155          ;PORT A,B 8155 - INPUT

;

;               MAIN

;

Нечет.

        LXI     H,BUF1

        MVI     B,TEXTSIZE-1    ;1BYTE - END BUFFER +

                                ;1BYTE - EMPTY BYTE FROM INPUT_FILE

        IN      PB8155          ;ONLY FOR THE ACTIVATE INPUT FILE

        EI

WAITBUFFER:

        LDA     FLGZGR

        ORA     A

        JNZ     WAITBUFFER       ;WAIT BUFFER

        MVI     A,00001111B     ;MASK FROM ALL INTERRUPT

        SIM

                    LXI            H,BUF1

                    CALL        KONSUM

                    LXI            D,BUF2

                    MVI           A,1

                    STA           PASS1

LOOP1:

                    MOV         A,M

                    ORA          A

                    JZ              ENDTEXT

                    CALL        CODING

                    STAX        D

                    INX            H

                    INX            D

                    JMP           LOOP1

ENDTEXT:

        STAX    D

                    LDA           PASS1

                    ORA          A

                    MVI           A,0

                    STA           PASS1

                    JZ              HALT

PRODOLJ:

                    LXI            H,BUF2

                    LXI            D,BUF3

                    JMP           LOOP1

;

HALT:

                    DI

        LXI     H,BUF3

        CALL    KONSUM

;       OUTPUT FROM THE PORT B

        LXI     H,BUF2

        MVI     B,TEXTSIZE-1

LOOPOUT:

        MOV     A,M

        OUT     PA8355

        INX     H

        DCR     B

        JNZ     LOOPOUT

                    HLT

CODING:

        ;SUBROUTINE

        CMA

                    RET

Чет.

$ALLPUBLIC

$TITLE(TITLE   'LAB-RAB5. I8085 2009 =L_01.A85')

;-------------------------------------------------

;       L_01.A85

; ВАРИАНТ ПРОГРАММЫ ИЗ НЕСКОЛЬКИХ ИСХОДНЫХ ФАЙЛОВ

;   РАЗДЕЛ 7 ЛАБОРАТОРНОГО ПРАКТИКУМА