.net 做手机网站吗,泰安神秀网络科技有限公司,东莞企石网站建设,wordpress模板怎么制作写在前面 在第六篇中我们介绍了基于libmodbus库的演示代码#xff0c;那本篇博客就详细介绍一下第六篇的代码中使用的基于该库的API函数。另各位读者#xff0c;Modbus相关知识受众较少#xff0c;如果觉得我的专栏文章有帮助#xff0c;请一定点个赞#xff0c;在此跪谢那本篇博客就详细介绍一下第六篇的代码中使用的基于该库的API函数。另各位读者Modbus相关知识受众较少如果觉得我的专栏文章有帮助请一定点个赞在此跪谢这是我能持续更下去的动力
API介绍
modbus_new_rtu() 完整函数签名为
modbus_t *modbus_new_rtu(const char *device, int baud, char parity, int data_bit, int stop_bit); 函数功能介绍原文The modbus_new_rtu() function shall allocate and initialize a modbus_t structure to communicate in RTU mode on a serial line. 翻译一下就是该方法将会分配并初始化一个modbus_t的结构体以在串行线上进行RTU模式的通信即可以理解为建立一个RTU容器。具体的参数含义介绍如下 modbus_set_slave() 完整的函数签名为
int modbus_set_slave(modbus_t *ctx, int slave); 函数功能介绍原文The modbus_set_slave() function shall set the slave number in the libmodbus context. 翻译一下就是该方法将会在libmodbus上下文中设置从机号。即先调用modbus_new_rtu()函数来生成一个上下文然后再在这个上下文中设置你想要进行通讯的从机号即在modbus slave中设置的Slave ID。具体参数含义介绍如下 modbus_connect() 完整的函数签名为
int modbus_connect(modbus_t *ctx); 函数功能介绍The modbus_connect() function shall establish a connection to a Modbus server, a network or a bus using the context information of libmodbus context given in argument. 翻译一下就是基于前面给定的libmodbus上下文来建立一个连接连接正常建立后即可开始进行通信。参数无需介绍即libmodbus上下文。 modbus_write_bit() 完整的函数签名为
int modbus_write_bit(modbus_t *ctx, int addr, int status); 函数功能介绍The modbus_write_bit() function shall write the status of status at the address addr of the remote device. The value must be set to TRUE or FALSE. 翻译一下就是该方法将会在远端设备的指定addr处将状态值写入值为0或1即TRUE or FALSE具体参数介绍如下 modbus_read_bits() 完整的函数签名为
int modbus_read_bits(modbus_t *ctx, int addr, int nb, uint8_t *dest); 函数功能介绍The modbus_read_bits() function shall read the status of the nb bits (coils) to the address addr of the remote device. The result of reading is stored in dest array as unsigned bytes (8 bits) set to TRUE or FALSE. 翻译一下就是该方法将会读取远端设备指定addr地址的nb个bit的状态信息然后将其值存入到dest数组中。具体参数介绍如下 modbus_write_bits() 完整的函数签名为
int modbus_write_bits(modbus_t *ctx, int addr, int nb, const uint8_t *src); 与前面介绍的modbus_write_bit()类似只不过这个是批量对远端设备进行写入待写入的值存储在src中。src数组中的值必须包含状态值。 另外还有很多读写方法类似modbus_write_registers()等等大家可以去官网进行查阅并理解传送门libmodbus reference.