forked from bbulkow/FastLED-idf
70 lines
1.9 KiB
C
70 lines
1.9 KiB
C
#pragma once
|
|
|
|
#include "FastLED.h"
|
|
|
|
// This function fills the palette with totally random colors.
|
|
void SetupTotallyRandomPalette()
|
|
{
|
|
for( int i = 0; i < 16; i++) {
|
|
currentPalette[i] = CHSV( random8(), 255, random8());
|
|
}
|
|
}
|
|
|
|
// This function sets up a palette of black and white stripes,
|
|
// using code. Since the palette is effectively an array of
|
|
// sixteen CRGB colors, the various fill_* functions can be used
|
|
// to set them up.
|
|
void SetupBlackAndWhiteStripedPalette()
|
|
{
|
|
// 'black out' all 16 palette entries...
|
|
fill_solid( currentPalette, 16, CRGB::Black);
|
|
// and set every fourth one to white.
|
|
currentPalette[0] = CRGB::White;
|
|
currentPalette[4] = CRGB::White;
|
|
currentPalette[8] = CRGB::White;
|
|
currentPalette[12] = CRGB::White;
|
|
|
|
}
|
|
|
|
// This function sets up a palette of purple and green stripes.
|
|
void SetupPurpleAndGreenPalette()
|
|
{
|
|
CRGB purple = CHSV( HUE_PURPLE, 255, 255);
|
|
CRGB green = CHSV( HUE_GREEN, 255, 255);
|
|
CRGB black = CRGB::Black;
|
|
|
|
currentPalette = CRGBPalette16(
|
|
green, green, black, black,
|
|
purple, purple, black, black,
|
|
green, green, black, black,
|
|
purple, purple, black, black );
|
|
}
|
|
|
|
|
|
// This example shows how to set up a static color palette
|
|
// which is stored in PROGMEM (flash), which is almost always more
|
|
// plentiful than RAM. A static PROGMEM palette like this
|
|
// takes up 64 bytes of flash.
|
|
const TProgmemPalette16 myRedWhiteBluePalette_p =
|
|
{
|
|
CRGB::Red,
|
|
CRGB::Gray, // 'white' is too bright compared to red and blue
|
|
CRGB::Blue,
|
|
CRGB::Black,
|
|
|
|
CRGB::Red,
|
|
CRGB::Gray,
|
|
CRGB::Blue,
|
|
CRGB::Black,
|
|
|
|
CRGB::Red,
|
|
CRGB::Red,
|
|
CRGB::Gray,
|
|
CRGB::Gray,
|
|
CRGB::Blue,
|
|
CRGB::Blue,
|
|
CRGB::Black,
|
|
CRGB::Black
|
|
};
|
|
|