欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MODBUS 超时时间计算

程序员文章站 2022-05-09 11:16:38
MODBUS 中两个超时: 1、两帧之间超时时间为3.5字符 2、一帧数据中每个字符超时时间为1.5字符 MODBUS 中处理一个字符相当于串口处理一帧。 超时时间根据通信波特率计算: bps = bit / s = 位 每 秒! 串口一帧数据常用的通信格式:开始位(1位) + 数据位(8位) + ......

modbus 中两个超时:

1、两帧之间超时时间为3.5字符  2、一帧数据中每个字符超时时间为1.5字符

modbus 中处理一个字符相当于串口处理一帧。

超时时间根据通信波特率计算:

  bps = bit / s = 位 每 秒!  

  串口一帧数据常用的通信格式:开始位(1位) + 数据位(8位) + 校验位(0位) + 停止位(1位)

  9600bps 的波特率下,串口发送数据为 9600/10 = 960 字符/秒;

  每个字符对应时间为 1s / 960 ,3.5字符时间为 3.5 * 1 / 960 = 0.0036458 s = 3.6458 ms

网上资料指明,在通信速率等于或低于 19200 bps 时,这两个定时必须严格遵守;
对于波特率大于 19200 bps 的情形, 应该使用 2 个定时的固定值 :

  字符间超时时间(t1.5)为 750µs ,

  帧间的超时时间 (t1.5) 为 1.750ms 。