资料介绍
单片机资料
利用方式1实现单片机双机通信,主频为6M,波特率为2400bps,电路见图5-
10。当两个单片机距离较近时,甲、乙两机的发送端与接收端分别直接相联,两机共地
。执行程序,甲机将亮灯信号发送给乙机,若通信正常,乙机接收到信号后点亮20个发
光二极管。乙机采用查询与中断两种工作方式。当然20个LED乙机可单独控制,也可接受
甲机的控制,并执行甲机指令,还需要进一步完善程序.
甲机发送程序:
org 0000h
sta: mov tmod,#20h ;设置波特率
mov tl1,#0FAh
mov th1,#0FAh
setb tr1
mov scon,#40h ;置工作方式1
clr ti
mov a,#00h
mov sbuf,a ;发送亮灯信号
wait: jbc ti,cont ;发送成功清标志
ajmp wait ;等待发送完毕
cont: sjmp sta ;重复发送
end
乙机查询工作方式接收:
org 0000h
mov tmod,#20h ;设置通信波特率
mov tl1,#0FAh
mov th1,#0FAh
setb tr1
mov scon,#40h
clr ri
setb ren ;允许接收
wait: jbc ri,read ;接收成功清标志
ajmp wait ;接收未完等待
read: mov a ,sbuf
mov p1,a ;接收亮灯信号送P1口
sjmp $
end
乙机中断工作方式接收
org 0000h
ajmp main
org 0023h
ajmp zd ;转串口中断程序
START: MOV TMOD,#20h
mov tl1,#0FAh
mov th1,#0FAh
setb tr1
mov scon,#50h
clr ri
mov ie,#90h ;开中断
MAIN:sjmp $ 主程序
zd: clr ri ;清