RS485总线详解

news/2025/1/1 23:58:11/

RS485总线详解

  • 前言
  • 一、常见接口划分
  • 二、RS485概述
    • (一)简介
    • (二)接口/引脚图
  • 三、RS485总线详解
    • (一)RS485总线概述
    • (二)差分传输:
    • (三)原理图
    • (三)RS485与RS232的区别
  • 四、应用详解
    • (一)接口结构
    • (二)与RS-422对照表
    • (三)拓扑结构
    • (四) RS-485收发器
    • (五)真值表
      • 1.对于发送器
      • 2.对于接受器
    • (六)RS-485数据链路
  • 参考链接

前言

前面有讲过协议,具体参考FPGA学习笔记(Day12)SingalTap使用&&Uart串口通信
本次详细了解介绍。

RS485:en置0;

一、常见接口划分

物理层:接口类型、电平标准

串口电平标准:

  • TTL电平的串口(3.3V)
  • RS232电平的串口(+5 ~ +12V为低电平,-12~-5V为高电平)

串口按电气标准分包括:

  • RS-232-C:TXD/RXD/GND、15米/9600bps
  • RS-422: TX+/TX-…/RX+/RX-/GND
  • RS485:A/B/G、1200米/9600bps

在这里插入图片描述

二、RS485概述

本模块参考RS485基本知识

(一)简介

485协议规定两条线上电压差值为多少表示0或者1,电压通过仪表可以测量得到,所以说RS-485是硬件层协议。

485的接收端可能是另外一个MCU,MCU管脚只接受TTL电平,需要将两条线的差分电压转换为TTL电平。

基本电平转换:TTL电平 转 485电平 485电平 转 TTL电平 给MCU

RS485原理:由于485电平和TTL电平标准定义不通,需要电平转换芯片来实现两者间的数据交换。


(二)接口/引脚图

在这里插入图片描述

三、RS485总线详解

(一)RS485总线概述

RS-485采用平衡式发送和差分接收方式实现通信,由于传输线通常使用双绞线,又是差分输入,所以有极强的抗共模干扰能力,RS485采用半双工工作方式,支持多点数据通信。总线网络拓扑一般采用终端匹配的总线型结构,即一条总线将各个节点串接起来,不支持环形或星型网络,如果需要使用星型结构就必须适用485中继器或485集线器。RS-485 总线一般支持32个节点,如果特质的485芯片可以达到128或256个节点最大支持400个节点。

RS485收发芯片(电平转换芯片)可以理解为两部分:驱动器和接收器

(二)差分传输:

    1. 发送端在两条信号线上传输辐值相等,相位相反的电信号,接收端在对接收的两条信号线做减法运算,这样就能获得信号翻倍的信号。
    1. 一般情况下 不需要增加终端电阻,通信距离超过300米的情况下在开始端和结束端增加终端电阻
    1. 隔离虽能有效抑制高共模电压,但在总线还会存在浪涌冲击,电源线与485短路的情况,通常在总线端采取保护措施, 在A,B,两端各串一个热敏电阻,在AB接口与热敏电阻中间设有TVS瞬变抑制二极管。
      • 没有故障时,热敏电阻接近零,不影响正常通讯
      • 当误接220V时,热敏电阻变的无穷大,相当于通讯回路和外面断开
      • 当故障消失后,热敏电阻阻值降到零,又可以正常使用。
    1. 由于RS-485是半双工通信,收发转换是需要一定的时间,所以一般在收发转换之间和每发送完一帧数据之后,都要有相应的延时,如果出现收发不正常或第一帧数据之后就出现误码现象,则可以适当的增加一下延时时间。

(三)原理图

    1. 异步通信数据以字节的方式传送,在每一个字节传送之前,先要通过一个低电平起始位实现握手。
    1. 为防止干扰信号误触RO(接收器输出)产生负跳变,使接收端MCU进入接收状态,建议RO外接10kΩ的上拉电阻。
    1. 电源旁路电容,作用是给485芯片提供一个干净的电源,使它稳定的工作。
      在这里插入图片描述

(三)RS485与RS232的区别

RS485和RS232一样都是基于串口的通讯接口,数据收发的操作是一致的,所以使用的是同样WinCE的底层驱动程序。但是它们在实际应用中通讯模式却有着很大的区别,RS485接口为半双工数据通讯模式,而RS232接口为全双工数据通讯模式,数据的收发不能同时进行,为了保证数据收发的不冲突,硬件上是通过方向切换来实现的,相应也要求软件上必须将收发的过程严格地分开。

RS485接口组成的半双工网络,一般是两线制(以前有四线制接法,只能实现点对点的通信方式,现很少采用),多采用屏蔽双绞线传输。这种接线方式为总线式拓扑结构在同一总线上最多可以挂接32个结点。在RS485通信网络中一般采用的是主从通信方式,即一个主机带多个从机。

RS-485接口的最大传输距离标准值为4000英尺(约1219米),实际上可达3000英尺,另外RS-232接口在总线上只允许连接1个收发器,即单站能力。而RS-485接口在总线上是允许连接多达128个收发器。即具有多站能力,这样用户可以利用单一的RS-485接口方便地建立起设备网络。


四、应用详解

本模块参考RS485简介

(一)接口结构

现在很多的RS-485转换器都是兼容RS-422的,所以看到很多转换器上面的信号都是T/R+、T/R-,即对应RS-485的A+和B-。
在这里插入图片描述

(二)与RS-422对照表

对于DB9针型的母头,RS-485有如下的接线定义示意,Pin6~Pin9为N/A不接。
在这里插入图片描述

(三)拓扑结构

