s9.asm

来自「《8051单片机彻底研究》一书的随书光盘」· 汇编 代码 · 共 44 行

ASM
44
字号
;PROGRAM NAME S9.ASM
;TEST SERIAL PORT (MODE 3)
ADDR    EQU     27H
STOP    EQU     00H
BUZZER  REG     P3.4
LED     REG     P3.7
;
        ORG     0000H
RESET   MOV     R0,#00H
        DJNZ    R0,$
        CLR     LED
        CLR     BUZZER
;
START   LCALL   INIT_SIO        ;SIO,TIMER INIT
        CLR     RI
        MOV     P1,#00H         ;CLEAR P1 PORT
        SETB    SM2             ;MULTIPROCESSOR COMMUNICATION
WAIT    JNB     RI,WAIT         ;WAIT UNTIL RI=1
        MOV     A,SBUF          ;READ ADDRESS
        CLR     RI
        CJNE    A,#ADDR,WAIT    ;ADDRESS CHECK
        CLR     SM2             ;SM2=0,READ DATA MODE
DWAIT   JNB     RI,DWAIT
        MOV     A,SBUF          ;READ DATA
        CLR     RI
        SETB    SM2             ;MULTIPROCESSOR COMMUNICATION
        CJNE    A,#STOP,WAIT    ;WAIT ANOTHER CODE
        SJMP    START           ;RE-START
;
INIT_SIO
        MOV     TMOD,#00100000B ;TIMER 1 MODE 2
        MOV     TH1,#FDH        ;BAUD RATE=9600 BPS
        SETB    TR1             ;START TIMER 1
        MOV     SCON,#11010000B ;T/R,1 START BIT
                                ;8 BITDATA,1 TB8,1 STOP BIT
        RET
;
DELAY   MOV     R0,#00H         ;WAIT A WHILE
        MOV     R1,#00H
DLY1    DJNZ    R0,$
        DJNZ    R1,DLY1
        RET
;

⌨️ 快捷键说明

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