#ifndef PLSR_MODBUS_CONTROL_H #define PLSR_MODBUS_CONTROL_H #include "plsr_types.h" #include #ifdef __cplusplus extern "C" { #endif #define PLSR_MODBUS_PROTOCOL_VERSION (0x0100U) #define PLSR_MODBUS_WINDOW_WORDS (338UL) #define PLSR_MODBUS_CALL_REQUEST_OFFSET (8UL) #define PLSR_MODBUS_CALL_RESPONSE_OFFSET (24UL) #define PLSR_MODBUS_COMMAND_REQUEST_OFFSET (40UL) #define PLSR_MODBUS_COMMAND_RESPONSE_OFFSET (48UL) #define PLSR_MODBUS_PERFORMANCE_OFFSET (56UL) #define PLSR_MODBUS_PERFORMANCE_WORDS (8UL) #define PLSR_MODBUS_AXIS_STATUS_OFFSET (64UL) #define PLSR_MODBUS_AXIS_STATUS_WORDS (48UL) #define PLSR_MODBUS_STAGE_PERFORMANCE_OFFSET (256UL) #define PLSR_MODBUS_STAGE_PERFORMANCE_WORDS (12UL) #define PLSR_MODBUS_AB_GATE_PERFORMANCE_OFFSET (268UL) #define PLSR_MODBUS_AB_GATE_PERFORMANCE_WORDS (2UL) #define PLSR_MODBUS_PERSISTENCE_OFFSET (270UL) #define PLSR_MODBUS_PERSISTENCE_WORDS (30UL) #define PLSR_MODBUS_PERSISTENCE_REQUEST_OFFSET (300UL) #define PLSR_MODBUS_PERSISTENCE_REQUEST_WORDS (8UL) #define PLSR_MODBUS_PERSISTENCE_RESPONSE_OFFSET (308UL) #define PLSR_MODBUS_PERSISTENCE_RESPONSE_WORDS (8UL) #define PLSR_MODBUS_USB_DIAGNOSTICS_OFFSET (316UL) #define PLSR_MODBUS_USB_DIAGNOSTICS_WORDS (22UL) #define PLSR_MODBUS_CALL_NONE (0U) #define PLSR_MODBUS_CALL_COMMIT (1U) #define PLSR_MODBUS_CALL_START (2U) #define PLSR_MODBUS_PERFORMANCE_VERSION (7U) #define PLSR_MODBUS_PERSISTENCE_VERSION (1U) #define PLSR_MODBUS_USB_DIAGNOSTICS_VERSION (1U) PLSR_RESULT PlsrModbusControlInit(uint16_t baseAddress); void PlsrModbusControlPoll(void); uint8_t PlsrModbusControlIsEnabled(void); uint16_t PlsrModbusControlGetBaseAddress(void); #ifdef __cplusplus } #endif #endif /* PLSR_MODBUS_CONTROL_H */