From d729ade2497eb780a702e6adaf979e084b907791 Mon Sep 17 00:00:00 2001 From: Brian Bulkowski Date: Fri, 28 Feb 2020 00:57:35 -0800 Subject: [PATCH] Update test code, have three different interesting blinking patterns. --- main/main.cpp | 99 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 91 insertions(+), 8 deletions(-) diff --git a/main/main.cpp b/main/main.cpp index 6f46063..841586b 100644 --- a/main/main.cpp +++ b/main/main.cpp @@ -7,10 +7,12 @@ CONDITIONS OF ANY KIND, either express or implied. */ #include +#include #include "freertos/FreeRTOS.h" #include "freertos/task.h" #include "esp_system.h" #include "esp_spi_flash.h" + #include "FastLED.h" CRGBPalette16 currentPalette; TBlendType currentBlending; @@ -20,11 +22,11 @@ extern const TProgmemPalette16 IRAM_ATTR myRedWhiteBluePalette_p; #include "palettes.h" -#define NUM_LEDS 400 -#define DATA_PIN 15 +#define NUM_LEDS 40 +#define DATA_PIN 18 #define BRIGHTNESS 64 #define LED_TYPE WS2811 -#define COLOR_ORDER GRB +#define COLOR_ORDER RGB CRGB leds[NUM_LEDS]; @@ -32,6 +34,7 @@ extern "C" { void app_main(); } + void ChangePalettePeriodically(){ uint8_t secondHand = (millis() / 1000) % 60; @@ -53,8 +56,10 @@ void ChangePalettePeriodically(){ } } -void blinkLeds(void *pvParameters){ + +void blinkLeds_interesting(void *pvParameters){ while(1){ + printf("blink leds\n"); ChangePalettePeriodically(); static uint8_t startIndex = 0; @@ -64,16 +69,94 @@ void blinkLeds(void *pvParameters){ leds[i] = ColorFromPalette( currentPalette, startIndex, 64, currentBlending); startIndex += 3; } - + printf("show leds\n"); FastLED.show(); - delay(40); - } + delay(400); + }; +}; + +#define N_COLORS 17 +CRGB colors[N_COLORS] = { + CRGB::AliceBlue, + CRGB::ForestGreen, + CRGB::Lavender, + CRGB::MistyRose, + CRGB::DarkOrchid, + CRGB::DarkOrange, + CRGB::Black, + CRGB::Red, + CRGB::Green, + CRGB::Blue, + CRGB::White, + CRGB::Teal, + CRGB::Violet, + CRGB::Lime, + CRGB::Chartreuse, + CRGB::BlueViolet, + CRGB::Aqua +}; + +void blinkLeds_simple(void *pvParameters){ + + while(1){ + printf("blink leds\n"); + + for (int j=0;j(leds, NUM_LEDS); + printf(" set max power\n"); FastLED.setMaxPowerInVoltsAndMilliamps(5,1000); - xTaskCreatePinnedToCore(&blinkLeds, "blinkLeds", 4000, NULL, 5, NULL, 0); + printf("create task for led blinking\n"); + xTaskCreatePinnedToCore(&blinkLeds_chase, "blinkLeds", 4000, NULL, 5, NULL, 0); }