RS-485半双工延时问题

学习485总线时,遇到延时问题,困扰很久。通过学习知道了485半双工收发时必须延时,以保证系统的稳定性、可靠性。好多资料都介绍了485 防静电、抗干扰电路。惟独没提 每一帧收发停止位(或第9位)的延时和 半双工总线收发切换延时 问题。
    我觉得在半双工状态下 485 帧的收发和 总线的收发状态切换延时问题 对485总线长期稳定的工作有很大影响。彻底搞懂这个问题 对了解误码产生、数据丢失、总线的稳定性、可靠性都有重要意义。

以下来源laoguo 21ic的文章 整理后:

1、每一帧收发停止位(或第9位)的延时问题
    在RS-485半双工通讯中,一般以单片机的TI,RI信号作收发切换控制信号,发送时,检测TI是否建立起来,当TI为高电平后关闭发送功能转为接收功能,接收时,检测RI是否建立起来,当RI为高电平后,接收完毕,又可以转为发送。因此,必须控制端RE*,DE的信号的有效脉宽应该大于发送或接收一帧信号的宽度。

1

    从上面的时序图可知:单片机在串行口发送数据时,只要将8位数据位传送完毕,TI标志即建立,但此时应发送的第九位数据位(若发送地址帧时)和停止位尚未发出。如果在这时关闭发送控制,势必造成发送帧数据不完整。
    接收数据时也同样如此,单片机在接收完8个数据位后就建立起RI信号,但此时还未接收到第九位数据位(若接收地址帧时)和停止位。所以,接收端必须延时大于2位数据位的时间(1位数据位时间=1/波特率),再作应答,否则会发生总线冲突。
    总之,发送和接收控制信号应该足够宽,以保证完整地接收一帧数据,任意两个单机的发送控制信号在时间上完全分开,避免总线争端。

注:延时T秒的取值
(1) 传送地址帧时,T>2X(1/波特率),可以选取T=2.5X(1/波特率)。
(2) 传送数据帧时,T>1X(1/波特率),可以选取T=1.5X(1/波特率)。

实际的软件流程:
1

问题:(【5楼】以解决)
    可看到软件流程并没有在 每一帧收发停止位(或第9位)后实现延时,而是在(数据包的)最后一个字节(帧)上延时。这样能保障数据帧的正确(完整性)和稳定性吗?

2、半双工总线收发切换延时问题
   为了可靠的工作,在485总线状态切换时需要做适当延时,再进行数据的收发。具体的做法是在数据发送状态下,先将控制端置“1”,延时1ms左右的时间,再发送有效的数据,一包数据发送结束后再延时1ms后,将控制端置“0”。这样的处理会使总线在状态切换时,有一个稳定的工作过程。

问题:
    这里的 1ms是如何计算的? 485总线收、发状态切换时需要做适当延时,是指 485芯片的收发切换需要延时还是 485总线电缆固有的特性?
  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 四路RS-485中继器是一种数据通信设备,用于增强RS-485总线的传输距离和带载能力。其工作原理如下: 1. 输入端:四路RS-485中继器的输入端可以连接多个RS-485设备,比如传感器、控制器等。输入端采用差分传输模式,将输入信号分为正、负两路传输。 2. 输出端:四路RS-485中继器的输出端也是通过差分传输模式将信号转发给远端设备。输出端可以连接较长距离内的若干个RS-485设备,通过转发输入端信号保持数据的完整性和可靠性。 3. 精心设计的电路和线路:四路RS-485中继器内部采用精心设计的电路和线路,用于调整和增强输入信号的传输性能。这些电路可以消除信号的噪音和干扰,提高数据传输的稳定性和可靠性。 4. 全双工通信RS-485总线采用全双工通信方式,即可以同时发送和接收数据。四路RS-485中继器可以实现完全透明的信号转发,使得多个设备之间可以实现双向的数据传输。 5. 延长总线长度:四路RS-485中继器的主要作用之一是增强RS-485总线的传输距离。通过将中继器放置在总线上,可以延长总线的长度,使得设备之间可以更远距离的通信。 6. 提高带载能力:由于RS-485总线的特性,设备的数量和总线长度会影响通信质量。四路RS-485中继器可以提供更强的驱动能力和更大的带载能力,使得可以连接更多的设备,适应复杂的工业现场应用。 总之,四路RS-485中继器通过差分传输、精心设计的电路和线路以及全双工通信的方式,实现了RS-485总线信号的延长和增强,提高了数据传输的稳定性和可靠性。 ### 回答2: 四路RS-485中继器是一种用于增加RS-485总线长度的设备。它采用了一种特殊的电路设计来实现数据的传输和放大。原理如下: 1. 信号放大:当RS-485总线长度超过规定长度时,信号衰减会导致传输的信号变弱。中继器通过内部的放大电路来增强信号,使信号能够稳定地传输到更远的距离。 2. 噪声滤波:在长距离传输中,总线上的噪声会干扰信号的传输。中继器内部的滤波器会滤除大部分噪声,以确保传输的信号质量。 3. 半双工通信RS-485总线是一种半双工通信协议,意味着同一时间只能进行单向的数据传输。中继器通过控制接收和发送的开关来实现数据的传输。 4. 多路扩展:四路RS-485中继器具有多个通道,可以同时传输多个独立的RS-485信号。这样可以极大地扩展总线上的设备数量。 总的来说,四路RS-485中继器通过信号放大、噪声滤波和半双工通信等技术,能够增加RS-485总线的长度,保证信号的传输质量,同时还可以同时传输多个独立的信号。这使得它成为工业自动化领域中常用的设备之一。 ### 回答3: 四路RS-485中继器是一种通信设备,用于增强并延长RS-485总线的传输距离和信号强度。其原理基于RS-485通信标准和中继器的工作原理。 RS-485是一种串行通信标准,常用于远距离数据传输。它使用差分信号传输,即通过比较两个信号线上的电压差来传递信息。RS-485总线可以连接多个设备,但是随着传输距离的增加,信号会逐渐衰减和失真。 四路RS-485中继器的作用是在RS-485总线上增加信号,并通过电流放大和信号整形等技术,保持传输信号的稳定和可靠。它由四个独立的中继器组成,每个中继器都有输入和输出端口。当输入端口接收到一个信号时,中继器会根据信号的差异放大电流并重新发送。 四路RS-485中继器的输入和输出端口之间通过特制的电路和差分放大器进行连接。差分放大器可以将输入信号的正负极性进行放大,并通过恢复信号波形来修复信号的失真。中继器还通过芯片内部的电流传输和电压驱动技术,确保信号能够在长距离传输中保持稳定。 四路RS-485中继器的原理基于电流放大和信号整形技术,通过在RS-485总线上增强信号、修复失真和延长传输距离来提高通信质量。它广泛应用于工业自动化、楼宇自控和安防监控等领域,使得RS-485通信能够在长距离和复杂环境下稳定可靠地工作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值