PC与MCU 485多机通讯的实现.pdf

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PC 与 MCU 485 多机通讯的实现    [摘要]本文介绍一种能利用 RS-485 电气特性和简单的结构方式,采用自定义串行通信 协议,实现单片机 RS-485 多机通讯的方法和技巧以及在宿迁市技工学校控电系统中的应用 。   [关键词]控电系统 单片机 RS-485 总线 串行通信   一、简介   RS-485 串行总线接口的传输信号方式为差分平衡方式,抗共模干扰的能力很强,允许一 对双绞线上一个发送器驱动多个负载设备。 工业 现场控制系统中一般都采用该总线标准 进行数据传输,而且一般采用 RS-485 串行总线接口标准的系统都使用 MAX485 芯片作为 通信控制器或各分机的 CPU。MAX485 芯片的结构和引脚都非常简单,内部含有一个驱动 器和接收器。RO 和 DI 端分别为接收器的输出和驱动器的输入端,与单片机连接时只需分别 与单片机的 RXD 和 TXD 相连即可;/RE 和 DE 端分别为接收和发送的使能端,当/RE 为逻辑 0 时,器件处于接收状态;当 DE 为逻辑 1 时,器件处于发送状态,因为 MAX485 工作在半双工 状态 ,所以只需用单片机的一个管脚控制这两个引脚即可;A 端和 B 端分别为接收和发送的 差分信号端,当 A 引脚的电平高于 B 时,代表发送的数据为 1;当 A 的电平低于 B 端时,代表 发送的数据为 0。在与单片机连接时接线非常简单。只需要一个信号控制 MAX485 的接收 和发送即可。利用单片机本身所提供的简单串行接口,加上总线驱动器如 MAX485 等组合 成简单的 RS-485 通讯 网络 。本文所述的方法已成功地应用于宿迁技校控电系统,一台主 机与 25 台从机通讯,通讯波特率达 64KBPS。   二、RS-485 方式构成的多机通信原理   在由单片机构成的多机串行通信系统中,一般采用主从式结构:从机不主动发送命令或 数据,一切都由主机控制。并且在一个多机通信系统中,只有一台单机作为主机,各台从机之 间不能相互通讯,即使有信息交换也必须通过主机转发。    在总线末端接一个匹配电阻,吸收总线上的反射信号,保证正常传输信号干净、无毛刺 。匹配电阻的取值应该与总线的特性阻抗相当。   当总线上没有信号传输时,总线处于悬浮状态 ,容易受干扰信号的影响。将总线上差分 信号的正端 A+和+5 电源间接一个 10K 的电阻;正端 A+和负端 B-间接一个 10K 的 电阻;负端 B-和地间接一个 10K 的电阻,形成一个电阻网络。当总线上没有信号传输时, 正端 A+的电平大约为 3.2V,负端 B-的电平大约为 1.6V,即使有干扰信号,却很难产生 串行通信的起始信号 0,从而增加了总线抗干扰的能力。   三、通信规则   由于 RS-485 通讯是一种半双工通讯,发送和接收共用同一物理信道。在任意时刻只允 许一台单机处于发送状态。因此要求应答的单机必须在侦听到总线上呼叫信号已经发送完 毕,并且没有其它单机发出应答信号的情况下,才能应答。半双工通讯对主机和从机的发送 和接收时序有严格的要求。如果在时序上配合不好,就会发生总线冲突,使整个系统的通讯 瘫痪,无法正常工作。要做到总线上的设备在时序上的严格配合,必须要遵从以下几项原则:   1.复位时,主从机都应该处于接收状态   SN75176 芯片的发送和接收功能转换是由芯片的 RE*,DE 端控制的。 RE*=1,DE=1 时,SN75176 发送状态;RE*=0,DE=0 时,SN75176 处于接收状态。一般使 用单片机的一根口线连接 RE*,DE 端。在上电复位时,由于硬件电路稳定需要一定的时间 ,并且单片机各端口复位后处于高电平状态,这样就会使总线上各个分机处于发送状态,加上 上电时各电路的不稳定,可能向总线发送信息。因此,如果用一根口线作发送和接收控制信 号,应该将口线反向后接入 SN75176 的控制端,使上电时 SN75176 处于接收状态。   另外,在主从机软件上也应附加若干处理措施,如:上电时或正式通讯之前,对串行口做几 次空操作,清除端口的非法数据和命令。   2.控制端 RE*,DE 的信号的有效脉宽应该大于发送或接收一帧信号的宽度。   在 RS-232,RS-422 等全双工通讯过程中,发送和接收信号分别在不同的物理链路上传 输,发送端始终为发送端,接收端始终为接收端,不存在发送、接收控制信号切换问题。在 RS-485 半双工通讯中,由于 SN75176 的发送和接收都由同一器件完成,并且发送和接收使 用同一物理链路,必须对控制信号进行切换。

文档评论(0)

qicaiyan + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档