1 / 21
文档名称:

51单片机多机通信过程.doc

格式:doc   页数:21页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

51单片机多机通信过程.doc

上传人:endfrs 2015/12/9 文件大小:0 KB

下载得到文件列表

51单片机多机通信过程.doc

相关文档

文档介绍

文档介绍:51单片机多机通信过程
51单片机具有多机通信的功能,可实现一台主机于多台从机的通信。
多机通信充分利用了单片机内部的多机通信控制位SM2。当从机SM2=1时,从机只接收主机发出的
地址帧(第九位为1),对数据帧(第九位为0)不予理睬;而当SM2=0时,可接收主机发送过来的所有信息。
多机通信的过程如下:
(1)所有从机SM2均置1,处于只接收地址帧状态。
       (2)主机先发送一个地址帧,其中前8位数据表示地址,第9位为1表示该帧为地址帧。
       (3)所有从机接收到地址帧后,进行中断处理,把接收到的地址与自身地址相比较。地址相符时将SM2清成0,脱离多机状态,地址不相符的从机不作任何处理,即保持SM2=1。
       (4)地址相符的从机SM2=0,可以接收到主机随后发来的信息,即主机发送的所有信息。收到信息TB8=0,则表示是数据帧,而对于地址不符的从机SM2=1,收到信息TB8=0,则不予理睬,这样就实现了主机与地址相符的从机之间的双机通信。
       (5)被寻址的从机通信结束后置SM2=1,恢复多机通信系统原有的状态。
主机:
设置为SM2=0。
这是双机通信的形式,可以任意的发送和接收
发送:
以TB8=1发送,将发送到所有SM2=1的分机。这是呼叫某个从机。
以TB8=0发送,将发送到SM2=0的分机。这是双机通信的形式。
------
从机:
先设置为SM2=1。
这是多机通信的形式,只能收到RB8=1的。
接收:
仅能收到RB8=1的数据,确认是呼叫本机时,令SM2=0。
设置为SM2=0后,是双机通信的形式。追问那从机的RB8要怎么设,是需要软件设置还是单片机自己识别?在编程的时候要怎么写? 回答从机的RB8,不需要编程。
从机的RB8,是接收到的,它是主机发送出来的TB8。
想要对TB8进行控制,需要在主机中编程。
单片机多机通讯
说明:该程序为多机通讯程序,最多可以挂255个从机。
该程序主机发送端与多个从机的接收端相接,主机的接收端与多个从机的发送端相接。
该程序主要的目的为给从机发送作为命令的数据。
该程序调试成功,从机可正确接收。
//=====================================================================
// 多机通讯主机程序
//
//writer:谷雨 2008年3月22日于EDA实验室
//注:主机先发送地址,接收到应答后,再发送数据
//=====================================================================
#include
#define unit unsigned int
#define uchar unsigned char
#define addr1 0x31 //从机1地址
#define addr2 0x32 //从机2地址
void Uart_Init(void)
{
TMOD=0x20; //定时器T1使用工作方式2
TH1=250;
TH0=250;
TR1=1; //开始计时
PCON=0x80; //SMOD=1;
SCON=0xd0; //工作方式3,9位数据位,波特率9600bit/s,允许接收
TI=1;
RI=1;
}
uchar Receive(void) //接收数据程序
{
uchar Data;
while(!RI); //等待接受完毕
Data=SBUF; //接收数据
RI=0;
return Data;
}
void send_addr(uchar addr) //发送地址
{
uchar tem;
while(addr!=tem) //如果发送的地址与从机应答的地址不一样,则一直发送地址
{
while(!TI); //等待发送完毕
TI=0; //软件复位TI
TB8=1; //发送地址帧
SBUF=addr; //发送地址
tem=Receive();
}
}
void send_data(uchar ddata) //发送数据,但此处由于与从机的协议,禁止发送0xff
{
while(!TI); //等待发送完毕
TI=0; //软件复位TI
TB8=0; //发送数据帧
SBUF=ddata; //发送数据
while(!TI);
}
void main()
{
Uart_Init();
send_addr(a

最近更新

二零二五年度班组施工设备租赁合同范本 15页

二零二五年度生态旅游项目承包经营合同范本 17页

跨学科教学促进学生批判性和创造性思维 8页

二零二五年度矿山开采权及加工设备转让合同样.. 15页

医药生物领域专利申请需要注意的几个问题专家.. 84页

二零二五年度能源管理SaaS解决方案合同 16页

2024年湖南省益阳市单招职业适应性考试题库最.. 55页

胸部的体格检查ppt 98页

低空经济在教育行业中的应用潜力 7页

微整形开运美容 32页

基于锥形束CT的上颌窦底形态及骨分隔研究 8页

期末测评卷(试题)-2023-2024学年六年级下册.. 5页

进矿路施工技术方案 6页

(新版)导游资格证考试题库及完整答案1套 28页

2024年河北美术学院单招职业倾向性考试题库推.. 56页

2024年河南测绘职业学院单招职业技能测试必刷.. 57页

2024年泉州工艺美术职业学院单招职业技能考试.. 55页

2024年浙江万里学院单招职业适应性测试题库最.. 43页

2025年一级注册建筑师之建筑材料与构造题库含.. 132页

2025年一级注册建筑师之建筑设计考试题库附答.. 135页

2025年全国保密教育线上培训考试试题库及参考.. 7页

2025年全国保密教育线上培训考试题库含完整答.. 5页

2025年教师资格之中学教育知识与能力考试题库.. 136页

2025年三八女神节全动态PPT模板 20页

2025年证券从业之金融市场基础知识题库500道附.. 141页

2025年会团队协作挑战类游戏动态PPT视觉方案 26页

长白山地区人参精油成分特征及其对延缓皮肤光.. 9页

2025年制造业生产部门年度安全绩效述职总结PP.. 25页

问题解决视角下高中生计算思维现状及培养对策.. 6页

2025年国画技法融入课堂的水墨教学课件设计思.. 30页