- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
案例 空调预置温度显示(液晶)案例
由于微机技术的飞速发展和控制系统的复杂化,多机通信的应用越来越广泛,特别在一些对工业过程的控制中,多机通信已经成为通信控制领域的主流通信方式[1]。本文针对目前单片机书籍(包括教材)很少介绍多机通信的实现技术,在交通灯控制系统的基础上设计了一个交通灯控制网络系统,以此为实例给出了单片机多机通信的解决方案。
1.单片机多机通信的基本原理
计算机之间的通信除了点对点通信外,还有一机对多机或多机之间的通信,构成计算机网络,其中主从式多机通信是比较常用的一种方式。在主从式多机通信系统中,只有一台主机,但可以有多台从机。主机发送的信息可以传送到各个从机或指定从机,从机发送的信息只能为主机所接收,各从机之间不能直接通信。主机通常由PC机担任,也可用单片机担当(本文研究的是用单片机作主机),从机通常为单片机。MCS-51单片机串行口的方式2和方式3具有多机通信功能,可实现一台主机和若干台从机构成总线式的多机分布式系统,其连接方式如图1所示[2]。
TXD RXD8051从机n#TXD
TXD RXD
8051
从机n#
TXD
RXD
8051
主机
TXD RXD
8051
从机0#
TXD RXD
8051
从机1#
… …
在多机通信中,可充分利用MCS-51单片机的多机通信控制位SM2。作主机的单片机的SM2应设定为0,作从机的SM2设定为1。主机发送并为从机接收的数据有两类:一类是地址,用于指示需要和主机通信的从机的地址,由串行数据第9位为“1”标志;另一类是数据,由串行数据第9位为“0”标志。由于所有从机的SM2=1,故每个从机总能在RI=0时收到主机发来的地址(因为串行数据第9位为“1”),并进入各自的中断服务程序。在中断服务程序中,每台从机把接收到的从机地址和它的本机地址(系统设计时分配)进行比较。所有比较不相等的从机均从各自的中断服务程序中退出(SM2仍为1),只有比较地址相等的从机才是被主机寻址通信的从机。被寻址从机在程序中使SM2=0,以便接收随之而来的数据或命令(RB8=0)。上述过程进一步归结如下:
(1)主机的SM2=0,所有从机的SM2=1,都处于监听状态(只能接收地址帧),以便接收主机发来的地址。
(2)主机给从机发送一帧地址信息时,其中的8位是地址,第9位为1表示是地址帧。
(3)所有从机在SM2=1、RB8=1且RI=0时,接收到主机发来的从机地址帧后,进行中断处理,进入相应的中断服务程序,并和本机地址进行比较以确认是否为被寻址从机。
(4)被寻址的从机通过指令清除SM2,使SM2=0进入接收数据状态,可以接受主机随后发送的数据(包括命令),并向主机发回接收到的从机地址作为响应信号,供主机核对,实现主机与被寻址从机的双机通信;未被寻址从机保持SM2=1,并退出中断服务程序。
(5)完成主机和被寻址的从机之间的数据通信,被寻址从机在通信完成后重新使SM2=1,并退出中断服务程序,恢复到监听状态,等待下次通信。
2.交通灯控制网络硬件电路设计
2.1 硬件电路
城市交通控制系统是一个联动的系统,所有路口的交通灯控制系统由一台中心主机控制,当某一路口将出现紧急情况时(如交通管制、交通堵塞、路段维修等),单击中心主机的对应按钮即可使该路口的所有红灯亮,禁止所有普通车辆通行。本文利用Proteus软件仿真设计了一台主机控制两台从机的主从式多机系统,实施时可以扩展到253台主机,硬件电路如图2所示。单片机U1为主机,U2、U3为从机,代表两个路口的控制机,S1、S2为按钮,分别与U1的P1.1、P1.0连接,当按下时分别控制两个路口的交通信号灯为所有红灯亮,表示该路口出现紧急情况。与主机U1相连的两个BCD码数码管用于显示从机接收到的响应帧,即出现紧急情况的路口地址号,如果接收到的响应帧传送出现错误,与主机发出的地址号不同时,这两个数码管显示FF,当S1和S2没有按下时,这两个数码管也显示FF。
由于串行口通信时传输的“0”或者“1”是通过相对于“地”的电压区分的,因此使用串行口通信时,必须将主、从机的“地”线相连以使其具有相同的电压参考点[3]
图2 交通灯控制网络仿真设计电路图
2.2 通信协议
多机通信是一个复杂的通信过程,必须有通信协议来保证多机通信的可操作性和操作秩序,实现收/发双方的响应与协调。这些通信协议,至少应包括从机的地址、主机的控制命令、从机的响应帧格式和数据通信格式等的约定,本文建立交通灯控制网络系统的通信协议如表1所示。
表1 通信协议
数据类型
数据
数据传送方向
数据含义
第9位数据(TB8)
地址帧
01H~0FDH
主机→从机
将某一路口要出现紧急情况时,先由主机发给从机一地址帧呼叫从机,其值代表被呼叫的从机地址号。
1
您可能关注的文档
- 大数据技术应用(国家) 技能点1:使用HBase常用Shell命令 使用HBase常用Shell命令-实训指导.docx
- 大数据技术应用(国家) 技能点3 MongoDB的集合操作 文档数据库MongoDB创建、删除集合.docx
- 大数据可视化技术-资源 recharts-动态地图 recharts -动态地图-实训指导.docx
- 大数据平台构建(国家) 大数据平台构建(国家) HBase Web管理工具使用.docx
- 电工技术与应用 试题库 《电工技术与应用》选择题库.doc
- 电机与电气控制技术 3.1.2操作方法 钳形表的使用方法.doc
- 建筑业劳资员岗位职责.docx
- 安全健康环境规划、目标和主要保证措施.docx
- 学年度第二学期小学《道德与法治》教学计划.docx
- 闽教版小学六年级上册英语教学计划.docx
文档评论(0)