我使用libmodbus并有一个16位整数数组,其中保存了modbus寄存器。我尝试使用MODBUS_GET_INT64_FROM_INT16(mod_arr,0),但是这个值(当然)是一个整数。在MAKRO无法工作之前使用(double)。
modbus_get_float_dcba(mod_arr)只读取2个寄存器,而不是4个寄存器。
是否有作为双(64位)读取4 modbus寄存器的函数/宏?
发布于 2018-11-02 14:16:42
当然了。-)我的解决办法是:
温度= modbus3;
temp1 = modbus2;
temp2 = modbus1;
temp3 = modbus;
memcpy(&mb_double &temp,8);
https://stackoverflow.com/questions/53077681
复制相似问题