恭喜,你发布的帖子
发布于 2021-04-18 10:13:56
5楼
看trace图,人家库运行没任何问题啊。
1、你的Req并不是Done的下一个周期触发?或者主程序周期过长?反正趋势图很明显的看到主要就是这两个原因造成的通讯事务过慢。
2、根据串口通讯波特率与Modbus RTU数据帧计算,9600波特率下,100ms是否读/写超过35个保持寄存器? 120ms是否读/写超过40个保持寄存器?320ms是否读/写超过120个保持寄存器?从Busy可以看出很长的时间都是消耗在通讯事务上了,要么是操作寄存器太多,要么是波特率太低。
最后,感觉都是你的问题啊。。。。
感谢回复
回应1.
更新了一下截图,done结束后立即req。
只调用Modbus程序,不调用用户程序了。
之前有延时是因为既然时间差这么多,那我相对固定一个周期采集把。
只有一个从站。
回应2.
读取Modbus 10个words,这个应该不算数据量大吧?
当然为了保证测试无干扰,用PC软件模拟主站(Modbus Slave)效果相同。
如果谁手头有1500 的模块,可否一起测试一下1500的Modbus RTU速率?
请填写推广理由:
分享
只看
楼主