canbus, modbus working, valve has to be implemented in real

This commit is contained in:
2025-06-19 16:56:21 +02:00
parent 852c5c72be
commit e9fc370094
33 changed files with 1261 additions and 870 deletions

View File

@@ -1,18 +1,42 @@
#ifndef __CANBUS_REGISTERS_H__
#define __CANBUS_REGISTERS_H__
typedef enum {
CANBUS_REGISTER_VALVE_COMMAND = 0x00,
CANBUS_REGISTER_VALVE_STATE = 0x01,
CANBUS_REGISTER_WATER_LEVEL_MM = 0x10,
CANBUS_REGISTER_WATER_MINIMUM = 0x11,
CANBUS_REGISTER_WATER_MAXIMUM = 0x12,
} canbus_registers_t;
enum canbus_registers {
CANBUS_REG_REBOOT = 0x00,
CANBUS_REG_STATE = 0x01,
CANBUS_REG_ERROR = 0x02,
typedef enum {
CANBUS_REGISTER_COMMAND_SET = 0x00,
CANBUS_REGISTER_COMMAND_GET = 0x01,
} canbus_register_command_t;
CANBUS_REG_VALVE_STATUS = 0x10,
CANBUS_REG_VALVE_OPERATION = 0x11,
CANBUS_REG_VALVE_COMMAND = 0x12,
CANBUS_REG_WATERLEVEL_STATE = 0x20,
CANBUS_REG_WATERLEVEL_LEVEL = 0x21,
CANBUS_REG_WATERLEVEL_ZERO_POINT = 0x22,
CANBUS_REG_WATERLEVEL_MAX_POINT = 0x23,
};
enum valve_status {
VALVE_STATE_CLOSED = 0x00,
VALVE_STATE_OPEN = 0x01,
VALVE_STATE_ERROR = 0x02,
VALVE_STATE_UNKNOWN = 0x03,
};
enum valve_operation_state {
VALVE_OPERATION_IDLE = 0x00,
VALVE_OPERATION_OPENING = 0x01,
VALVE_OPERATION_CLOSING = 0x02,
};
enum valve_command {
VALVE_COMMAND_STOP = 0x00,
VALVE_COMMAND_OPEN = 0x01,
VALVE_COMMAND_CLOSE = 0x02,
};
enum waterlevel_state {
WATERLEVEL_STATE_OK = 0x00,
WATERLEVEL_STATE_MODBUS_ERROR = 0x02,
};
#endif // __CANBUS_REGISTERS_H__