Midnight Sun Firmware
Loading...
Searching...
No Matches
current_sense.h
1#pragma once
2
3/************************************************************************************************
4 * @file curretn_sense.h
5 *
6 * @brief Current sensing for Rear_Controller
7 *
8 * @date 2025-09-17
9 * @author Midnight Sun Team #24 - MSXVI
10 ************************************************************************************************/
11
12/* Standard library Headers */
13
14/* Inter-component Headers */
15#include "status.h"
16
17/* Intra-component Headers */
18#include "current_acs37800.h"
19#include "rear_controller.h"
20
27#define IS_USING_CURRENT_SENSE_REV_3 1U
28
29#if (IS_USING_CURRENT_SENSE_REV_3 != 0U)
30typedef struct {
31 uint8_t fsr; /* FSR = Vref / Gain */
32 uint8_t mux_config_shunt; /* shunt inputs */
33 uint8_t mux_config_hv; /* HV_bus inputs*/
34 float shunt_resistance_ohm; /* shunt resistance in ohms*/
35 uint32_t resistance_R6_ohm; /* resistance of R6 in ohms*/
36 uint32_t resistance_R7_ohm; /* resistance of R7 in ohms */
38
39#endif
40
48
55
StatusCode current_sense_run()
Run a current sensing cycle to update pack voltage and pack current readings.
Definition: current_sense.c:220
StatusCode current_sense_init(RearControllerStorage *rear_controller_storage)
Initializes the current sense sub-system.
Definition: current_sense.c:297
StatusCode
StatusCodes for various errors.
Definition: status.h:27
Definition: current_sense.h:30
Definition: rear_controller.h:45