38 lines
1.0 KiB
C
38 lines
1.0 KiB
C
#ifndef EVSE_METER_H
|
|
#define EVSE_METER_H
|
|
|
|
#include <stdint.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#define EVSE_METER_PHASE_COUNT 3
|
|
|
|
/// Inicializa o módulo EVSE Meter e registra os tratadores de eventos
|
|
void evse_meter_init(void);
|
|
|
|
/// Retorna a potência instantânea (soma das 3 fases, em watts)
|
|
uint32_t evse_meter_get_instant_power(void);
|
|
|
|
/// Retorna a energia total acumulada (em Wh)
|
|
uint32_t evse_meter_get_total_energy(void);
|
|
|
|
/// Retorna as potências instantâneas nas fases L1, L2 e L3 (em watts)
|
|
void evse_meter_get_power(uint32_t power[EVSE_METER_PHASE_COUNT]);
|
|
|
|
/// Retorna as tensões medidas nas fases L1, L2 e L3 (em volts)
|
|
void evse_meter_get_voltage(float voltage[EVSE_METER_PHASE_COUNT]);
|
|
|
|
/// Retorna as correntes medidas nas fases L1, L2 e L3 (em amperes)
|
|
void evse_meter_get_current(float current[EVSE_METER_PHASE_COUNT]);
|
|
|
|
/// Handler interno para eventos do medidor (não chamar externamente)
|
|
void evse_meter_on_meter_event(void* arg, void* event_data);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // EVSE_METER_H
|