Midnight Sun Firmware
Loading...
Searching...
No Matches
global_enums.h
1#pragma once
2
3/************************************************************************************************
4 * @file global_enums.h
5 *
6 * @brief Header file for global enums which are exported between projects with CAN
7 *
8 * @date 2025-01-12
9 * @author Midnight Sun Team #24 - MSXVI
10 ************************************************************************************************/
11
12/* Standard library Headers */
13#include <stdint.h>
14
15/* Inter-component Headers */
16
17/* Intra-component Headers */
18
25/************************************************************************************************
26 * Shared Global definitions
27 ************************************************************************************************/
28
32typedef enum {
37 /* Extra drive state types used only by motor */
38
42
43/************************************************************************************************
44 * BMS Global Definitions
45 ************************************************************************************************/
46
50typedef enum {
55
59typedef enum {
72
74#define BMS_FAULT_OVERVOLTAGE_MASK (1U << BMS_FAULT_OVERVOLTAGE)
76#define BMS_FAULT_UNBALANCE_MASK (1U << BMS_FAULT_UNBALANCE)
78#define BMS_FAULT_OVERTEMP_AMBIENT_MASK (1U << BMS_FAULT_OVERTEMP_AMBIENT)
80#define BMS_FAULT_COMMS_LOSS_AFE_MASK (1U << BMS_FAULT_COMMS_LOSS_AFE)
82#define BMS_FAULT_COMMS_LOSS_CURR_SENSE_MASK (1U << BMS_FAULT_COMMS_LOSS_CURR_SENSE)
84#define BMS_FAULT_OVERTEMP_CELL_MASK (1U << BMS_FAULT_OVERTEMP_CELL)
86#define BMS_FAULT_OVERCURRENT_MASK (1U << BMS_FAULT_OVERCURRENT)
88#define BMS_FAULT_UNDERVOLTAGE_MASK (1U << BMS_FAULT_UNDERVOLTAGE)
90#define BMS_FAULT_KILLSWITCH_MASK (1U << BMS_FAULT_KILLSWITCH)
92#define BMS_FAULT_RELAY_CLOSE_FAILED_MASK (1U << BMS_FAULT_RELAY_CLOSE_FAILED)
94#define BMS_FAULT_DISCONNECTED_MASK (1U << BMS_FAULT_DISCONNECTED)
95
97#define BMS_FAULT_HIGH_PRIORITY_MASK (1U << 15U)
99#define BMS_FAULT_LOW_PRIORITY_MASK (1U << 14U)
100
101/************************************************************************************************
102 * Centre Console Global Definitions
103 ************************************************************************************************/
104
108typedef enum {
114
118typedef enum {
123
125#define EE_STEERING_CC_INCREASE_MASK (1U << EE_STEERING_CC_INCREASE_BIT)
127#define EE_STEERING_CC_DECREASE_MASK (1U << EE_STEERING_CC_DECREASE_BIT)
129#define EE_STEERING_CC_TOGGLE_MASK (1U << EE_STEERING_CC_TOGGLE_BIT)
130
131/************************************************************************************************
132 * Power Distribution Global Definitions
133 ************************************************************************************************/
134
138typedef enum {
144
PDPowerState
Power distribution power state definitions.
Definition: global_enums.h:138
CCSteeringLights
Steering lights definitions.
Definition: global_enums.h:108
DriveState
Vehicle drive states.
Definition: global_enums.h:32
BmsFault
Battery fault definitions.
Definition: global_enums.h:59
BmsRelayState
Battery relay states.
Definition: global_enums.h:50
CCSteeringCruiseControl
Steering cruise control definitions.
Definition: global_enums.h:118
@ EE_POWER_PRECHARGE_STATE
Definition: global_enums.h:140
@ EE_POWER_OFF_STATE
Definition: global_enums.h:139
@ EE_POWER_DRIVE_STATE
Definition: global_enums.h:141
@ EE_POWER_FAULT_STATE
Definition: global_enums.h:142
@ CC_STEERING_LIGHTS_OFF_STATE
Definition: global_enums.h:109
@ CC_STEERING_LIGHTS_LEFT_STATE
Definition: global_enums.h:110
@ CC_STEERING_LIGHTS_RIGHT_STATE
Definition: global_enums.h:111
@ NUM_EE_STEERING_LIGHTS
Definition: global_enums.h:112
@ VEHICLE_REVERSE
Definition: global_enums.h:35
@ VEHICLE_NEUTRAL
Definition: global_enums.h:33
@ VEHICLE_DRIVE
Definition: global_enums.h:34
@ VEHICLE_CRUISE
Definition: global_enums.h:39
@ VEHICLE_BRAKE
Definition: global_enums.h:40
@ BMS_FAULT_OVERTEMP_AMBIENT
Definition: global_enums.h:62
@ BMS_FAULT_UNBALANCE
Definition: global_enums.h:61
@ BMS_FAULT_RELAY_CLOSE_FAILED
Definition: global_enums.h:69
@ BMS_FAULT_OVERVOLTAGE
Definition: global_enums.h:60
@ BMS_FAULT_DISCONNECTED
Definition: global_enums.h:70
@ BMS_FAULT_OVERCURRENT
Definition: global_enums.h:66
@ BMS_FAULT_COMMS_LOSS_CURR_SENSE
Definition: global_enums.h:64
@ BMS_FAULT_KILLSWITCH
Definition: global_enums.h:68
@ BMS_FAULT_COMMS_LOSS_AFE
Definition: global_enums.h:63
@ BMS_FAULT_OVERTEMP_CELL
Definition: global_enums.h:65
@ BMS_FAULT_UNDERVOLTAGE
Definition: global_enums.h:67
@ BMS_RELAY_STATE_CLOSE
Definition: global_enums.h:51
@ BMS_RELAY_STATE_FAULT
Definition: global_enums.h:52
@ NUM_BMS_RELAY_STATES
Definition: global_enums.h:53
@ CC_STEERING_CRUISE_CONTROL_INCREASE_BIT
Definition: global_enums.h:120
@ CC_STEERING_CRUISE_CONTROL_TOGGLE_BIT
Definition: global_enums.h:121
@ CC_STEERING_CRUISE_CONTROL_DECREASE_BIT
Definition: global_enums.h:119