Modular v1
This commit is contained in:
@@ -41,6 +41,7 @@
|
||||
#include "freertos/queue.h"
|
||||
#include "esp_zigbee_core.h"
|
||||
#include "switch_driver.h"
|
||||
#include "device_config.h"
|
||||
#include "led_indicator.h"
|
||||
|
||||
/* Estado atual do relay */
|
||||
@@ -208,6 +209,7 @@ bool switch_driver_init(switch_func_pair_t *button_func_pair, uint8_t button_num
|
||||
|
||||
void relay_driver_init(void)
|
||||
{
|
||||
#ifdef DEVICE_TYPE_RELAY
|
||||
gpio_config_t io_conf = {};
|
||||
io_conf.intr_type = GPIO_INTR_DISABLE;
|
||||
io_conf.mode = GPIO_MODE_OUTPUT;
|
||||
@@ -220,10 +222,12 @@ void relay_driver_init(void)
|
||||
gpio_set_level(GPIO_OUTPUT_RELAY, 0);
|
||||
relay_state = false;
|
||||
ESP_LOGI(TAG, "Relay inicializado no GPIO %d", GPIO_OUTPUT_RELAY);
|
||||
#endif
|
||||
}
|
||||
|
||||
void relay_set_state(bool state)
|
||||
{
|
||||
#ifdef DEVICE_TYPE_RELAY
|
||||
relay_state = state;
|
||||
gpio_set_level(GPIO_OUTPUT_RELAY, state ? 1 : 0);
|
||||
|
||||
@@ -231,14 +235,21 @@ void relay_set_state(bool state)
|
||||
led_indicator_set_state(state ? LED_RELAY_ON : LED_RELAY_OFF);
|
||||
|
||||
ESP_LOGI(TAG, "Relay %s", state ? "LIGADO" : "DESLIGADO");
|
||||
#endif
|
||||
}
|
||||
|
||||
void relay_toggle(void)
|
||||
{
|
||||
#ifdef DEVICE_TYPE_RELAY
|
||||
relay_set_state(!relay_state);
|
||||
#endif
|
||||
}
|
||||
|
||||
bool relay_get_state(void)
|
||||
{
|
||||
#ifdef DEVICE_TYPE_RELAY
|
||||
return relay_state;
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user