Files
kunlun/export/inc/bsp/iot_energe_meter_api.h
2024-09-28 14:24:04 +08:00

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*/