一个参考程序
org 0
jmp main
..............
org 40h
main: . ;初始化程序段
.
. ;设置串口模式1,9600bps
.
setb ren ;允许接收
.
mov r0,#xxh ;r0指向数据缓冲区首地址
.
loop: mov a,@r0
anl a,#0fh ;屏蔽高四位(ASCII-BCD)
mov dptr,#font
mov a,@a+dptr
mov p1,a
inc r0
mov a,@r0
anl a,#0fh
mov a,@a+dptr
mov p2,a
mov r0,#xxh
.
.
.
;serial port sink
sin: jnb ri,$
clr ri
mov a,sbuf ;收到一个字节
xrl a,#"<"
jz next
mov r0,#xxh ;不是约定的字符返回
jmp loop
next:
jnb ri,$
clr ri
mov a,sbuf
xrl a,#">"
jnz next3
mov r0,#xxh
jmp loop ;
next3: mov @r0,a
inc r0
jmp next
font: db LED0,LED1, 。。。,LED9 ;定义LED显示字形编码
你可以根据需要设置串口中断方式接收
发表时间:2003年1月24日13:58:00