不知道大家是否会遇到这样的情况,测试单个RS-485设备数据无异常,但设备组网后,就出现通讯数据异常或连接失败等情况。出错的原因是什么?

RS-485总线是具有结构简单、通信距离远、通信速度高、成本低等优点,广泛应用于工业通讯、电力监控以及仪器仪表等行业。若总线上接有终端电阻,则在总线空闲状态时,RS-485总线AB差分电压可能处于门限电平(±200mV)之内,这时可能会导致通信出错,那么,出错的原因是什么?MCU接收到的数据会发生什么样的变化?

数据出错的原因

如图1所示为8位数据位无校验位的UART时序图,当使用UART进行通信时,MCU在检测到起始位后开始接收其后的数据。

图1 无校验位,8位数据位,串口时序图

如图2所示为STM32串口外设检测到起始位的条件,当检测到下降沿(3个高电平+1个低电平)并且采样序列1和采样序列2均为0时,STM32检测到一个起始位。

每个位采样16次,采样点的间隔时间为tbit/16,tbit为每个位的时间,例如通信波特率为115.2kbps,则tbit=1/115.2k=8.68us,则采样点的间隔时间为8.68us/16=0.5425us。

图2 STM32串口外设检测到起始位的条件

下面以RSM485PCHT的门限电平为例进行说明,当AB差分电压处于±200mV之内时,模块RXD引脚输出状态不确定。

当总线变为空闲时,若RXD引脚输出低电平,则可能导致MCU接收到错误数据或MCU在正常数据后误接收1个0x00。

图3 RSM485PCHT门限电平

数据发生了什么变化?

如图4所示,收发器1在AB差分电压处于±200mV门限电平之内时输出高电平,收发器2在AB差分电压处于±200mV门限电平之内时输出低电平,可以看出,收发器2可能导致MCU接收到错误的数据,并且在数据后误接收到1个0x00数据。

图4 数据后多0x00

如图5所示,若总线上持续存在数据信号或连续发送多个字节数据,在数据之间存在的空闲状态可能会被收发器2识别为1个起始位,从而导致数据连续错误。

图5 数据连续错误

解决方案

总线空闲时若AB差分电压处于门限电平之内,则可能导致数据出错,可以使用如下方法避免总线空闲时AB差分电压处于门限电平之内。

方案一:组网距离不长,总线信号无反射问题或反射较小,此时可不增加终端电阻以提升总线幅值电平,具体的幅值变化如下图6所示。

图6 终端电阻对总线电平影响

方案二:组网距离偏长,总线信号当前已存在反射需增加终端电阻解决反射问题,面对此类应用可使用致远电子RSM(3)485PCHT模块,RS-485接口设计时可通过外置一个较小值的上下拉电阻调节空闲状态时的电压值,使电平处于门限电平外,具体的幅值变化如下图7所示。

图7 RSM(3)485PCHT实物及应用连接图

方案三:组网距离偏长,总线信号当前已存在反射需增加终端电阻解决反射问题,面对此类应用同样可使用致远电子RSM(3)485ECHT模块,RSM(3)485ECHT具备极高的总线兼容性门限电平为-40mV~-20mV,具体如下图8所示,在总线电平被终端电阻拉低时(最坏情况总线高电平幅值为0V)仍可识别总线电平,保证通讯的稳定性。

图8 RSM(3)485ECHT实物图及门限电平参数

