chore: sync local state

This commit is contained in:
2025-12-16 09:12:17 +02:00
parent 7f7195a213
commit 05193dda35
1250 changed files with 45860 additions and 36013 deletions

View File

@@ -35,20 +35,29 @@
#include "driver/gpio.h"
// GPIO assignment
#define LED_STRIP1_BLINK_GPIO 6
#define LED_STRIP2_BLINK_GPIO 7
#define LED_STRIP1_BLINK_GPIO 4
#define LED_STRIP2_BLINK_GPIO 5
#define KEY1 GPIO_NUM_2
#define KEY2 GPIO_NUM_3
#define SOUND_OUT1 GPIO_NUM_12
#define SOUND_OUT2 GPIO_NUM_13
// Numbers of the LED in the strip
#define LED_STRIP_LED_NUMBERS 56
#define LED_STRIP_LED_NUMBERS 53
// 10MHz resolution, 1 tick = 0.1us (led strip needs a high resolution)
//#define LED_STRIP_RMT_RES_HZ (10 * 1000 * 1000)
// TEst to slower speed
#define LED_STRIP_RMT_RES_HZ (10 * 1000 * 1000)
led_strip_handle_t led_strip1;
led_strip_handle_t led_strip2;
bool key1_action = false;
bool key2_action = false;
#define EXAMPLE_ESP_WIFI_SSID CONFIG_ESP_WIFI_SSID
#define EXAMPLE_ESP_WIFI_PASS CONFIG_ESP_WIFI_PASSWORD
#define EXAMPLE_MAX_STA_CONN CONFIG_ESP_MAX_STA_CONN
@@ -200,8 +209,7 @@ void strip_init()
}
bool key1_action = false;
bool key2_action = false;
static void IRAM_ATTR isrButtonPress(void* arg)
{
@@ -232,12 +240,12 @@ void isr_init()
// Настраиваем вывод для кнопки
gpio_reset_pin(KEY1);
gpio_set_direction(KEY1, GPIO_MODE_INPUT);
gpio_set_pull_mode(KEY1, GPIO_FLOATING);
gpio_set_pull_mode(KEY1, GPIO_PULLUP_ENABLE);
gpio_reset_pin(KEY2);
gpio_set_direction(KEY2, GPIO_MODE_INPUT);
gpio_set_pull_mode(KEY2, GPIO_FLOATING);
gpio_set_pull_mode(KEY2, GPIO_PULLUP_ENABLE);
// Регистрируем обработчик прерывания на нажатие кнопки
gpio_isr_handler_add(KEY1, isrButtonPress, (void*) KEY1);
@@ -291,6 +299,24 @@ void blink_strip(uint32_t nled, uint32_t count, uint32_t period)
ESP_ERROR_CHECK(led_strip_clear(led_strip2));
}
void sound_control_init()
{
gpio_reset_pin(SOUND_OUT1);
gpio_set_direction(SOUND_OUT1, GPIO_MODE_OUTPUT);
gpio_reset_pin(SOUND_OUT2);
gpio_set_direction(SOUND_OUT2, GPIO_MODE_OUTPUT);
}
void play_sound(uint32_t sound)
{
if (sound) gpio_set_level(SOUND_OUT1, 1); else gpio_set_level(SOUND_OUT2, 1);
vTaskDelay(pdMS_TO_TICKS(80));
if (sound) gpio_set_level(SOUND_OUT1, 0); else gpio_set_level(SOUND_OUT2, 0);
vTaskDelay(pdMS_TO_TICKS(200));
}
void app_main(void)
{
/*
@@ -303,6 +329,7 @@ void app_main(void)
strip_init();
isr_init();
sound_control_init();
// Initialize networking stack
//ESP_ERROR_CHECK(esp_netif_init());
@@ -333,20 +360,26 @@ void app_main(void)
if (key1_action){
ESP_LOGI(TAG, "KEY1 Action");
key1_action = false;
play_sound(0);
blink_strip(1,10,100);
gpio_intr_enable(KEY1);
gpio_intr_enable(KEY2);
}
if (key2_action){
ESP_LOGI(TAG, "KEY2 Action");
key2_action = false;
play_sound(1);
blink_strip(2,10,100);
gpio_intr_enable(KEY1);
gpio_intr_enable(KEY2);
}
vTaskDelay(pdMS_TO_TICKS(10));
// blink_strip(1,10,100);
// blink_strip(2,10,100);
// vTaskDelay(pdMS_TO_TICKS(1000));
// vTaskDelay(pdMS_TO_TICKS(10));
}
}