shark_bsp.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #pragma once
  2. #define SHARK_BOARD_SP600 1
  3. #define SHARK_BOARD_SP700 2
  4. #define SHARK_BOARD_SP600_15AH 3
  5. #define SHARK_BOARD_SP700_OLD_CS1180 1
  6. #define true TRUE
  7. #define false FALSE
  8. #ifdef CONFIG_BOARD_SP600
  9. #include "gd32f3x0.h"
  10. #define CONFIG_BOARD_TYPE SHARK_BOARD_SP600
  11. #elif defined(CONFIG_BOARD_SP700)
  12. #include "gd32f3x0.h"
  13. #define CONFIG_BOARD_TYPE SHARK_BOARD_SP700
  14. #elif defined(CONFIG_BOARD_SP600_15AH)
  15. #include "gd32f3x0.h"
  16. #define CONFIG_BOARD_TYPE SHARK_BOARD_SP600_15AH
  17. #else
  18. #error "Invalid Board"
  19. #endif
  20. #if (CONFIG_BOARD_TYPE==SHARK_BOARD_SP700)
  21. #define r_resistor 1.0f // 1ºÁÅ·
  22. #define MAX_HA (30.0f)
  23. #elif (CONFIG_BOARD_TYPE==SHARK_BOARD_SP600)
  24. #define r_resistor 2.0f
  25. #define MAX_HA (22.5f)
  26. #elif (CONFIG_BOARD_TYPE==SHARK_BOARD_SP600_15AH)
  27. #define r_resistor 2.0f
  28. #define MAX_HA (15.0f)
  29. #endif
  30. #define CELLS_NUM 15
  31. #define PACK_TEMPS_NUM 4
  32. #define PCB_TEMP_INDEX 3
  33. #define GD32_ADC 0
  34. #define CS1180_ADC 1
  35. #define UART_TIMEOUT 3000
  36. #define CHARGER_DETECT_IRQ_CLEAR_TIMEOUT (UART_TIMEOUT + 2 * 1000)
  37. void bsp_init(void);
  38. void wdog_start(int timeout);
  39. void wdog_reload(void);
  40. void wdog_set_timeout(int timeout);
  41. void systick_close(void);
  42. void systick_open(void);