|
实验环境:
<1> FreeModbus 1.5版本.
<2> ModbusPool 作为主机, (stm32f1)单片机作为从机.
<3> 使用RS485作为媒介进行通信.
<4> 使用9600波特率.
<5> 不管上位机还是下位机, 都不使用奇偶校验.
实验缘由:
如下图所示: 协议要求如果不使用奇偶校验位的话, 必须使用2位停止位.
我之前还没有在意这个, 赶紧实验下看看, 结果更没想到...
实验现象:
<1> 上位机(Modbus Pool)配置使用1位停止, 下位机(单片机)配置使用1位停止位.
<2> 上位机(Modbus Pool)配置使用1位停止, 下位机(单片机)配置使用2位停止位.
<3> 上位机(Modbus Pool)配置使用2位停止, 下位机(单片机)配置使用1位停止位.
<4> 上位机(Modbus Pool)配置使用2位停止, 下位机(单片机)配置使用2位停止位.
实验疑问:
上述4种情况经过验证, 数据都能正常通信, 并且不出现乱码. 请问大神, 该如何解释??? |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|