libmodbus

介绍几个modbus常用接口

/*以网络的方式创建libmobus实例*/
MODBUS_API modbus_t* modbus_new_tcp(const char *ip_address, int port);
/*以串口的方式创建libmobus实例*/
MODBUS_API modbus_t* modbus_new_rtu(const char *device, int baud, char parity,int data_bit, int stop_bit);
/*设置modbus超时时间*/
MODBUS_API int modbus_set_response_timeout(modbus_t *ctx, uint32_t to_sec, uint32_t to_usec);
/*建立设备连接*/
MODBUS_API int modbus_connect(modbus_t *ctx);
/*读取线圈输入状态*/
MODBUS_API int modbus_read_bits(modbus_t *ctx, int addr, int nb, uint8_t *dest);
/*读取开关输入状态*/
MODBUS_API int modbus_read_input_bits(modbus_t *ctx, int addr, int nb, uint8_t *dest);
/*读取保持寄存器的值*/
MODBUS_API int modbus_read_registers(modbus_t *ctx, int addr, int nb, uint16_t *dest);
/*设置slave id*/
MODBUS_API int modbus_set_slave(modbus_t* ctx, int slave);
/*获取slave id*/
MODBUS_API int modbus_get_slave(modbus_t* ctx);
/*设置开关输入*/
MODBUS_API int modbus_write_bit(modbus_t *ctx, int coil_addr, int status);
/*写入值到寄存器*/
MODBUS_API int modbus_write_register(modbus_t *ctx, int reg_addr, const uint16_t value);
/*关闭modbus连接*/
MODBUS_API void modbus_close(modbus_t *ctx);
/*释放modbus资源*/
MODBUS_API void modbus_free(modbus_t *ctx);

Modbus Poll工具


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容