RS485有两线制和四线制两种接线,四线制只能实现点对点的通信方式,现很少采用,多采用的是两线制接线方式,这种接线方式为总线拓扑结构,在同一总线上最多可以挂接32个节点。

RS-485总线同I2C,也是主从模式,支持点对点单从机模式,也支持多从机模式,不支持多主机模式。
在这里插入图片描述

(四) RS-485收发器

RS-485是差分传输,如果用单片机控制RS-485接口的设备,需要用到收发器,这一点和CAN总线是类似的,如下是一个MCU控制一个RS-485的图示
在这里插入图片描述
  收发器内部是一个接收器(上半部分)加一个发送器(下半部分),下面简单说说收发器的原理,便于理解MCU是如何和485设备通信的。

信号简介
A、B总线
R接收器输入
RE ‾ \overline{\text{RE}} RE接收器使能信号
DE发送器使能信号
D发送器输出

对于使能信号,字母上面加一横的为低电平有效(如上图 RE ‾ \overline{\text{RE}} RE),不加的为高电平有效(如DE)

(五)真值表

1.对于发送器

  • 当驱动器使能引脚DE为逻辑高时,差分输出A和B遵循数据输入D处的逻辑状态。D处的逻辑高导致A转为高,B转为低。在这种情况下,定义为VOD=VA-VB的差分输出电压为正。当D为低时,输出状态反转,B变高,A变低,VOD为负。
  • 当DE低时,两个输出都变成高阻抗。在这种情况下,与D处的逻辑状态是不相关的。

在这里插入图片描述

2.对于接受器

  • 当接收器使能引脚RE逻辑低时,接收器被激活。当定义为VID=VA–VB的差分输入电压为正且高于正输入阈值VIT+时,接收机输出R变高。当VID为负且低于负输入阈值VIT-,接收机输出R变低。如果VID在VIT+和VIT-之间,则输出不确定。
  • 当RE为逻辑高或悬空时,接收机输出为高阻抗,VID的大小和极性无关。
    在这里插入图片描述

(六)RS-485数据链路

上面讲到的RS-485收发器的工作原理,下面简单描述RS-485的数据链路,可以先看一下通俗易懂的UART协议帧格式
在这里插入图片描述
主机发送给从机或者从机发送给主机,都会占用到A和B线,所以RS-485多用在半双工模式。

主机的GPIO会控制RS-485收发器的DE管脚,设置发送模式,从UART TXD线向RS-485收发器的数据(D或DI)线发送一个字节,收发器将在A和B线上将单端UART位流转换为差分位流,数据离开收发器后,主机立即将收发器的模式切换为接收模式。

从机和主机是类似的,从机控制RS-485收发器的/RE管脚,设置为接收模式,接收主机发送的比特流,将其转换为单端信号,通过从机的UART RXD线接收,当从机准备好响应时,它按主机原来的方式进行发送,而主机变为接收。

参考链接

RS-485通讯协议
RS485基本知识
RS485简介


http://www.ppmy.cn/news/137277.html

相关文章

485通信协议

485通信协议是一种广泛应用于工业自动化领域的串行通信协议,其主要特点是支持多节点通信、远距离传输、高速传输和抗干扰能力强。485通信协议: 物理层:485通信协议采用差分信号传输,即采用两个信号线(A、B)…

干活分享 | MAX485 系列 RS-422/RS-485 接口 IC5RS-485/RS-422 Transceivers MAX485

1.产品特征 •单5V电源 •低功耗BiCMOS •驱动器/接收器支持多点配置 •提供半双工版本 •数据速率:5 Mbps •ESD规格 -15kV IEC61000-4-2空气放电 -8kV人体模型 2.功能描述 MAX485是半双工差分收发器,满足RS-485和RS-422的要求。 RS-485标准是多…

RS485协议

RS485 电气特性 共模传输 采用共模传输方式时,共模噪声将会叠加在最终的输出信号上面,污染了原始的信号。 差模传输 而采用差模传输方式,则源端发出的信号与信号-相位是相反的,而对于共模噪声而言在/-两条线上都会存在&#xff…

伺服驱动器485通信

伺服驱动器和上位机使用485通信,驱动电机运行调试成功案例分享。 调试步骤如下: 1:使用汇川伺服驱动器案例分享。首先看下伺服驱动器的485通信链接方法,使用两根线链接,485 ,485-。厂家建议GND也要连接上&a…

STM32之485通信(RS485串口编程)

目录 1.编程思路 2.代码 USART串口的库函数: USART_: AIRCR中断分组设置表: 1.编程思路 通过485通信来实现MCU之间的通信,把接收到的数据通过串口助手显示在pc端。第一是对usart1,usart2进行初始化&#xff0…

Python潮流周刊#4:Python 2023 语言峰会

△点击上方“Python猫”关注 ,回复“1”领取电子书 你好,我是猫哥。这里记录每周值得分享的 Python 及通用技术内容,本期是特别加更版,聚焦于 Python 官方 2023 年语言峰会的系列博客。 由于公众号不支持外链,文中大量…

Vagrant编排虚拟机安装与配置

1.安装VirtualBox与Vagrant VirtualBox与Vagrant是支持不通过操作系统的;根据具体操作系统下载对应版本即可。(这里使用windows操作系统搭建) VirtualBox https://www.virtualbox.org/wiki/Downloads Vagrant https://developer.hashicorp.com/vagrant/downloads Va…

设计模式之~状态模式

状态模式(State),当一个对象的内部状态改变时允许改变其行为,这个对象看起来像是改变了其类。 能够让程序根据不同的外部情况来做出不同的响应,最直接的方法就是在程序中将这些 可能发生的外部情况全部考虑到&#xff…