您的位置 首页 五金机械加工

单片机多机通信

单片机多机通信

∝摘要:文章分-析?了?MCS-51系列单片机利用串行口进行多机通信的?基?本原理,对利?用单片机多机通信方式实现≡交通控制系统的网络?控制⊿进行了研?究,设计了硬件电路图及≠主、?从机?程序,并在Pro◎teus软件上进行了仿真??运行。
关键¥㏄词:?单片机;∟多机通信交通℡2灯系统;控制?网络

由于微机技术的飞速?发展和?控制系统的复㎝杂化?,多机通信的应用越£来越广泛,特?别在一些对工业过程的控制?中,多机通信已经成?为通信控制领?域的主流通信﹢方式×。
本文针对目前单片机书籍?(包括教材)?很少介绍㏒多机通信的实现技?术的情况,在交通?灯控制系统的基≯础上设计了一mol个交通灯控制网络系统,?以此为实例≥给?出?了单片机多机通?信的解决方案。?
?
1 单片机多机通信的基本原理?
计算机之㎎间的通信除了点对点通信﹥外,还有一机对多机或多机之间的通信,构成计算机网络,其中主从式多£机通信是比较常用的一⊙种方?式。在主从式多机通信﹤系统中,只有一台主机,但可以√有多台从机。?主机?发 ?送的信息可以传送到各个从机或指定∩从机,从机发送的信息只能﹣为主机所接收,各从机之间+不能直接通信。主机?通常由?PC机担任,也可用单片机担当(本文研究的是用?单片机作主机),从机通常为单片机。 $MC∑S-51单片机串行?口的方式2和方式3具有多机通信功能,可实现一台主机和若干台从机构成总线式的多机分布∪式系统,其?连接方式℃如图1所示。

本文引用地址≌:http://www.eepw.com.cn/?articl?e/172884>.htm

单片机多机通信 在多机通信中,?可充分利≧用MCS-51单?片″机的多机通信控°制位SM2。㎞用作主机的单片机的SM2应设定为0,·作从机的SM??2设定为1。主机发送并为从机接收1的数据有两类:一类是地址,用于指示需要和主?机通信的从机的地址?,?由串行数?据%第9位为&l?d?quo¤;1&rdq′uo?;标志?;另一?类是数据,由串〒行数据第9位为&?ldquo;0&rdq∵uo;标志∥。由于所有从机的SM2=1,故每个从机总能在RI=0时收到主机发来㎏的地址(因为串♀行数据第9位为&ldqu?o;1&≦r?dquo;),并进入各自的中断服务程序。在中断服务程?序中,每台从机把接收到的从机地址和它?的本机地址(系统设计时分配??)进行比较。所有≤比较?不相等?的?从≈机均从各自的中断服务程序中退出?(SM2仍为1),只有比较地址相等的从机才是被主机寻?址通信的从机。被♂寻址从机在程序中使SM㏑2=0,以便接收×随之而来的%数据o或命令(RB8=0)。上述过程进一步归结如下:
(*1)主?机∶的SM2=0℉,所有从机的SM2=1,都处于监听状态(只能接收地址帧),以便接收主机发来的地址。
(2)主机给从机发送一帧地址信息时,其中的8位是地?址,第9位为1表示是?地㏕址帧。
(3)所有从机在SM‰2=1?、?RB8=1且RI=?0时,接收?到主机发?来的从机地址帧后,进行中断处理,进入相应的中断服务程序,并和本机地址进行比较以确认是﹣否为被寻址从机。
(4)被寻址的从机通m过指令清除mlSM2,使SM2=0进入接收数据状态,可以接收主/机随后?发送的数据(包括命令∷),?并向主机发回接收到的从机地∠址作为响应信号,供主?机?核对,实现主机与被寻§址从机的双机∈通信;未被寻址从机保¬持SM2=1,?并退出中断服务?程序。
﹢(5)完成主机和被?寻址‖从机之间@的数据∫通信,被寻址从机在通信完成后重新使SM2=1,并退?出中断⊥服务程序,恢复到监听状态,等待下次通信。

2 交通灯控制网¢络硬件电路设计μ
2.1? 硬件?电路
城市交通控制系统是一个联动的系统,所有路口的交通℅灯控制系统由?一台中心主?机控?制,当?某一路口将出∞现紧急情况?时(如交通管制、交通堵塞、路段∨维修等),单击中心主机的对3应按⌒钮即可使÷该№路?口的所有红灯亮,禁止所有普通车辆通行。¥本文利用Proteu<s软件仿真设计了
一㎜台主机控制两台从∏机的主从式多机系统,实施时可以扩?展到253?台主机?,硬件电路如图?2所∷示。单片机?U1为主机,U2、U33为从机,代表两个路?口±的控制机,S1≒、S2?为按钮,分别与U1的P1.1、≮P※1m.0连接,当按下时分别控∽制两*个路口的交通信号灯为所有红灯亮,表示该路口出现紧急情况。与主机U1相连的两个BCD数码管用于显∧示从机接收到的响应帧,即出现紧急情况的路口地址号?,如果接收到的响应帧传送出现错误,与主机发出的地∮址号不同时,这两个数?码管显示FF,当?S1和S2没?有按下时,这两个数码管也显示FF。

由于串行∣口通信?时传输的&l㈱dquo;㎡0&rdquo?;或者“1&rd?quo;是通过相对于&ldqu?o;地&∴rdquo;的电压区分的,因此使用串行⊕=口通信时,必须将主?、从机的“=地”线相?连以使其具有相同的电压参考点。
关于更多单片机多机通信内容,可以收藏本网页。多特蒙德主场 基于单片机多机通信的交通灯控制网络设计

单片机多机通信单片机多机通信

关于作者: houswang

热门文章