单片机学习小组
直播中

jefljel

8年用户 1106经验值
擅长:20762
私信 关注

RS-232串口通信具有哪些特征?

RS-232串口通信具有哪些特征?

回帖(1)

刘玉珍

2022-2-16 11:54:42
  博主在做一些项目的时候,用到一些模块,经常会是485的接口,而且485也是工业上常用的通信方式,在工业应用中建立连向PC机的分布式设备网络、其他数据收集控制器、HMI或者其他操作时,串行连接会选择RS-485。所以博主感觉有必要介绍一下485通信。
  
  我们知道串口通信的数据传输都是0和1,但是在单总线、I2C、UART中都是通过一根线的高低电平来判断逻辑1或者逻辑0,但这种信号线的GND再与其他设备形成供地模式的通信,这种共地模式传输容易产生干扰,并且抗干扰性能也比较弱。所以差分通信支持多机通信抗干扰强的RS485就被广泛的使用了。
  
    
理论篇
  
在485之前工业上有种常用的通信方式就是RS232,其特征如下:
1)RS-232串口通信最远距离是50英尺;
2)RS232可做到双向传输,全双工通讯,最高传输速率20kbps
3)RS-232C上传送的数字量采用负逻辑,且与地对称 逻辑1:-3 ~-15V 逻辑0:+3~+15V
但是由于其抗干扰能力差、电压较高,与其他电路连接不方便、通信距离短、不支持多机通信,随之而来485就慢慢应用来了

1 差分通信:我们知道如果在一根线上像传输数据就是高低电平代表0和1进行传输,差分通信就是用两个线的正负压差来代表0和1进行数据传输。以两线之间的压差为+(0.2-6)V来表示逻辑1,以两线之间的压差为-(0.2-6)V来表示逻辑0,其设计可以有效的抑制共模干扰,在工业上干扰较强的复杂环境中又较广泛的用途。所以,485通信肯定时半双工的了。
2 RS485通信最大的传输速度可以达到10Mb/s以上,传输距离可以达到1200米左右。(但是速度和距离是成反比的,10 米时, RS485 的数据最高传输速率可达 35Mbps,在 1200m 时,传输速度可达 100Kbps。)
      
  &e  msp;    MAX485典型应用电路原理图
  MAX485 是美信(Maxim)推出的一款常用 RS485 转换器。这里1、4、5、6、7、8接线就不赘述了,主要介绍一下方向引脚2、3引脚。2 脚和 3 脚是方向引脚,其中 2 脚是低电平使能接收器,3 脚是高电平使能输出驱动器,我们把这两个引脚连到一起,平时不发送数据的时候,保持这两个引脚是低电平,让 MAX485 处于接收状态,当需要发送数据的时候,把这个引脚拉高,发送数据,发送完毕后再拉低这个引脚就可以了。为了提高 RS485 的抗干扰能力,需要在靠近 MAX485 的 A 和 B 引脚之间并接一个电阻,这个电阻阻值从 100欧到 1K 都是可以。
  
  但是,我们实际使用收发时要专门用一个IO口来控制方向2、3引脚,这样就会很不方便有没有!!!所以一般电路中我们都是使用自收发电路
(自动收发电路,就是不用单片机引脚CTRL,当数据进来的时候,数据会自动通过RXD到单片机,当需要发送数据时,自动通过TXD发送出去。也就是只需要连接单片机的RXD和TXD引脚就可以,无需用单片机引脚连接485芯片的DE RE引脚。)
        
      典型的自收发的485通信电路
接收:默认没有数据时,TX为高电平,三极管导通,RE为低电平使能,RO收数据有效,MAX485为接收态。
发送:发送数据时,TX会先有一个下拉的电平(起始位-由高向低),表示开始发送数据,此时三极管截止,DE为高电平发送使能。当发送数据“0”时,由于DI接口相当于接地,此时数据“0”就会传输到AB扣,A-B<0,则传输“0”,完成低电平传输,当发送“1”时,此时三极管导通,按理说RO会使能,此时由于还处于发送数据中,这种状态下MAX485处于高阻太,此时的状态通过A上来,B下拉电阻决定,此时A-B>0传输“1”,完成高电平的传输。
    
实战篇
  
  实战部分博主想补充一下工业中485通信经常采用Modbus协议。这里简单的介绍一下。
多机通信:首先485通信可以进行联网实现多机通信,总线上允许挂多个收发器,从现有的RS485芯片来看,有可以挂32、64、128、256等不同个设备的驱动器。
Modbus协议特点:Modbus协议是应用于电子控制器上的一种通用协议。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其他设备之间可以通信,已经成为一种工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。这种协议定义了一种控制器能够认识使用的数据结构,而不管它们是经过何种网络进行通信的。它描述了控制器请求访问其他设备的过程,如何回应来自其他设备的请求,以及怎样侦测错误记录,它制定了通信数据的格局和内容的公共格式。
  在进行多机通信的时候,Modbus协议规定每个控制器必须要知道他们的设备地址,识别按照地址发送过来的数据,决定是否要产生动作,产生何种动作,如果要回应,控制器将生成的反馈信息用Modbus协议发出。

图片来自水印
Modbus有下列三种通信方式


  • 以太网,对应的通信模式是MODBUS TCP
  • 异步串行传输(各种介质如有线RS-232-/422/485/;光纤、无线等),对应的通信模式是MODBUS RTUMODBUS ASCII
  • 高速令牌传递网络,对应的通信模式是Modbus PLUS

  
举报

更多回帖

发帖
×
20
完善资料,
赚取积分