rxd8951.asm
来自「两个8051做的串行口通信呼叫器」· 汇编 代码 · 共 40 行
ASM
40 行
ORG 00H
START:
MOV SCON,#50H ;设置串口工作在模式1下,接收使能
MOV TMOD,#20H ;使用Timer1工作在模式2下
MOV TH1,#0F3H ;波特率2400
MOV TL1,#0F3H
SETB TR1 ;启动Timer1
;**********判断是否建立通信**********
WAIT_DIAL:
JBC RI,CHECK_99 ;判断是否接收到呼叫(RI=1?)
JMP WAIT_DIAL
CHECK_99:
MOV A,SBUF ;接受到的数据载入ACC
CJNE A,#99H,WAIT_DIAL ;判断是否为呼叫号99H
SEND_RESPONSE:
MOV SBUF,#01H ;发送应答号01H
CHECK_01:
JBC TI,RECEIVE_NUM ;判断应答号是否发送完毕(TI=1?)
JMP CHECK_01
;**************接收数据******************
RECEIVE_NUM:
JBC RI,DISPLAY ;等待接收显示数据(RI=1时显示)
JMP RECEIVE_NUM
DISPLAY:
MOV A,SBUF ;将接收到的显示数据载入ACC
MOV P0,A ;输出至P0口显示
CALL DELAY ;延时
JMP RECEIVE_NUM ;循环
DELAY: ;延时子程序
MOV R3,#20
D1: MOV R4,#20
D2: MOV R5,#248
DJNZ R5,$
DJNZ R4,D2
DJNZ R3,D1
RET
END
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?