72 lines
1.3 KiB
C
72 lines
1.3 KiB
C
#ifndef EVSE_HARDWARE_H
|
|
#define EVSE_HARDWARE_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include <stdbool.h>
|
|
#include <stdint.h>
|
|
|
|
/**
|
|
* @brief Inicializa todos os periféricos de hardware do EVSE (pilot, relé, trava, etc.)
|
|
*/
|
|
void evse_hardware_init(void);
|
|
|
|
/**
|
|
* @brief Executa atualizações periódicas no hardware (tick)
|
|
*/
|
|
void evse_hardware_tick(void);
|
|
|
|
/**
|
|
* @brief Verifica se o sinal piloto está em nível alto (12V)
|
|
*/
|
|
bool evse_hardware_is_pilot_high(void);
|
|
|
|
/**
|
|
* @brief Verifica se o veículo está fisicamente conectado via Proximity
|
|
*/
|
|
bool evse_hardware_is_vehicle_connected(void);
|
|
|
|
/**
|
|
* @brief Verifica se há consumo de energia (corrente detectada)
|
|
*/
|
|
bool evse_hardware_is_energy_detected(void);
|
|
|
|
/**
|
|
* @brief Liga o relé de fornecimento de energia
|
|
*/
|
|
void evse_hardware_relay_on(void);
|
|
|
|
/**
|
|
* @brief Desliga o relé de fornecimento de energia
|
|
*/
|
|
void evse_hardware_relay_off(void);
|
|
|
|
/**
|
|
* @brief Consulta o estado atual do relé
|
|
* @return true se ligado, false se desligado
|
|
*/
|
|
bool evse_hardware_relay_status(void);
|
|
|
|
/**
|
|
* @brief Aciona a trava física do conector
|
|
*/
|
|
void evse_hardware_lock(void);
|
|
|
|
/**
|
|
* @brief Libera a trava física do conector
|
|
*/
|
|
void evse_hardware_unlock(void);
|
|
|
|
/**
|
|
* @brief Verifica se o conector está travado
|
|
*/
|
|
bool evse_hardware_is_locked(void);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // EVSE_HARDWARE_H
|