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工具


你可能感兴趣的:(libmodbus)