Add WS2812 status module and config
This commit is contained in:
12
main/main.c
12
main/main.c
@@ -6,6 +6,7 @@
|
||||
|
||||
#include "dcdc_controller.h"
|
||||
#include "usb_cdc_cli.h"
|
||||
#include "ws2812_status.h"
|
||||
|
||||
static const char *TAG = "watch-watch";
|
||||
|
||||
@@ -13,9 +14,17 @@ void app_main(void)
|
||||
{
|
||||
if (dcdc_init() != ESP_OK) {
|
||||
ESP_LOGE(TAG, "Помилка ініціалізації DCDC контролера");
|
||||
ws2812_status_init();
|
||||
ws2812_status_set_error(true);
|
||||
return;
|
||||
}
|
||||
|
||||
if (ws2812_status_init() == ESP_OK) {
|
||||
ws2812_status_refresh_from_dcdc();
|
||||
} else {
|
||||
ESP_LOGW(TAG, "WS2812 статусний індикатор недоступний");
|
||||
}
|
||||
|
||||
if (usb_cdc_cli_init() != ESP_OK) {
|
||||
ESP_LOGW(TAG, "USB CDC CLI недоступний");
|
||||
} else {
|
||||
@@ -30,10 +39,13 @@ void app_main(void)
|
||||
for (size_t ch = 0; ch < dcdc_channel_count(); ++ch) {
|
||||
if (prev_channel != ch) {
|
||||
dcdc_disable(prev_channel);
|
||||
ws2812_status_set_channel_state(prev_channel, false);
|
||||
}
|
||||
|
||||
ESP_LOGI(TAG, "-> Ввімкнення каналу %d", (int)ch);
|
||||
dcdc_enable(ch);
|
||||
ws2812_status_set_channel_state(ch, true);
|
||||
ws2812_status_mark_active(ch);
|
||||
vTaskDelay(on_time);
|
||||
|
||||
prev_channel = ch;
|
||||
|
||||
Reference in New Issue
Block a user