📄 80c196通讯.asm
字号:
;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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -