59 lines
1.2 KiB
C
59 lines
1.2 KiB
C
#pragma once
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include <stdint.h>
|
|
#include <stdbool.h>
|
|
#include "esp_err.h"
|
|
|
|
/**
|
|
* @brief Inicializa o driver DDS665 em modo compatível antigo: GRID / slave ID 1.
|
|
*/
|
|
esp_err_t meter_dds665_init(void);
|
|
|
|
/**
|
|
* @brief Regista DDS665 como meter GRID no slave ID 1.
|
|
*/
|
|
esp_err_t meter_dds665_grid_init(void);
|
|
|
|
/**
|
|
* @brief Regista DDS665 como meter EVSE no slave ID 2.
|
|
*/
|
|
esp_err_t meter_dds665_evse_init(void);
|
|
|
|
/**
|
|
* @brief Inicia a task partilhada de leitura DDS665.
|
|
*/
|
|
esp_err_t meter_dds665_start(void);
|
|
|
|
/**
|
|
* @brief Inicia a task partilhada de leitura DDS665 para GRID.
|
|
*/
|
|
esp_err_t meter_dds665_grid_start(void);
|
|
|
|
/**
|
|
* @brief Inicia a task partilhada de leitura DDS665 para EVSE.
|
|
*/
|
|
esp_err_t meter_dds665_evse_start(void);
|
|
|
|
/**
|
|
* @brief Para/remove DDS665 GRID em modo compatível antigo.
|
|
*/
|
|
void meter_dds665_stop(void);
|
|
|
|
/**
|
|
* @brief Remove DDS665 GRID; só destrói o Modbus master se não houver EVSE registado.
|
|
*/
|
|
void meter_dds665_grid_stop(void);
|
|
|
|
/**
|
|
* @brief Remove DDS665 EVSE; só destrói o Modbus master se não houver GRID registado.
|
|
*/
|
|
void meter_dds665_evse_stop(void);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|