- 1、本文档共46页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机多机通信系统设计
引 言
单片机自诞生以来,以其体积小、面向控制、高性价比等优点,在工业领域扮演着重要角色。在实际应用中,经常需要多个单片机之间协调工作,既多机通信。MCS-51系列单片机的串行口工作模式2和模式3可实现多机通信。
在多机通信领域中,由于单片机具有灵活高效的多机通信功能和价格优势,应用越来越广泛,但由于单片机的收发信号都是TTL电平,驱动能力和抗扰能力有限,实用中常配合其它总线互联,RS-485总线就是其中之一。RS-485采用平衡发送和差分接收来实现通信,具有极强的抗共模干扰能力,接收灵敏度也相当高。同时,最大传输速率和最大传输距离也大大提高。另外RS-485实现了多点互联,最多可达256台驱动器和256台接收器,非常便于多器件的连接。
在多机通信中,最重要的是保证通信有条不紊的进行,因此不仅需要完整的电路设计,还需要有严格的通信协议和完善的通信软件。本设计主要介绍基于RS-485总线的8051单片机构成的多机通信系统,重点介绍了其通信协议、电路连接和通信软件的设计方法。
第一章 单片机多机通信的概述
目前,在通信领域里,一对一的通信方式已经远远不能满足人们设计的需要,多机通信已经成为通信控制领域的主流通信形式。单片机多机通信是指由两台以上单片机组成的网络结构,可以通过串行通信方式共同实现对某一过程的最终控制,目前,单片机多机通信的形式较多,但通常可分为星型、环型、串行总线型和主从式多机型四种。本设计采用的就是主从式多机型,它是一种分散形网络结构,具有接口简单和使用灵活等优点。如图1-1为主从式8051单片机多机通信示意图。
图1-1 主从式多机通信系统结构图
1.1 多机通信的基本原理
在多机通信中,每台从机均分配有一个从机地址,主机与从机之间进行串行通信时,通常是主机先呼叫某从机地址,唤醒被叫从机后,主、从两机之间进行数据交换。而未被呼叫的从机则继续进行各自的工作。可是,如果在主机与某被呼叫从机进行数据交换过程中,其它从机如果不采取相应的数据识别技术,则这些从机就会因为串行通信线上有数据传输而时时被打断,影响正常的工作。利用单片机的串口工作方式2、方式3可以很好的解决上述问题。在多机通信过程中,从机首先要解决的是如何识别主机发送的是地址信息还是数据信息。当发送的是地址信息时,各从机都响应串口中断,接收主机下发的一帧地址数据。而当主机发送数据帧时,无关从机可不响应串口中断。解决的方法是:当主机发送一帧地址信息时,应保持这帧数据的第9位为1。从机按照工作方式2或工作方式3运行时,将串行口控制寄存器SCON中的控制位SM2置为1,当所接收的一帧数据的第9位为1,所有从机都产生串口中断,接收这一帧地址数据并与各自的从机地址进行比较,以判断主机是否要与本机通讯。接收到的地址数据与从机地址相等的为被呼叫从机,该从机将串行口控制寄存器SCON中的控制位SM2清为0,去接收主机发来的数据帧(数据帧的第9位为0),此时不管接收到的第9位数据是否为1或0,都要产生串口中断,这就保证了主机与被叫从机间的正常数据通讯。数据通讯结束后,该从机又重新将串行口控制寄存器SCON中的控制位SM2置为1,为下一次与主机进行通讯作好准备。其它从机则一直在SM2=1下继续自己的工作,不会因为主、从机之间的数据通讯而被打断。
多机通信的实现,主要靠主、从机正确地设置与判断多机通信控制位SM2和发送或接收的第9位数据(TB8或RB8)。当主机给从机发送信息时,要根据发送信息的性质来设置TB8,发送地址信号时,设置TB8=1;发送数据或命令时,设置TB8=0。当从机的SM2为1时,该从机只接收地址帧(RB8位为1),对数据帧(RB8位为0)将不予理睬。而当SM2为0时,该从机接收所有发来的信息。多机通信过程概述如下。
1.令所有从机的SM2位置1,使它们处于只接收地址帧的状态(即从机复位);
2.主机发送一帧地址信息,其中包括8位地址,第9位(即TB8)为1,以表示发送的是地址;
3.从机接收到地址帧后,各自中断CPU,把接收到的地址与其本机地址作比较;
4.地址相符的从机清除其SM2标志,准备接收主机发来的数据/命令;地址不符的从机仍维持SM2=1不变,对主机发来的数据帧不予理睬,直到主机发来新的地址帧;
5.主机发送数据或控制信息(第9位为0)给被寻址的从机;
6.被寻址的从机,因SM2=0,可以接收主机发送过来的所有数据,当从机接收数据结束时,置位SM2,返回接收地址帧状态(复位状态);
7.当主机需改为与其它从机通信时,可再发出地址帧来呼叫其它从机。
1.2 串行总线标准简介
由单片机构成的总线形主从式结构的多机通信系统中,只有一个是主机,其余是从机,主机发送的信息可被各从机接收,而各从机发送的
文档评论(0)