搞不定S7200的自由口通讯,请高人指点,(已经搞定发送)?
搞不定S7200的自由口通讯,胡乱中搞定发送现在不知道怎么发送
原来我做单片机的,赶鸭子上架做S7200,小白一个 清高人指教啊
给个简单的自由口例程 参考《深入浅出S7-200》一书中自由口通讯章节 我把具体的内容说一下吧
利用s7-226与深圳圣思尔电量传感器进行通讯,获取数据
其通讯报文格式如下:
(1)、功能码0x03---查询从设备寄存器内容
主设备报文
从设备地址-----------(0x01-0xFF 1字节)
功能码---------------(0x03 1字节)
起始寄存器地址-------(2字节)
寄存器个数-----------(2字节)
CRC校验码------------(2字节)
从设备正确报文
从设备地址-----------(0x01-0xFF 1字节)
功能码---------------(0x03 1字节)
数据区字节数---------(2*寄存器个数1字节)
数据区---------------(寄存器内容 2*寄存器个数字节)
CRC校验码------------(2字节)
读所有数据命令举例:
从设备地址 功能码起始寄存器地址 寄存器个数 CRC-L CRC-H
0x05 0x03 0x000x10 0x000x0E 0xC4 0x4F
从设备返回数据如下格式如下:
从设备地址 功能码数据区字节数 数据区[共28个] CRC-L CRC-H
0x05 0x03 0x1C 0x00 0x00....0x00 0x00 CRC16校验码 CRC16校验码
上面举例的报文已经进过串口调试验证过,是正确的;
现在能用S7-226发送主设备报文,且电量传感器已经获得正确数据,
用S7200的RCV命令不能获得从设备的返回报文,
下面是我的试验程序,
S7-226自由口通讯实验ourdev_582369M13ITM.rar(文件大小:3K) (原文件名:S7200自由口实验.rar)
上面的程序里,删除发送完成中断里德接收程序,能一直发送,不然只能发送一次
现在是一点数据都都收不到,请高人指点一下,
网上 的例子都是发送的ASC码的例子 记号 已经解决,网上 的例子都是发送的ASC码的例子 ,做16进制数发送的几乎没有
只要设置好SMB87或者SMB187就行了 记号 这个帖子挺好,顶一下 点击此处下载 ourdev_645534DMK9VB.rar(文件大小:34K) (原文件名:项目MODBUS SLAVE测试.rar)
点击此处下载 ourdev_645535ACH0XM.rar(文件大小:21K) (原文件名:项目MODBUS MASTER测试.rar)
破_解的MODBUS MASTER/SLAVE源代码,可以参考,主从都可以作了,还有CRC校验,包你爽到位 mark 利用modbus库文件 修做修改 现在正在搞MODBUS通讯,谢谢了。
页:
[1]