电平通讯速度_RS-485总线电平异常解决方案解析相关推荐

  1. RS-485总线电平异常解决方案解析

    关注.星标公众号,不错过精彩内容 转自:ZLG致远电子 不知道大家是否会遇到这样的情况,测试单个RS-485设备数据无异常,但设备组网后,就出现通讯数据异常或连接失败等情况.出错的原因是什么? RS- ...

  2. 电平通讯速度_飞凌干货丨几种常见的电平转换电路分析及应用

    在电路设计过程中,输入输出信号电平不匹配问题很常见,这时就需要设计人员对信号进行电平转换.常见的电平转换电路有以下几种: 1.由二极管构成的单向电平转换电路 图1中RX为3.3V TTL电平与485驱 ...

  3. USB总线电平标准、USB总线状态、USB总线信号详解

    目录 1.USB总线电平标准 2.USB总线状态 3.USB总线信号 3.1 SOP信号 3.2 EOP信号 3.3 Reset信号 3.4 Suspend信号 3.5 Resume信号 3.6 SY ...

  4. STM32+收发器实现CAN和485总线

    RS485总线是一种常见的(Recommended Standard)串行总线标准(485是它的标识号),采用平衡发送与差分接收的方式,因此具有抑制共模干扰的能力.CAN是控制器局域网络(Contro ...

  5. CAN总线对比485总线

    CAN总线和RS485总线的定义 CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由研发和生产汽车电子产品著称的德国BOSCH公司开发了的,并最终成为国际标 ...

  6. 基于485总线的评分系统

    基于485总线的评分系统 程序设计目标: 通过本案例加深理解RS485通信方式,实现上位机的主控制器与所有的下位机进行通信. 程序运行效果说明: 通过RS232/RS485转换器将多个带有485模块的 ...

  7. 【硬件通讯协议】SIP总线协议以及模拟(软件)SPI

    参考资料 NXP 官方网站提供的 SPI 总线规范 S12SPIV4.pdfhttps://www.nxp.com/files-static/microcontrollers/doc/ref_manu ...

  8. 专业音频如何把电平转换成dbu_如何实现电平转换,多种方法

    作为一名电子设计的硬件工程师,电平转换是每个人都必须面对的的话题,主芯片引脚使用的1.2V.1.8V.3.3V等,连接外部接口芯片使用的1.8V.3.3V.5V等,由于电平不匹配就必须进行电平转换.每 ...

  9. CAN总线和485总线的区别

    1. RS485标准只规定了物理层而没有规定链路层,CAN是规定了物理层和链路层,换句话说,CAN用硬件实现了硬件标准化和协议标准化,当然485也有自己的通用协议MODBUS. 2. CAN硬件支持总 ...

最新文章

  1. 下载和安装Nginx之配置选项
  2. transact-sql数组(转)
  3. 11.Verilog中如何避免Latch
  4. Flyway 数据库版本管理控制
  5. python在线编辑器可视化_python软件——wxpython可视化编辑器 v4.1附使用教程
  6. HDOJ 4003 Find Metal Mineral (树DP)
  7. GitLab 8.9 新增文件锁 和 U2F硬件支持
  8. 设计模式(六)建造者(创建型)
  9. Java多线程(三) 多线程间的基本通信
  10. 车牌号识别易语言代码
  11. 每日一练蓝桥杯C语言:2020年真题题集(B组)
  12. 数字电路基础知识——时序逻辑电路之存储器(SRAM、DRAM、ROM)
  13. 【随笔】理性国度的感性之火——浅论《报任安书》
  14. 计算机系军训口号四句霸气,军训口号四句霸气中队
  15. 八大排序之堆排序、快速排序、基数排序(java)。
  16. python学习之——假人配对
  17. 西南大学计算机辅助设计试题,西南大学 1906 课程名称:(9123)《计算机辅助设计》机考 答案-奥...
  18. 探究:Adobe Premiere Pro CC 2018 导入SRT字幕显示不全问题
  19. 桂林理工大学南宁分校php实训,桂林理工大学南宁分校冶金化工虚拟仿真实验教学中心...
  20. web系统快速开发_开发一个快速销售系统

热门文章

  1. 如何抓取一个网站的分页_如何设计一个吸引人的网站
  2. iso8601 转换 java_java积累----ISO8601格式时间转化为Datetime类型
  3. recycleview 自动循环滚动_划重点 | 不能不知的滚动轴承知识—轴承分类(续)
  4. Javascript原型理解图
  5. CentOS 恢复 rm -rf * 误删数据(转)
  6. Chorme Error 312 (net::ERR_UNSAFE_PORT) | Chorme 不信任端口
  7. ubuntu server 14.10 安装 nodejs
  8. Tech.Ed上海会场都结束了!
  9. AI算力霸主诞生!英伟达发布首款安培架构GPU,性能提升20倍
  10. 想轻松入门Python编程,必须看这10个经典案例,学完就能找到工作