📄 232.asm
字号:
BUF DATA 45H
DBUF0 EQU 30H
DATA_SL DATA 37H ;定义位码变量
LED_ADDR EQU 2000H ;定义LED数码管的数据段地址
ORG 8000H
AJMP MAIN
ORG 8100H
MAIN:
MOV SP,#60H
MOV TMOD,#20H ;设置T1为方式2
MOV TH1,#0FDH ;设置波特率为9600
MOV TL1,#0FDH
SETB TR1
MOV SCON,#40H ;设置串口位方式1
MOV PCON,#00H
UPUP:
MOV R0,#30H
MOV R7,#5H ;连续接收5个数据
RRU:
SETB REN
RRUP: JBC RI,RRD ;接受一位
AJMP RRUP
RRD: MOV A,SBUF
MOV @R0,A
INC R0
DJNZ R7,RRU
MOV R0,#30H
MOV R7,#5H
UP: CLR REN
MOV A,@R0
MOV SBUF,A ;把它发送出去
NEXT: JBC TI,DOWN
AJMP NEXT
DOWN: INC R0
DJNZ R7,UP
DIP: ACALL DISPLAY
AJMP DIP
DISPLAY:
MOV R7,#05H ;给R7赋初值,存放数码管的个数
MOV R0,#30H ;把显示缓冲区首地址送R0
MOV DATA_SL,#0FEH
LOOP:
MOV A,@R0 ;取若显示的数据
ANL A,#0FH ;由于接收的数据是ASCII码,显示前先转换成BCD码
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -