101 lines
2.4 KiB
C
Executable File
101 lines
2.4 KiB
C
Executable File
/****************************************************************************
|
|
|
|
Copyright(c) 2019 by Aerospace C.Power (Chongqing) Microelectronics. ALL RIGHTS RESERVED.
|
|
|
|
This Information is proprietary to Aerospace C.Power (Chongqing) Microelectronics and MAY NOT
|
|
be copied by any method or incorporated into another program without
|
|
the express written consent of Aerospace C.Power. This Information or any portion
|
|
thereof remains the property of Aerospace C.Power. The Information contained herein
|
|
is believed to be accurate and Aerospace C.Power assumes no responsibility or
|
|
liability for its use in any way and conveys no license or title under
|
|
any patent or copyright and makes no representation or warranty that this
|
|
Information is free from patent or copyright infringement.
|
|
|
|
****************************************************************************/
|
|
#ifndef IOT_ENERGE_METER_API_H
|
|
#define IOT_ENERGE_METER_API_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef uint32_t (*iot_energe_meter_energe_cb)(uint32_t inc_mWs);
|
|
|
|
/** \defgroup MISC_APIs MISC APIs
|
|
* @brief MISC APIs
|
|
*
|
|
*
|
|
*/
|
|
|
|
/** @addtogroup MISC_APIs
|
|
* @{
|
|
*
|
|
*/
|
|
|
|
|
|
/**
|
|
* @brief iot_energe_meter_init() - enable energe meter sub system
|
|
*
|
|
*/
|
|
void iot_energe_meter_init();
|
|
|
|
/**
|
|
* @brief iot_energe_meter_get_rms_voltage() - get voltage's rms.
|
|
* @return voltage's rms
|
|
*
|
|
*/
|
|
float iot_energe_meter_get_rms_voltage(void);
|
|
|
|
/**
|
|
* @brief iot_energe_meter_get_rms_current() - get current's rms.
|
|
* @return current's rms
|
|
*
|
|
*/
|
|
float iot_energe_meter_get_rms_current(void);
|
|
|
|
/**
|
|
* @brief iot_energe_meter_get_active_power() - get active power.
|
|
* @return active power
|
|
*
|
|
*/
|
|
float iot_energe_meter_get_active_power(void);
|
|
|
|
/**
|
|
* @brief iot_energe_meter_get_reactive_power() - get reactive power.
|
|
* @return reactive power
|
|
*
|
|
*/
|
|
float iot_energe_meter_get_reactive_power(void);
|
|
|
|
/**
|
|
* @brief iot_energe_meter_get_factor() - get power factor.
|
|
* @return power factor
|
|
*
|
|
*/
|
|
float iot_energe_meter_get_power_factor(void);
|
|
|
|
/**
|
|
* @brief iot_energe_meter_get_freq() - get main frequency.
|
|
* @return main frequency
|
|
*
|
|
*/
|
|
uint32_t iot_energe_meter_get_freq(void);
|
|
|
|
/**
|
|
* @brief iot_energe_meter_pwr_cb_register() - register increase pwr callback function.
|
|
* @return ERR_OK or ohters FAIL
|
|
*
|
|
*/
|
|
void iot_energe_meter_pwr_cb_register(iot_energe_meter_energe_cb cb);
|
|
|
|
/**
|
|
* @}
|
|
*/
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /*IOT_ENERGE_METER_API_H*/
|