📄 串口.asm
字号:
TEST BIT 70H
ORG 0000h
MOV 1,#0FFH;开机延时
DJNZ 1,$
AJMP MAIN
ORG 0023h
LJMP COMM ;串口中断
ORG 0100H
MAIN:MOV SP,#5fH
;$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$串口初始化
mov TMOD,#20h ;T1: 工作模式2
mov PCON,#00h ;SMOD=1
mov TL1,#0FDH
mov TH1,#0FDH ;初始化波特率9600
mov SCON,#50h ;Standard UART settings
SETB REN ;允许接收
SETB TR1 ;T1开始工作
SETB ES ;开串口中断
SETB EA
CLR TEST
AJMP $
;$$$$$$$$$$$$$$$$$$$$
COMM:JB RI,GO
RETURN:RETI
GO:CLR RI
JB TEST,SEND
MOV A,SBUF
SWAP A
SETB TEST
RETI
SEND:MOV B,SBUF
ADD A,B
MOV P0,A
LCALL DY2MS
mov sbuf,A
jnb ti,$
clr ti
CLR TEST
RETI
;$$$$$$$$$$$$$$$$$$$$$ Delays
DY2MS:
MOV R7,#01
LOOP0:MOV R6,#00
DJNZ R6,$
DJNZ R7,LOOP0
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -