RS-485

RS-485的feature:

1.采用差分信号,可以抑制共模干扰,可以有效提高通信可靠性。RS-485 采用两根通信线,通常用 A 和 B 来表示。逻辑“1”以两线之间的电压差为+(0.2~ 6)表示,逻辑“0”以两线间的电压差为-(0.2~6)V 来表示。
2.RS-485 通信速率快,最大传输速度可以达到10Mb/s以上。
3.由于 RS485 是差分通信,因此接收数据和发送数据是不能同时进行的,也就是说它是一种半双工通信。

5和8脚为电源引脚,6和7脚是RS-485通信的引脚,1和4脚分别接到28335上的RXD和TXD脚,2脚是低电平使能脚,3脚是高电平使能脚,两个引脚连到一起,平时不发送数据时,保持这两个引脚为低电平,当需要发送数据时,吧引脚拉高,发送数据,发送完毕后再拉低引脚即可。为了提高RS-485的抗干扰能力,需要在靠近AB之间并接一个电阻,阻值从100欧到1K都可。

由于RS-485芯片的特性,差分输入端VA-VB 为+(0.2~ 6),输出逻辑1,VA-VB为-(0.2~6)V,输出逻辑0;而A、B端电位差的绝对值小于0.2V时,输出为不确定。如果在总线上所有发送器被禁止时,接收器输出逻辑0,这会误认为通信帧的起始引起工作不正常。解决这个问题的办法是人为地使A端电位高于B两端电位,这样RXD的电平在485总线不发送期间(总线悬浮时)呈现唯一的高电平。通过在485电路的A、B输出端加接上拉、下拉电阻R7、R9,即可很好地解决这个问题。

所谓上拉电阻就是:将一个不确定信号(高或低电平),通过一个电阻与电源VCC相连,固定在高电平;

同理下拉电阻就是:将一个不确定信号(高或低电平),通过一个电阻与地GND相连,固定在低电平。

上拉电阻与下拉电阻的作用
1)提高输出引脚的驱动能力:
例如,当STM32的CPU引脚输出高电平,但由于后续电路的影响,输出的高电平不高,就是达不到VCC,影响电路工作。所以要接上拉电阻(其实就是增加导线的输出电流)。下拉电阻情况相反,让STM32的CPU引脚输出低电平,结果由于后续电路影响输出的低电平达不到GND(其实就是降低导线的输出电流),所以接个下拉电阻。
2) 在引脚电平不定的时候,让后面有一个稳定的电平:
例如,以接上拉电阻举例,在STM32刚上电的时候,芯片引脚电平是不定的,特别引脚是接按键的时候,必须给他个确定的电平,下拉电阻的作用就是如果前面的引脚电平不定的话,强制让电平保持在高电平。
3)防止引脚悬空,否则会容易产生积累电荷,静电荷,造成电路不稳定。

原文链接:https://blog.csdn.net/qq_41625394/article/details/79078195

RS-485_第1张图片RS-485_第2张图片
D,DRIVER,驱动程序 R,RECEIVER,接收器
**

DRIVER

**
RS-485_第3张图片
H=high level L=low level Z=high impedance(阻抗) X=irrelevant(无关) ?=indeterminate

**

RECEIVER

**
RS-485_第4张图片

奇偶校验

奇校验:如果字符数据位中1的数目是偶数,校验位应为1,如果1的数目是奇数,校验位应为0
偶校验:如果字符数据位中1的数目是偶数,校验位应为0,如果1的数目是奇数,校验位应为1

普通的PC机一般不带RS485接口,因此可以通过芯片MAX485来完成TTL/RS485的电平转换。

你可能感兴趣的