在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 = "数据读取超时";
}
// 可在后续实验章节下载工程文件参考