#include <FastLED.h>
#define DATA_PIN 3
#define NUM_LEDS 60
#define MAX_POWER_MILLIAMPS 500
#define LED_TYPE WS2812B
#define COLOR_ORDER GRB
void pacifica_one_layer( fl::CRGBPalette16& p, uint16_t cistart, uint16_t wavescale, uint8_t bri, uint16_t ioff);
delay( 3000);
}
{
}
}
{ 0x000507, 0x000409, 0x00030B, 0x00030D, 0x000210, 0x000212, 0x000114, 0x000117,
0x000019, 0x00001C, 0x000026, 0x000031, 0x00003B, 0x000046, 0x14554B, 0x28AA50 };
{ 0x000507, 0x000409, 0x00030B, 0x00030D, 0x000210, 0x000212, 0x000114, 0x000117,
0x000019, 0x00001C, 0x000026, 0x000031, 0x00003B, 0x000046, 0x0C5F52, 0x19BE5F };
{ 0x000208, 0x00030E, 0x000514, 0x00061A, 0x000820, 0x000927, 0x000B2D, 0x000C33,
0x000E39, 0x001040, 0x001450, 0x001860, 0x001C70, 0x002080, 0x1040BF, 0x2060FF };
{
static uint16_t sCIStart1, sCIStart2, sCIStart3, sCIStart4;
sLastms = ms;
uint32_t deltams1 = (deltams * speedfactor1) / 256;
uint32_t deltams2 = (deltams * speedfactor2) / 256;
uint32_t deltams21 = (deltams1 + deltams2) / 2;
sCIStart1 += (deltams1 *
beatsin88(1011,10,13));
sCIStart2 -= (deltams21 *
beatsin88(777,8,11));
sCIStart3 -= (deltams1 *
beatsin88(501,5,7));
sCIStart4 -= (deltams2 *
beatsin88(257,4,6));
}
void pacifica_one_layer( fl::CRGBPalette16& p, uint16_t cistart, uint16_t wavescale, uint8_t bri, uint16_t ioff)
{
uint16_t wavescale_half = (wavescale / 2) + 20;
for( uint16_t i = 0; i <
NUM_LEDS; i++) {
waveangle += 250;
uint16_t s16 = sin16( waveangle ) + 32768;
uint16_t cs = scale16( s16 , wavescale_half ) + wavescale_half;
ci += cs;
uint8_t sindex8 = scale16( sindex16, 240);
}
}
{
for( uint16_t i = 0; i <
NUM_LEDS; i++) {
uint8_t threshold = scale8( sin8( wave), 20) + basethreshold;
wave += 7;
if( l > threshold) {
uint8_t overage2 = qadd8( overage, overage);
leds[i] +=
fl::CRGB( overage, overage2, qadd8( overage2, overage2));
}
}
}
{
for( uint16_t i = 0; i <
NUM_LEDS; i++) {
leds[i].blue = scale8(
leds[i].blue, 145);
leds[i].green= scale8(
leds[i].green, 200);
}
}
FL_DISABLE_WARNING_PUSH FL_DISABLE_WARNING_GLOBAL_CONSTRUCTORS CFastLED FastLED
Global LED strip management instance.
#define MAX_POWER_MILLIAMPS
void pacifica_deepen_colors()
void pacifica_add_whitecaps()
void pacifica_one_layer(fl::CRGBPalette16 &p, uint16_t cistart, uint16_t wavescale, uint8_t bri, uint16_t ioff)
fl::CRGBPalette16 pacifica_palette_2
fl::CRGBPalette16 pacifica_palette_3
fl::CRGBPalette16 pacifica_palette_1
CRGB ColorFromPalette(const CRGBPalette16 &pal, fl::u8 index, fl::u8 brightness, TBlendType blendType)
void fill_solid(CRGB *targetArray, int numToFill, const CRGB &color) FL_NOEXCEPT
Fill a range of LEDs with a solid color.
@ TypicalLEDStrip
Typical values for SMD5050 LEDs.
#define GET_MILLIS
The a number of functions need access to a millisecond counter in order to keep time.
#define EVERY_N_MILLISECONDS(N)
Alias for EVERY_N_MILLIS.
LIB8STATIC u16 beat16(accum88 beats_per_minute, u32 timebase=0) FL_NOEXCEPT
Generates a 16-bit "sawtooth" wave at a given BPM.
LIB8STATIC u16 beatsin88(accum88 beats_per_minute_88, u16 lowest=0, u16 highest=65535, u32 timebase=0, u16 phase_offset=0) FL_NOEXCEPT
Generates a 16-bit sine wave at a given BPM that oscillates within a given range.
LIB8STATIC u8 beatsin8(accum88 beats_per_minute, u8 lowest=0, u8 highest=255, u32 timebase=0, u8 phase_offset=0) FL_NOEXCEPT
Generates an 8-bit sine wave at a given BPM that oscillates within a given range.
LIB8STATIC u8 beat8(accum88 beats_per_minute, u32 timebase=0) FL_NOEXCEPT
Generates an 8-bit "sawtooth" wave at a given BPM.
LIB8STATIC u16 beatsin16(accum88 beats_per_minute, u16 lowest=0, u16 highest=65535, u32 timebase=0, u16 phase_offset=0) FL_NOEXCEPT
Generates a 16-bit sine wave at a given BPM that oscillates within a given range.
Representation of an 8-bit RGB pixel (Red, Green, Blue)