32#define STEERING_BUTTON_DEBOUNCE_PERIOD_MS 5U
35#define STEERING_CRUISE_MAX_SPEED_KMH 80U
38#define STEERING_CRUISE_MIN_SPEED_KMH 40U
44 STEERING_BUTTON_HAZARDS,
45 STEERING_BUTTON_DRIVE,
46 STEERING_BUTTON_NEUTRAL,
47 STEERING_BUTTON_REVERSE,
49 STEERING_BUTTON_REGEN,
51 STEERING_BUTTON_LEFT_LIGHT,
52 STEERING_BUTTON_RIGHT_LIGHT,
56 STEERING_BUTTON_CRUISE_CONTROL_UP,
57 STEERING_BUTTON_CRUISE_CONTROL_DOWN,
StatusCode
StatusCodes for various errors.
Definition: status.h:27
StatusCode steering_init(SteeringStorage *storage, SteeringConfig *config)
Initialize the steering interface.
Definition: steering.c:53
SteeringButtons
Steering buttons.
Definition: steering.h:43
Steering configuration data.
Definition: steering.h:65
uint16_t cruise_min_speed_kmh
Definition: steering.h:66
uint16_t cruise_max_speed_kmh
Definition: steering.h:67
Steering storage.
Definition: steering.h:73
uint8_t drive_state
Definition: steering.h:79
bool regen_enabled
Definition: steering.h:75
uint16_t cruise_control_target_speed_kmh
Definition: steering.h:78
uint8_t light_signal
Definition: steering.h:80
struct ButtonLEDManager * button_led_manager
Definition: steering.h:83
bool cruse_control_enabled
Definition: steering.h:76
struct ButtonManager * button_manager
Definition: steering.h:82
SteeringConfig * config
Definition: steering.h:84
bool horn_enabled
Definition: steering.h:74