Готовый изменённый modbus

This commit is contained in:
Артём Запевалов 2023-06-22 08:33:44 +00:00
parent e732737492
commit 1cd334c378

View File

@ -1,21 +1,15 @@
#ifndef MODBUS_H
#define MODBUS_H
#include <stdint.h>
#include <stddef.h>
unsigned int CRC16_Modbus(unsigned char* buf, int len);
size_t read_coil_status(uint8_t address, uint16_t discret_input, unint8_t* buf, size_t buf_len);
size_t read_coil_status_ans(unit8_t address, uint8_t meaning, unint8_t* buf, size_t buf_len);
size_t read_input_status(uint8_t address, uint16_t discret_input, unint8_t* buf, size_t buf_len);
size_t read_input_status_ans(unit8_t address, uint8_t meaning, unint8_t* buf, size_t buf_len);
size_t read_holding_register(uint8_t address, uint16_t holding_reg, unint8_t* buf, size_t buf_len);
size_t read_holding_register_ans(unit8_t address, uint8_t meaning, unint8_t* buf, size_t buf_len);
size_t read_input_register(uint8_t address, uint16_t input_reg, unint8_t* buf, size_t buf_len);
size_t read_input_register_ans(unit8_t address, uint8_t meaning, unint8_t* buf, size_t buf_len);
size_t forse_single_coil(unit8_t address, uint16_t address_input, int on, unint8_t* buf, size_t buf_len);
size_t forse_single_coil_ans(unit8_t address, uint16_t address_input, int on, unint8_t* buf, size_t buf_len);
size_t preset_single_register(unit8_t address, uint16_t address_input, uint16_t recorded_value, unint8_t* buf, size_t buf_len);
size_t preset_single_register_ans(unit8_t address, uint16_t address_input, uint16_t recorded_value, unint8_t* buf, size_t buf_len);
#endif
#ifndef MODBUS_H
#define MODBUS_H
#include <stdint.h>
#include <stddef.h>
unsigned int CRC16_Modbus(unsigned char* buf, int len);
size_t read_input_status(uint8_t address, uint16_t discret_input, uint16_t quantity_reg,uint8_t* buf, size_t buf_len);
int read_input_status_parse(uint8_t* buf, size_t buf_len, uint8_t* meaning);
size_t read_input_register(uint8_t address, uint16_t input_reg, uint8_t* buf, size_t buf_len);
int read_input_register_parse(uint8_t* buf, size_t buf_len, uint16_t* meaning);
size_t forse_single_coil(uint8_t address, uint16_t address_input, int on, uint8_t* buf, size_t buf_len);
int forse_single_coil_parse(uint8_t* buf, size_t buf_len);
#endif