[STM32F1] modbus tcp

[复制链接]
1823|10
 楼主| 1021256354 发表于 2015-10-22 10:16 | 显示全部楼层 |阅读模式
107+lwip+modbus TCP方式通信。但是连接modbus poll以后提示Transaction ID error错误???
communication traffic抓到的数据:
000313-Tx:38 32 00 00 00 06 01 02 00 00 00 04
000314-Rx:20 A1 B6 53 54 4D 33 32 20 42 6F 61 72 64 20 43 6F 6E 6E 65 63 74 65 64 20 53 75 63 63 65 73 73 66 75 6C 6C 79 21 A1 B7 0D 0A 38 32 00 00 00 04 01 02 01 00

 楼主| 1021256354 发表于 2015-10-23 17:05 | 显示全部楼层
没有人弄过么?modbus移植的事freemodbus标准协议
qq4988 发表于 2015-10-23 17:23 | 显示全部楼层
你的是从站还是主站啊
 楼主| 1021256354 发表于 2015-10-23 17:28 | 显示全部楼层
从站服务器
 楼主| 1021256354 发表于 2015-10-23 17:32 | 显示全部楼层
  #define MB_TCP_TID          0
#define MB_TCP_PID          2   //2
#define MB_TCP_LEN          4        //4
#define MB_TCP_UID          6  //6
#define MB_TCP_FUNC         7  //7

#define MB_TCP_PROTOCOL_ID  0   /* 0 = Modbus Protocol */

定义是这么定义的
 楼主| 1021256354 发表于 2015-10-23 17:33 | 显示全部楼层
用modbus poll调试接受的数据就是哪个TX和RX的数据
acguy 发表于 2015-10-23 21:30 | 显示全部楼层
本帖最后由 acguy 于 2015-10-23 21:32 编辑

Modbus TCP前2个字节是transcation id, 回应包必须与请求包一样。

你抓的包发送接收的前2个字节不一致。
 楼主| 1021256354 发表于 2015-10-24 11:18 | 显示全部楼层
在代码中没找到MB_TCP_TID可以修改的位置,acguy你知道在哪修改么?谢谢
再一次心跳6699 发表于 2015-10-24 11:43 | 显示全部楼层
楼主 有没有modbus tcp的例程呢????
yklstudent 发表于 2015-10-24 11:56 | 显示全部楼层
搞定LwIP,移植FreeModbus就可以了,现成的可以用
acguy 发表于 2015-10-24 13:06 来自手机 | 显示全部楼层
1021256354 发表于 2015-10-24 11:18
在代码中没找到MB_TCP_TID可以修改的位置,acguy你知道在哪修改么?谢谢


你的回应包一片混乱,你该关心的不是这个transaction id. 不是freemodbus,就是lwip的问题。
下断点,追踪这个回应包怎么生成的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:多读书 多看报 少吃零食 多睡觉

152

主题

652

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部