微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 单片机串口通信之(多处理通信的接收程序)

单片机串口通信之(多处理通信的接收程序)

时间:11-18 来源:互联网 点击:
;多处理器通信的写法分析

;学习多处理通信的接收程序

ADDREQU27H
STOPEQU00H
;
ORG0000H
RESTE:MOVR0,#00H
L0:DJNZR0,L0
;
START:LCALLINIT_SIO;跳转到中断初始化程序中去
CLR RI;中断请求位清零
SETBSM2;多机通信位置1 ,开始接收地址值

WAIT:JNBRI,WAIT
MOVA,SBUF
CLRRI
CJNEA,#ADDR,WAIT ;查看接收到的地址是否于自己相同,不行同则据需等待
CLRSM2 ;多机通信位置0,开始接收数据值

DWAIT:JNBRI,DWAIT
MOVA,SBUF
CLRRI
SETBSM2;重新置SM2为1,重新开始接收地址值
CJNEA,#STOP,WAIT;当接收到的地址值为STOP时,结束
SJMPSTART ;程序结束后从新从开始进行运行

INIT_SIO:
MOVTMOD,#00100000B;设置定时器1工作在工作方式2(串行口工作方式)
MOVTH1,#0FDH ;波特率设置为9600b/s
MOVTL1,#0FDH
SETBTR1 ;打开串行口中断
MOVSCON,#11010000B ;设置串行模式设置寄存器工作在模式3,并且打开允许接收位

RET

END

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top