#include "modbus-master.h" #include "gefran_gtf.h" #include uint16_t gtf_firmware_version(uint8_t address){ return gtf_read_register(address, GTF_FIRMWARE_VERSION); } uint16_t gtf_read_register(uint8_t address, uint8_t reg){ uint16_t val = 0; readReg(address, reg, 1); int8_t res = wait_receive(1, &val, 250); if(!res) return val; else return res; } int8_t gtf_write_register(uint8_t address, uint8_t reg, uint16_t value){ writeReg(address, reg, value); return wait_write(100); } int8_t gtf_read_coil(uint8_t address, uint8_t coil){ uint16_t val=0; readCoil(address, coil); uint8_t res = wait_receive_coil(100); if(res) return -1; return val; } int8_t gtf_write_coil(uint8_t address, uint8_t coil, uint8_t val){ writeCoil(address, coil, val); uint8_t res = wait_write(100); if(res) return -1; return val; }