80c196通讯.asm

来自「80c196c的串行通信控制例程」· 汇编 代码 · 共 48 行

ASM
48
字号
;80C196串行通信
$INCLUDE(8096.INC)
        CSEG AT 2080H
SERI:   LD 18H,#00E0H
        CLR 1AH
        LDB 1CH,#18H
        LD 1EH,#DATA
        LDB IOC1,#20H
        LDB BAUD_RATE,#0A0H
        LDB BAUD_RATE,#80H
        LDB SP_CON,#00H
LOOP1:  LCALL OUTDATA
        LDB 22H,#30H   ;设延迟参数
        SCALL DELAY    ;调用延迟子程序
        SJMP LOOP1
;----------------------------
OUTDATA:LDB 1AH,[1EH]
        LDB SBUF,1AH
LOOP2:  LDB 1BH,SP_STAT
        JBC 1BH,5,LOOP2
        INC 1EH
        DJNZ 1CH,RETURN
        LD 1EH,#DATA
        LDB 1CH,#18H
RETURN: LD 20H,#02H
WAT:    DECB 21H
        JNE WAT
        DECB 20H
        JNE WAT
        RET
;----------------------------
DATA:   DCB 00H,00H,00H,00H,55H,55H,55H,55H,0FFH,0FFH,0FFH,0FFH
        DCB 00H,00H,00H,00H,0AAH,0AAH,0AAH,0AAH,0FFH,0FFH,0FFH,0FFH
;----------------------------
DELAY:  PUSH 22H
DELAY1: PUSH 22H
DELAY2: PUSH 22H
        DJNZ 22H,$
        POP 22H
        DJNZ 22H,DELAY2
        POP 22H
        DJNZ 22H,DELAY1
        POP 22H
        DJNZ 22H,DELAY
        RET
;----------------------------
        END

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?