ACwing FC firmware
STM32WB55: attitude IEKF, altitude Kalman filter, flight core, protocol v2
Loading...
Searching...
No Matches
batt_task.h
Go to the documentation of this file.
1
20#ifndef BATT_TASK_H
21#define BATT_TASK_H
22
23#include <stdint.h>
24#include "battery.h"
25
26#define BATT_TASK_PERIOD_MS 20u
27
28typedef struct {
31 int (*adc_read)(float *vbat_pin, float *cur_pin);
33
35typedef struct {
36 uint16_t count;
37 float used_mah;
38 float scale_i;
40
41void batt_task_init(const batt_task_cfg_t *cfg);
42void batt_task_step(uint32_t now_ms);
43
45int batt_task_post_scales(float scale_v, float scale_i);
46
49
50#ifndef HOST_TEST
51void batt_task_start(const batt_task_cfg_t *cfg);
52#endif
53
54#endif /* BATT_TASK_H */
void batt_task_last_flight(batt_flight_t *out)
last flight (any task, seqlock)
Definition batt_task.c:46
void batt_task_step(uint32_t now_ms)
Definition batt_task.c:58
int batt_task_post_scales(float scale_v, float scale_i)
AppTask -> BattTask: new calibration scales; 0 = queued.
Definition batt_task.c:40
void batt_task_init(const batt_task_cfg_t *cfg)
Definition batt_task.c:27
void batt_task_start(const batt_task_cfg_t *cfg)
Definition batt_task.c:124
Battery monitor: voltage, current, consumed charge, cell count, state of charge, flight time left and...
last flight summary (AppTask persists it for the BATTERY calibration)
Definition batt_task.h:35
float used_mah
charge used between ARM and DISARM
Definition batt_task.h:37
uint16_t count
flights finished since boot
Definition batt_task.h:36
float scale_i
current scale it was counted with
Definition batt_task.h:38
batt_cfg_t batt
sensor gains, scales at boot
Definition batt_task.h:29