add net manager
This commit is contained in:
70
components/meter_manager/driver/meter_ade7758/meter_ade7758.h
Executable file
70
components/meter_manager/driver/meter_ade7758/meter_ade7758.h
Executable file
@@ -0,0 +1,70 @@
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
#include "esp_err.h"
|
||||
|
||||
/**
|
||||
* @brief Inicializa o driver do medidor ADE7758 (SPI, mutex, registradores).
|
||||
*/
|
||||
esp_err_t meter_ade7758_init(void);
|
||||
|
||||
/**
|
||||
* @brief Inicia a tarefa de leitura de dados do medidor ADE7758.
|
||||
*/
|
||||
esp_err_t meter_ade7758_start(void);
|
||||
|
||||
/**
|
||||
* @brief Para a tarefa de leitura e limpa os dados internos do medidor ADE7758.
|
||||
*/
|
||||
void meter_ade7758_stop(void);
|
||||
|
||||
/**
|
||||
* @brief Verifica se o medidor ADE7758 está em execução.
|
||||
*
|
||||
* @return true se a tarefa estiver ativa, false caso contrário.
|
||||
*/
|
||||
bool meter_ade7758_is_running(void);
|
||||
|
||||
/**
|
||||
* @brief Limpa os dados armazenados no medidor ADE7758 (zera todos os valores).
|
||||
*/
|
||||
void meter_ade7758_clear_data(void);
|
||||
|
||||
// ----- Leituras por fase (L1, L2, L3) -----
|
||||
|
||||
// Tensão RMS (em volts)
|
||||
float meter_ade7758_get_vrms_l1(void);
|
||||
float meter_ade7758_get_vrms_l2(void);
|
||||
float meter_ade7758_get_vrms_l3(void);
|
||||
|
||||
// Corrente RMS (em amperes)
|
||||
float meter_ade7758_get_irms_l1(void);
|
||||
float meter_ade7758_get_irms_l2(void);
|
||||
float meter_ade7758_get_irms_l3(void);
|
||||
|
||||
// Potência ativa (W)
|
||||
int meter_ade7758_get_watt_l1(void);
|
||||
int meter_ade7758_get_watt_l2(void);
|
||||
int meter_ade7758_get_watt_l3(void);
|
||||
|
||||
// Potência reativa (VAR)
|
||||
int meter_ade7758_get_var_l1(void);
|
||||
int meter_ade7758_get_var_l2(void);
|
||||
int meter_ade7758_get_var_l3(void);
|
||||
|
||||
// Potência aparente (VA)
|
||||
int meter_ade7758_get_va_l1(void);
|
||||
int meter_ade7758_get_va_l2(void);
|
||||
int meter_ade7758_get_va_l3(void);
|
||||
|
||||
// (Opcional) contador de watchdog para diagnóstico
|
||||
uint32_t meter_ade7758_get_watchdog_counter(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user