在modbus总线上发送读取帧 – modbusRead
带Modbus版本中,读取从机指定地址的数据
定义
int modbusRead(int addr, int fcode, int startaddr, int count, int timeout);
参数
- addr:
地址
- fcode:
功能码
- startaddr:
起始地址
- count:
数量
- timeout:
超时时间,单位毫秒
返回值
0 成功,-1超时
备注
此函数在Modbus协议解析器控件的Default模式下使用。
示例
// 从Modbus总线读数据,设备地址0x01,功能码0x03,起始地址0x0000,读寄存器数量2,超时50mS
num1.val = modbusRead(0x01,0x03,0x0000,2,50);//使用时建议用整数控件将返回值显示处理,方便判断读取状态
if(num1.val == 0)
{
text1.txt = "数据读取成功";
}else
{
text1.txt = "数据读取超时";
}
// 可在后续实验章节下载工程文件参考