Просмотр исходного кода

加入复位原因的log

Signed-off-by: huhui <huhui@sharkgulf.com>
huhui 5 лет назад
Родитель
Сommit
ce6c31b203
2 измененных файлов с 10 добавлено и 1 удалено
  1. 3 0
      Application/app/sox/state.c
  2. 7 1
      Application/bsp/bsp.c

+ 3 - 0
Application/app/sox/state.c

@@ -18,6 +18,8 @@
 #define ALLOW_POWER_DOWN 1 //disable power down for debug
 #define ALLOW_POWER_DOWN 1 //disable power down for debug
 #define ALLOW_5238_BALANCE 1
 #define ALLOW_5238_BALANCE 1
 #define IGNORE_DISCHARGER_LOW_VOL 0 //ºöÂԷŵçǷѹ
 #define IGNORE_DISCHARGER_LOW_VOL 0 //ºöÂԷŵçǷѹ
+extern uint32_t bsp_get_rst_reson(void);
+
 static void _current_notify(void);
 static void _current_notify(void);
 static void _voltage_notify(void);
 static void _voltage_notify(void);
 static void _temperature_notify(void);
 static void _temperature_notify(void);
@@ -103,6 +105,7 @@ void bms_state_log(void){
 	state_debug("ml5238 cali: %d\n", ml5238_cali_count);
 	state_debug("ml5238 cali: %d\n", ml5238_cali_count);
 	state_debug("ps charger mask:in %d, %d\n", _bms_state.ps_charger_mask, _bms_state.ps_charger_in);
 	state_debug("ps charger mask:in %d, %d\n", _bms_state.ps_charger_mask, _bms_state.ps_charger_in);
 	state_debug("open dfet %d - %d - %d - %d\n", open_dfet, open_dfet_failt, close_dfet_reson, close_dfet_no_hall);
 	state_debug("open dfet %d - %d - %d - %d\n", open_dfet, open_dfet_failt, close_dfet_reson, close_dfet_no_hall);
+	state_debug("Reset Reson 0x%x\n", bsp_get_rst_reson());
 #if 0
 #if 0
 	state_debug("Charging: %d\n", _bms_state.charging);
 	state_debug("Charging: %d\n", _bms_state.charging);
 	state_debug("WorkMode %d\n", _bms_state.work_mode);
 	state_debug("WorkMode %d\n", _bms_state.work_mode);

+ 7 - 1
Application/bsp/bsp.c

@@ -24,14 +24,16 @@ extern void gpio_key_init(void);
 #ifndef CONFIG_DEBUG
 #ifndef CONFIG_DEBUG
 #define CONFIG_DEBUG 0
 #define CONFIG_DEBUG 0
 #endif
 #endif
-
+static uint32_t reset_source = 0;
 //all board's low level init is here
 //all board's low level init is here
 void bsp_init(void){
 void bsp_init(void){
+	reset_source = RCU_RSTSCK;
 	wdog_start(4);
 	wdog_start(4);
 	shark_rtc_init();
 	shark_rtc_init();
 	enable_mcu_power();
 	enable_mcu_power();
 	system_clock_config(); //after dcdc open, MCU can run on full speed
 	system_clock_config(); //after dcdc open, MCU can run on full speed
 	SystemCoreClockUpdate();
 	SystemCoreClockUpdate();
+	rcu_all_reset_flag_clear();
 	gpio_init();
 	gpio_init();
 	set_log_level(MOD_SYSTEM, L_debug);
 	set_log_level(MOD_SYSTEM, L_debug);
 	shark_uart_init(SHARK_UART0);
 	shark_uart_init(SHARK_UART0);
@@ -43,6 +45,10 @@ void bsp_init(void){
 	gpio_key_init();
 	gpio_key_init();
 }
 }
 
 
+uint32_t bsp_get_rst_reson(void){
+	return reset_source;
+}
+
 void systick_close(void)
 void systick_close(void)
 {
 {
 	SysTick->CTRL  &= ~SysTick_CTRL_ENABLE_Msk;
 	SysTick->CTRL  &= ~SysTick_CTRL_ENABLE_Msk;