下面一段主程序和中断服务程序,是利用串行方式l从数据00H开始连续不断增大地串行发送一片数据的程序例。设单片机晶振的频率为6MHZ,波特率为1200位/秒。
ORG 2000H
;1200位/秒的定时器初值
MOV TL1,#0F3H
MOV TH1,#0F3H
;使SMOD=0
MOV PCON,#00H
;T1方式2
MOV TMOD,#20H
SETB EA
CLR ET1
;关闭T1中断
SETB ES
;开串行中断
SETB TR1
;开T1定时
MOV SCON,#40H
;串行方式1
CLR A
MOV SBUF,A
;串行发送
JNB T1,$
;等待发送完
CLR T1,
;清标志
SJMP $
ORG 0023H
;串行中断入口地址
MOV SBUF,A
;连续发送
JNB T1,$
INC A
CLR T1
RET1
;中断返回 |