Files
RS485_Relay2_fw/Core/Inc/board_logic.h
2024-06-19 10:05:47 +03:00

30 lines
714 B
C

/*
* board_logic.h
*
*/
#ifndef BOARD_LOGIC_H_
#define BOARD_LOGIC_H_
#define MODBUS_FIRMWARE_VERSION ( /*major*/ 11 + /*minor*/ 1 * 0x100)
#define MODBUS_BOARD_TYPE (8) //Relay Module board ID
#define REL_MAIN_BIT (1u<<0)
#define REL_AUX_BIT (1u<<1)
#define PWM_DUTY_MIN 0
#define PWM_DUTY_MAX 255
#define PWM_LIGHTS_STEP 20 // Time step in ms between LED light PWM updates
#define LIGHTS_TIME 600 // Time in ms to spend for smooth lights level change
void estop_reset(void);
void board_init(void);
uint16_t clamp_duty(uint16_t duty);
void set_pwm(uint8_t unit, uint16_t duty);
void set_light(uint16_t duty);
void loop_iterate();
void update_service_indication(void);
#endif