您当前的位置:五五电子网电子知识电子学习基础知识电脑-单片机-自动控制基于AT89S51的双机串行通信的硬件连接 正文
基于AT89S51的双机串行通信的硬件连接

基于AT89S51的双机串行通信的硬件连接

点击数:7258 次   录入时间:05-09 08:46:23   整理:http://www.55dianzi.com   电脑-单片机-自动控制
  AT89S51单片机串行口的输入、输出均为TTL电平。这种以TTL电平串行传输数据的方式,抗干扰性差,传输距离短,传输速率低。为了提高串行通信的可靠性,增大串行通信的距离和提高传输速率,一般都采用标准串行接口,如RS-232、RS-422A、RS-485等来实现串行通信。
  
  根据AT89S51单片机的双机通信距离和抗干扰性的要求,可选择TTL电平传输,或选择RS-232C、RS-422A、RS-485串行接口进行串行数据传输。
  
  1.TTL电平通信接口
  
  如果两个AT89S51单片机相距在1.5 m之内,它们的串行口可直接相连。甲机的RXD与乙机的TXD端相连,乙机的RXD与甲机的TXD端相连,从而直接用TTL电平传输方法来实现双机通信。
  
  2.RS-232C双机通信接口
  
  如果双机通信距离在1.5~15 m之间时,可利用RS-232C标准接口实现点对点的双机通信,接口电路如下图所示。
  1
  上图中的芯片MAX232A是美国MAXIM(美信)公司生产的RS-232C双工发送器/接收器电路芯片。
  
  3.RS-422A双机通信接口
  
  RS-232C虽然应用很广泛,但其推出较早,有明显的缺点:传输速率低、通信距离短、接口处信号容易产生串扰等。国际上又推出了RS-422A标准。RS-422A与RS-232C的主要区别是,收发双方的信号地不再共地,RS-422A采用了平衡驱动和差分接收的方法。每个方向用于数据传输的是两条平衡导线,这相当于两个单端驱动器。输入同一个信号时,其中一个驱动器的输出永远是另一个驱动器的反相信号。于是两条线上传输的信号电平,当一个表示逻辑1时,另一条一定为逻辑0。若传输过程中,信号中混入了干扰和噪声(以共模形式出现),由于差分接收器的作用,就能识别有用信号并正确接收传输的信息,使干扰和噪声相互抵消。
  
  因此,RS-422A能在长距离、高速率下传输数据。它的最大传输率为10 Mbit/s,在此速率下,电缆允许长度为12 m,如果采用较低传输速率时,最大传输距离可达1219 m。
  
  为了增加通信距离,可以在通信线路上采用光电隔离方法,利用RS-422A标准进行双机通信的接口电路如下图所示。
  1
  在上图中,每个通道的接收端都接有3个电阻R1、R2和R3,其中R1为传输线的匹配电阻,取值范围为50 Ω~1 kΩ,其他两个电阻是为了解决第一个数据的误码而设置的匹配电阻。
  
  为了起到隔离、抗干扰的作用,上图中必须使用两组独立的电源。
  
  上图中的SN75174、SN75175是TTL电平到RS-422A电平与RS-422A电平到TTL电平的电平转换芯片。
  
  4.RS-485双机通信接口
  
  RS-422A双机通信需四芯传输线,这对工业现场的长距离通信是很不经济的,故在工业现场,通常采用双绞线传输的RS-485串行通信接口,它很容易实现多机通信。RS-485是RS-422A的变型,它与RS-422A的区别在于:RS-422A为全双工,采用两对平衡差分信号线;而RS-485为半双工,采用一对平衡差分信号线。RS-485对于多站互连是十分方便的,很容易实现多机通信。RS- 485标准允许最多并联32台驱动器和32台接收器。下图所示为RS-485双机通信接口电路。RS-485与RS-422A一样,最大传输距离约为1219 m,最大传输速率为10 Mbit/s。通信线路要采用平衡双绞线。平衡双绞线的长度与传输速率成反比,在100 kbit/s速率以下,才可能使用规定的最长电缆。只有在很短的距离下才能获得最大传输速率。一般100 m长双绞线最大传输速率仅为1 Mbit/s。
  2
  在上图中,RS-485以双向、半双工的方式来实现双机通信。在AT89S51单片机系统发送或接收数据前,应先将SN75176的发送门或接收门打开,当P1.0=1时,发送门打开,接收门关闭;当P1.0=0时,接收门打开,发送门关闭。
  
  上图中的SN75176芯片内集成了一个差分驱动器和一个差分接收器,且兼有TTL电平到RS-485电平、RS-485电平到TTL电平的转换功能。此外常用的RS-485接口芯片还有MAX485。


本文关键字:硬件  通信  电脑-单片机-自动控制电子学习 - 基础知识 - 电脑-单片机-自动控制