主机给从机发送poll(01 03 00 00 00 0A C5 CD),偶尔有几包数据没回复,不知道有没有遇到相同问题


注意问题:
1、系统滴答时钟保证为1ms,Tick frequency 配置为1000

a、freeModbus的定时器时间必须准确,接收串行数据是通过定时器触发接收的,大于19200的波特率的定时器配置为1750us,定时器配置的时间为2.75ms,最终为2ms配置

问题追踪和解决:
1、通过排查发现出错没有回复的数据是CRC16校验出错
a、接收到串口接收数据的触发事件,数据缓冲中的数据不对,我发送的数据为(01 03 00 00 00 0A C5 CD)


更多回帖