Files
AC707N/SDK/apps/watch/include/app_charge.h
T
2025-12-03 11:12:34 +08:00

37 lines
1.1 KiB
C

#ifndef _APP_CHARGE_H_
#define _APP_CHARGE_H_
#include "typedef.h"
#include "system/event.h"
#define LDO5V_OFF_TYPE_NORMAL_ON 0 //正常拔出开机
#define LDO5V_OFF_TYPE_NORMAL_OFF 1 //正常拔出关机
#define LDO5V_OFF_TYPE_LOWPOWER_OFF 2 //低电关机
#define LDO5V_OFF_TYPE_CHARGESTORE_OFF 3 //智能充电舱关机
struct app_charge_handler {
int (*handler)(int msg, int type);
};
#define APP_CHARGE_HANDLER(charge_handler, prio) \
const struct app_charge_handler charge_handler sec(.app_charge_handler.prio)
extern const struct app_charge_handler app_charge_handler_begin[];
extern const struct app_charge_handler app_charge_handler_end[];
#define for_each_app_charge_handler(p) \
for (p = app_charge_handler_begin; p < app_charge_handler_end; p++)
extern void charge_close_deal(void);
extern void charge_start_deal(void);
extern void ldo5v_keep_deal(void);
extern void charge_full_deal(void);
extern void charge_ldo5v_in_deal(void);
extern void charge_ldo5v_off_deal(void);
extern u8 get_charge_full_flag(void);
extern void app_charge_power_off_keep_mode();
#endif //_APP_CHARGE_H_