#include <bitswap.h>
#include <chipsets.h>
#include <color.h>
#include <colorpalettes.h>
#include <colorutils.h>
#include <controller.h>
#include <cpp_compat.h>
#include <dmx.h>
#include <FastLED.h>
#include <fastled_config.h>
#include <fastled_delay.h>
#include <fastled_progmem.h>
#include <fastpin.h>
#include <fastspi.h>
#include <fastspi_bitbang.h>
#include <fastspi_dma.h>
#include <fastspi_nop.h>
#include <fastspi_ref.h>
#include <fastspi_types.h>
#include <hsv2rgb.h>
#include <led_sysdefs.h>
#include <lib8tion.h>
#include <noise.h>
#include <pixelset.h>
#include <pixeltypes.h>
#include <platforms.h>
#include <power_mgt.h>
#include "FastLED.h"
// fast led constants
#define DATA_PIN 3 // change to your data pin
#define COLOR_ORDER GRB // if colors are mismatched; change this
#define NUM_LEDS 256 // change to the number of LEDs in your strip
#define FRAMES_PER_SECOND 120
// change WS2812B to match your type of LED, if different
// list of supported types is here:
// https://github.com/FastLED/FastLED/wiki/Overview
#define LED_TYPE WS2812B
#define BRIGHTNESS 200
#define DIM 10
#define ALL 0-255
const int buttonPin1 = 5; // the number of the pushbutton pin
const int buttonPin2 = 6;
const int buttonPin3 = 7;
const int buttonPin4 = 10;
// variables will change:
int buttonState1 = 0; // variable for reading the pushbutton status
int buttonState2 = 0;
int buttonState3 = 0;
int buttonState4 = 0;
int oldButtonState3 = 0;
// this creates an LED array to hold the values for each led in your strip
CRGB leds[NUM_LEDS];
void setup()
{
delay(3000); // 3 second delay for recovery
// tell FastLED about the LED strip configuration
FastLED.addLeds<LED_TYPE,DATA_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
//FastLED.addLeds<LED_TYPE,DATA_PIN,CLK_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
// the wiki features a much more basic setup line:
FastLED.addLeds<LED_TYPE, DATA_PIN, COLOR_ORDER>(leds, NUM_LEDS);
Serial.begin(9600);
// initialize the pushbutton pin as an input:
pinMode(buttonPin1, INPUT);
// set master brightness control
FastLED.setBrightness(BRIGHTNESS);
// List of patterns to cycle through. Each is defined as a separate function below.
typedef void (*SimplePatternList[])();
uint8_t gCurrentPatternNumber = 0; // Index number of which pattern is current
uint8_t gHue = 0; // rotating "base color" used by many of the patterns
}
void loop()
{ // read the state of the pushbutton value:
buttonState1 = digitalRead(buttonPin1);
buttonState2 = digitalRead(buttonPin2);
buttonState3 = digitalRead(buttonPin3);
buttonState4 = digitalRead(buttonPin4);
if(buttonState3 == HIGH && oldButtonState3 == LOW){
// left tail light black
leds[0] = CRGB::Black;
leds[1] = CRGB::Black;
leds[2] = CRGB::Black;
leds[3] = CRGB::Black;
leds[4] = CRGB::Black;
leds[5] = CRGB::Black;
leds[6] = CRGB::Black;
leds[7] = CRGB::Black;
leds[8] = CRGB::Black;
leds[9] = CRGB::Black;
leds[10] = CRGB::Black;
leds[11] = CRGB::Black;
leds[12] = CRGB::Black;
leds[13] = CRGB::Black;
leds[14] = CRGB::Black;
leds[15] = CRGB::Black;
leds[16] = CRGB::Black;
leds[17] = CRGB::Black;
leds[18] = CRGB::Black;
leds[19] = CRGB::Black;
leds[20] = CRGB::Black;
leds[21] = CRGB::Black;
leds[22] = CRGB::Black;
leds[23] = CRGB::Black;
leds[24] = CRGB::Black;
leds[25] = CRGB::Black;
leds[26] = CRGB::Black;
leds[27] = CRGB::Black;
leds[28] = CRGB::Black;
leds[29] = CRGB::Black;
leds[30] = CRGB::Black;
leds[31] = CRGB::Black;
leds[32] = CRGB::Black;
leds[33] = CRGB::Black;
leds[34] = CRGB::Black;
leds[35] = CRGB::Black;
leds[36] = CRGB::Black;
leds[37] = CRGB::Black;
leds[38] = CRGB::Black;
leds[39] = CRGB::Black;
leds[40] = CRGB::Black;
leds[41] = CRGB::Black;
leds[42] = CRGB::Black;
leds[43] = CRGB::Black;
leds[44] = CRGB::Black;
leds[45] = CRGB::Black;
leds[46] = CRGB::Black;
leds[47] = CRGB::Black;
leds[48] = CRGB::Black;
leds[49] = CRGB::Black;
leds[50] = CRGB::Black;
leds[51] = CRGB::Black;
leds[52] = CRGB::Black;
leds[53] = CRGB::Black;
leds[54] = CRGB::Black;
leds[55] = CRGB::Black;
leds[56] = CRGB::Black;
leds[57] = CRGB::Black;
leds[58] = CRGB::Black;
leds[59] = CRGB::Black;
leds[60] = CRGB::Black;
leds[61] = CRGB::Black;
leds[62] = CRGB::Black;
leds[63] = CRGB::Black;
// right tail light black
leds[192] = CRGB::Black;
leds[193] = CRGB::Black;
leds[194] = CRGB::Black;
leds[195] = CRGB::Black;
leds[196] = CRGB::Black;
leds[197] = CRGB::Black;
leds[198] = CRGB::Black;
leds[199] = CRGB::Black;
leds[200] = CRGB::Black;
leds[201] = CRGB::Black;
leds[202] = CRGB::Black;
leds[203] = CRGB::Black;
leds[204] = CRGB::Black;
leds[205] = CRGB::Black;
leds[206] = CRGB::Black;
leds[207] = CRGB::Black;
leds[208] = CRGB::Black;
leds[209] = CRGB::Black;
leds[210] = CRGB::Black;
leds[211] = CRGB::Black;
leds[212] = CRGB::Black;
leds[213] = CRGB::Black;
leds[214] = CRGB::Black;
leds[215] = CRGB::Black;
leds[216] = CRGB::Black;
leds[217] = CRGB::Black;
leds[218] = CRGB::Black;
leds[219] = CRGB::Black;
leds[220] = CRGB::Black;
leds[221] = CRGB::Black;
leds[222] = CRGB::Black;
leds[223] = CRGB::Black;
leds[224] = CRGB::Black;
leds[225] = CRGB::Black;
leds[226] = CRGB::Black;
leds[227] = CRGB::Black;
leds[228] = CRGB::Black;
leds[229] = CRGB::Black;
leds[230] = CRGB::Black;
leds[231] = CRGB::Black;
leds[232] = CRGB::Black;
leds[233] = CRGB::Black;
leds[234] = CRGB::Black;
leds[235] = CRGB::Black;
leds[236] = CRGB::Black;
leds[237] = CRGB::Black;
leds[238] = CRGB::Black;
leds[239] = CRGB::Black;
leds[240] = CRGB::Black;
leds[241] = CRGB::Black;
leds[242] = CRGB::Black;
leds[243] = CRGB::Black;
leds[244] = CRGB::Black;
leds[245] = CRGB::Black;
leds[246] = CRGB::Black;
leds[247] = CRGB::Black;
leds[248] = CRGB::Black;
leds[249] = CRGB::Black;
leds[250] = CRGB::Black;
leds[251] = CRGB::Black;
leds[252] = CRGB::Black;
leds[253] = CRGB::Black;
leds[254] = CRGB::Black;
leds[255] = CRGB::Black;
[/code :) ]