state.h 957 B

1234567891011121314151617181920212223242526272829303132
  1. #ifndef _BMS_STATE_H__
  2. #define _BMS_STATE_H__
  3. #include "bsp/shark_bsp.h"
  4. #define BATT_USED_BY_NONE 0
  5. #define BATT_USED_BY_MOTOR_BIKE 1
  6. #define BATT_USED_BY_CHARGER_DOCKER 2
  7. #define HATT_USED_BY_CHARGER_BOX 3
  8. typedef struct{
  9. uint32_t hall_1_detect:1;
  10. uint32_t hall_2_detect:1;
  11. uint32_t discharging :1;
  12. uint32_t charging: 1;
  13. uint32_t charger_detect :1;
  14. uint32_t pack_balancing:1;
  15. uint32_t mosfet_charger:1; //charger MOS open/close, synced with 5238
  16. uint32_t mosfet_discharger:1; //discharger MOS open/close, synced with 5238
  17. uint32_t small_current_switch:1;
  18. float small_current;
  19. float load_current;//may be discharger or charger current
  20. int pcb_temp;
  21. int pack_temp[PACK_TEMPS_NUM];
  22. uint16_t cell_vol[CELLS_NUM]; //mV
  23. int used_by;//where this battery is used for: on motor, on charger docker, on charger box, NONE
  24. }bms_state_t;
  25. void bms_state_init(void);
  26. bms_state_t * bms_state_get(void);
  27. #endif /* _BMS_STATE_H__ */