armink / FreeModbus_Slave-Master-RTT-STM32

Add master mode to FreeModbus. | 在 FreeModbus 中添加主机模式
Other
1.6k stars 820 forks source link

从机性能测试 #18

Open armink opened 9 years ago

armink commented 9 years ago

操作系统:RTT、UCOS或者裸机 命令:读10个连续保持寄存器 时间:5min 上位机软件:Modbus Poll 硬件平台:STM32F103,主频72M,115200波特率

记录内容:命令请求成功及错误帧总数

armink commented 9 years ago

使用RTT非自带设备框架作为底层驱动,串口发送缓冲区空中断(TXE): 请求成功:9318 错误帧:2

传输速度:31.0帧/秒 出错率:0.02%

armink commented 9 years ago

使用RTT自带设备框架作为底层驱动,串口发送缓冲区空中断(TXE): 请求成功:9140 错误帧:5

传输速度:30.4帧/秒 出错率:0.15%

armink commented 9 years ago

使用RTT自带设备框架作为底层驱动,串口发送完成中断(TC): 请求成功:9395 错误帧:0

传输速度:31.3帧/秒 出错率:0%

alban-wang commented 5 years ago

我目前按照您的文档改了一个UCOSII版本的,移植成功,但是会出现概率性timeout,大概1%不到,请问您这边是如何解决的,原因是什么?已经困苦好多天了,感谢

armink commented 5 years ago

我目前按照您的文档改了一个UCOSII版本的,移植成功,但是会出现概率性timeout,大概1%不到,请问您这边是如何解决的,原因是什么?已经困苦好多天了,感谢

你这概率属于正常现象,物理通信不可能不受干扰,做好异常后的重试就行了,本库里面都有对应接口。

alban-wang commented 5 years ago

最近又将您的代码移植到STM32F429的板子,因工程需要查询速度要快,实际测试过程中,master poll会对slave poll 有影响,会出现timeout错误,概率随poll的时间有关.

alban-wang commented 5 years ago

主从机在一起,怎么能提高实时性?