
#ifndef BL_ABNORMAL_MANAGE_H_
#define BL_ABNORMAL_MANAGE_H_

#include "FM_TIM.h"
#include "comm_types.h"
#include "FM_GPIO.h"



BOOL getChargOverLoad(void);

uint8_t getShortCircuit(void);
void zeroShortCircuit(void);
void setShortCircuitFlag(BOOL state);
BOOL getShortCircuitFlag(void);

void zeroExcessiveLoad(void);
uint8_t getExcessiveLoad(void);
void setExcessiveLoadFlag(BOOL state);
BOOL getExcessiveLoadFlag(void);

void setSoftShortCircuit(uint16_t disChargCurrAdcNum);

void setPowerOutput(BOOL state);

void checkAbnormal(void);

void WORK_VOLT_Interrupt(void);
void DSG_PROT_Interrupt(void);
void EXCHG_PROT_Interrupt(void);

#endif