如何实现两片单片机通信?急需!!!
哪位大哥能实现两片单片机通信,提个方案?小弟在此感谢啦!
全部回复(12)
正序查看
倒序查看
现在还没有回复呢,说说你的想法
@taishan2
师兄你有汇编串行通信程序吗?能否给我一份,谢谢!ZHANGJIAN-WYZ@163.COM
;使用定时器1做波特率发生器,晶振为11.0592M,波特率115200.
ORG 0
JMP ZC
ORG 23H ;串行中断
JMP CHZD
;**************串行中断*****************
CHZD: JB RI,WAIT ;是否接收中断,是转WAIT
CLR TI
…… ;发送处理
……
JMP OUTIN
WAIT: MOV A,SBUF ;读串行口
CLR RI
…… ;处理读到的信息
……
OUTIN: RETI
;******************主程序******************
ZC: MOV TMOD,#20H ;主程序入口 定时器1方式2,8位自动重装
MOV TH1,#0FFH ;设置定时器1,串行口波特率115200 晶振为11.0592M
MOV TL1,#0FFH
MOV PCON,#80H ;置位SMOD,波特率加倍
MOV SCON,#50H ;串行口方式1,允许接收
MOV TCON,#40H ;开启定时器 或者 SETB TR1
SETB ES ;开串行中断
SETB EA ;开中断
…… ;以上为有关串行中断的设置
……
MOV SBUF,A ;向串行口送数
……
……
RET
ORG 0
JMP ZC
ORG 23H ;串行中断
JMP CHZD
;**************串行中断*****************
CHZD: JB RI,WAIT ;是否接收中断,是转WAIT
CLR TI
…… ;发送处理
……
JMP OUTIN
WAIT: MOV A,SBUF ;读串行口
CLR RI
…… ;处理读到的信息
……
OUTIN: RETI
;******************主程序******************
ZC: MOV TMOD,#20H ;主程序入口 定时器1方式2,8位自动重装
MOV TH1,#0FFH ;设置定时器1,串行口波特率115200 晶振为11.0592M
MOV TL1,#0FFH
MOV PCON,#80H ;置位SMOD,波特率加倍
MOV SCON,#50H ;串行口方式1,允许接收
MOV TCON,#40H ;开启定时器 或者 SETB TR1
SETB ES ;开串行中断
SETB EA ;开中断
…… ;以上为有关串行中断的设置
……
MOV SBUF,A ;向串行口送数
……
……
RET
0
回复
提示
@njyd
;使用定时器1做波特率发生器,晶振为11.0592M,波特率115200. ORG0 JMPZC ORG23H ;串行中断 JMPCHZD;**************串行中断*****************CHZD: JBRI,WAIT ;是否接收中断,是转WAIT CLRTI …… ;发送处理 …… JMPOUTINWAIT: MOVA,SBUF ;读串行口 CLRRI …… ;处理读到的信息 ……OUTIN: RETI;******************主程序******************ZC: MOVTMOD,#20H ;主程序入口定时器1方式2,8位自动重装 MOV TH1,#0FFH ;设置定时器1,串行口波特率115200 晶振为11.0592M MOV TL1,#0FFH MOV PCON,#80H ;置位SMOD,波特率加倍 MOV SCON,#50H ;串行口方式1,允许接收 MOVTCON,#40H ;开启定时器或者SETBTR1 SETB ES ;开串行中断 SETBEA ;开中断 …… ;以上为有关串行中断的设置 …… MOVSBUF,A ;向串行口送数 …… …… RET
大侠,谢了!
0
回复
提示