pwr_messages.h
来自「是一个手机功能的模拟程序」· C头文件 代码 · 共 138 行
H
138 行
/*******************************************************************************
*
* pwr_messages.h
*
* Purpose: Contains definitions used by PWR SWE to send events
* to the upper layer (MMI)
*
* Author Candice Bazanegue (c-brille@ti.com)
*
* (C) Texas Instruments 2001
*
******************************************************************************/
#ifndef __PWR_MESSAGES_H__
#define __PWR_MESSAGES_H__
#include "rv_general.h"
#include "pwr_api.h"
#include "pwr_env.h"
#include "spi_api.h"
typedef struct
{
UINT16 battery_voltage;
INT16 battery_temperature;
UINT16 battery_charger_current;
BOOLEAN charger_plugged;
T_PWR_CHARGING_STATE charge_started;
T_PWR_PERCENT remaining_capacity;
} T_PWR_BAT_INFO;
#define PWR_SEND_MESSAGE(mmi_return_path, \
message_p) \
{ \
if ((mmi_return_path).callback_func != NULL) \
{ \
((mmi_return_path).callback_func) (message_p); \
} \
else \
{ \
if ((mmi_return_path).addr_id != RVF_INVALID_ADDR_ID) \
{ \
(void) rvf_send_msg ((mmi_return_path).addr_id, \
(message_p)); \
} \
else \
{ \
rvf_free_buf((T_RVF_BUFFER *) message_p); \
} \
} \
}
/* Events that can be sent by the power SWE API to the MMI */
#define POWER_CHARGER_PLUG_IND 1
#define POWER_CHARGER_UNPLUG_IND 2
#define POWER_BAT_CI_CHARGE_START_IND 3
#define POWER_BAT_CV_CHARGE_START_IND 4
#define POWER_BAT_CHARGE_STOP_IND 5
#define POWER_BAT_CHARGE_NOT_POSSIBLE_IND 6
#define POWER_BAT_DISCHARGE_LEVEL_IND 7
#define POWER_LOW_BAT_ALERT_IND 8
#define POWER_BAT_INFO_STATUS 9
/* Structures of messages */
typedef struct
{ T_RV_HDR hdr;
INT8 status;
} T_PWR_BAT_CHARGE_STOP;
typedef struct
{ T_RV_HDR hdr;
T_BAT_PROBLEM problem;
} T_PWR_BAT_CHARGE_NOT_POSSIBLE;
typedef struct
{ T_RV_HDR hdr;
T_PWR_PERCENT remaining_capacity;
} T_PWR_BAT_DISCHARGE_LEVEL;
typedef struct
{ T_RV_HDR hdr;
T_PWR_PERCENT remaining_capacity;
} T_PWR_LOW_BAT_ALERT;
typedef struct
{ T_RV_HDR hdr;
T_PWR_BAT_INFO bat_info;
} T_PWR_BAT_INFO_STATUS;
typedef struct
{ T_RV_HDR hdr;
BOOLEAN info_enable;
T_RV_RETURN return_path;
} T_PWR_SPI_INFO_REG;
typedef struct
{ T_RV_HDR hdr;
T_PWR_PERCENT remain_capa_threshold;
T_RV_RETURN return_path;
} T_PWR_SPI_ALERT_REG;
typedef struct
{ T_RV_HDR hdr;
T_RV_RETURN return_path;
} T_PWR_SPI_EMERGENCY_REG;
/* Prototypes */
/* Functions used to send messages to the upper layer */
T_RV_RET pwr_send_charger_plug_event(void);
T_RV_RET pwr_send_charger_unplug_event(void);
T_RV_RET pwr_send_CI_charge_start_event(void);
T_RV_RET pwr_send_CV_charge_start_event(void);
T_RV_RET pwr_send_charge_stop_event(void);
T_RV_RET pwr_send_charge_not_possible_event(T_BAT_PROBLEM charge_problem);
T_RV_RET pwr_send_bat_discharge_event(T_PWR_PERCENT remaining_capacity);
T_RV_RET pwr_send_low_bat_event(T_PWR_PERCENT remaining_capacity);
T_RV_RET pwr_send_battery_info(UINT16 battery_voltage, UINT16 battery_temperature,
UINT16 battery_charger_current,
BOOLEAN is_charger_plugged,
T_PWR_CHARGING_STATE is_charge_started,
T_PWR_PERCENT remaining_capacity);
#endif /* __PWR_MESSAGES_H__ */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?