nt9856x/rtos/code/driver/na51089/include/sf_battery.h

45 lines
1.5 KiB
C

#ifndef _SF_BATTERY_H
#define _SF_BATTERY_H
#include <kwrap/task.h>
typedef signed int SINT32;
typedef enum {
SF_POWER_TYPE_DC = (unsigned char)0x01,
SF_POWER_TYPE_LI_POLYER,
SF_POWER_TYPE_AA
} SF_POWERTYPE_E;
UINT32 sf_battery_voltage_convert(UINT32 resistanceGnd, UINT32 resistanceVin, UINT32 adcVal);
UINT32 sf_battery_convert_to_adc(UINT32 resistanceGnd, UINT32 resistanceVin, UINT32 volt);
UINT32 sf_get_max_value(UINT32 *_ValueList);
UINT32 sf_adc_value_get(UINT32 mux, UINT32 *pval);
UINT32 sf_battery_adc_value_get_once(void);
void sf_battery_level_update(void);
BOOL sf_check_low_battery(void);
SINT32 sf_battery_adc_value_get(void);
void sf_battery_level_polling(void);
THREAD_RETTYPE sf_battery_check_thread(void *arg);
void sf_battery_thread_init(void);
UINT8 sf_get_night_led_flag(void);
void sf_set_night_led_flag(UINT8 flag);
UINT32 sf_battery_level_get(void);
void sf_view_osd_battery_draw(UINT8 bShow);
UINT8 sf_battery_value_get(UINT8 nightMode);
UINT8 sf_battery_type_get(void);
BOOL sf_battery_check_init(void);
void sf_set_need_check_first(void);
BOOL sf_is_enough_power_to_update(void);
void sf_adc_init(void);
BOOL sf_is_battery_low(UINT8 refresh, UINT8 nightMode);
INT16 sf_adc2Temperature(UINT16 adcValue, UINT8 type);/*type: 0:F 1:C*/
void sf_stamp_temperature_get(INT16 *fTem,INT16 *cTem); /*0:F 1:C*/
void sf_temper_update(void);
INT16 sf_celsius_change_to_fahrenheit(INT16 cTemper);
void sf_BatteryInfoSave(char *name);
UINT32 sf_get_temper_adc(void);
UINT8 sf_solar_to_Lunar(UINT16 Year,UINT8 Month, UINT8 Day);
#endif