MODBUS通讯(一):T1.5以及T3.5时间间隔

T1.5T3.5时间是实现RTU接收驱动程序过程中非常重要的两个概念。

其中T1.5是用来描述同一modbus报文帧内部两个字符之间的传输间隔时间(实际工程应用中T1.5机制使用比较少,本文忽略)T1.5的图示如下:

T1.5

重点讲下T3.5。T3.5是用来描述两个不同modbus报文帧之间的传输间隔时间(当前数据帧的结束字符与下一个数据帧的起始字符传输时间间隔)

Modbus-RTU通讯建立在底层串口通讯的基础之上。当串口的一个接收中断到来表明已完成一个字符的接收。Modbus-Rtu通讯是连续的字符流。

那么就引出一个问题,在连续的字符流之中如何判断一帧数据的起始和结束呢???

要解决以上的这个问题,Modbus-Rtu引入了一个“T3.5”的时间间隔。在串口接收的连续字符流之中若出现两个字符之间的接收时间间隔超过3.5个字符时间,则判断为两个数据帧的间隔。接收驱动程序上实现的思路是:
串口在接收到一个字符(假设字符’a’)时便开始计时,时间记为Time1,在接收到下一个字符(假设字符‘b’)时,时间记为Time2。如果Time2 - Time1的时间差值大于3.5个字符时间,则判断字符‘b’为下一数据帧的起始字符。字符‘a’为本帧数据的结束字符。
T3.5 的图示如下:
在这里插入图片描述
不同的波特率下,数据帧之间的传输时间间隔是不一样的
具体的计算方法请参考博客 :
如何计算T3.5时间间隔
其它有关T3.5,T1.5的参考博客:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值