本人自己编写的200SMART函数块,多有不成熟的地方,欢迎帮忙修改测试。也可参考此库函数自己编写有关1200的ASCII和RTU功能块。
有主站函数包含有4个块(其中一个中断块)(MBUS_SET,MBUS_LCRC,MBUS_MSG,MBUS(INT)),从站函数包含有5个块(有2个中断块)(MBUS_SET,MBUS_LCRC,MBUS_QUE,MBUS_INT1(INT),MBUS_INT2(INT)),块内有注释。
主站模块支持ASCII和RTU同时轮询(由于设备有限未能实际测试),功能块支持Modbus 0x01,0x02,0x03,0x04,0x05,0x06,0x10,0x0f功能码,地址访问也均为16进制地址。
从站模块支持广播,同时也支持ASCII和RTU模式,功能块支持Modbus 0x01,0x02,0x03,0x04,0x05,0x06,0x10,0x0f功能码,地址访问也均为16进制地址。同时对I,Q,AIW,AQW,VB,T,C,S做了从站地址分布。
I区I0.0~I1151.7 Modbus地址0x0000~0x23FF,支持功能码0x02;
AIW区AIW0~AIW110 Modbus地址0x0000~0x0037,支持功能码0x04;
Q区Q0.0~Q1151.7 Modbus地址0x0000~0x23FF,支持功能码0x01,0x05,0x0f;
M区M0.0~M31.7 Modbus地址0x2400~0x24FF,支持功能码0x01,0x05,0x0f;
S区S0.0~S31.7 Modbus地址0x2500~0x25FF,支持功能码0x01,0x05,0x0f;
V区VB0~VB20479 Modbus地址0x0000~0x27FF(按照2个字节一个字来分配的),支持功能码0x03,0x06,0x10;
T区T0~T255 Modbus地址0x2800~0x28FF,支持功能码0x03,0x06,0x10;
C区C0~C255 Modbus地址0x2900~0x29FF,支持功能码0x03,0x06,0x10;
AQW区AQW0~AQW110 Modbus地址0x2A00~0x2A37,支持功能码0x03,0x06,0x10;
目前暂不支持地址自由设置。
ModbusRTU&ASCIILib.rar