//#include <EncButton.h>
//EncButton<EB_TICK, 2> enc;
#include <Arduino.h>
#include <EncButton.h>
Button Potfarnik(32);
Button TurnLeft(33);
Button TurnRight(34);
VirtButton Emergancy;
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); // RX, TX
// ===============================================================
#include <FastLEDsupport.h> // вкл поддержку FL
DEFINE_GRADIENT_PALETTE( heatmap_gp ) { // делаем палитру огня
0, 0, 0, 0, // black
128, 255, 0, 0, // red
224, 255, 255, 0, // bright yellow
255, 255, 255, 255 // full white
};
CRGBPalette16 fire_p = heatmap_gp;
// ===============================================================
#include <microLED.h> // подключаем библиотеку MicroLED
#define STRIP_PIN_LEFT 14 // пин ленты для MicroLED
#define STRIP_PIN_RIGHT 15 // пин ленты для MicroLED
#define NUMLEDS 141 //96 // кол-во светодиодов для MicroLED
#define COLOR_DEBTH 3
//#include <FastLED.h> // подключаем библиотеку FastLED
//#define PIN 13 // пин ленты для FastLED
//#define NUM_LEDS 96 // кол-во светодиодов для FastLED
microLED<NUMLEDS, STRIP_PIN_LEFT, MLED_NO_CLOCK, LED_WS2812, ORDER_GRB, CLI_AVER> strip_left;
microLED<NUMLEDS, STRIP_PIN_RIGHT, MLED_NO_CLOCK, LED_WS2812, ORDER_GRB, CLI_AVER> strip_right;
//CRGB leds[NUM_LEDS];
//byte ihue = 0;
byte IN_PODFARNIK = 0;
byte IN_TURN_LEFT = 0;
byte IN_TURN_RIGHT = 0;
byte IN_TURN_EMERGANCE = 0;
byte IN_TUMANKA = 0;
byte IN_BLIJNIY = 0;
byte IN_STROBOSCOP = 0;
byte IN_ALARM = 0;
byte ALARM_COLOR_HYPERLION = 0;
byte ALARM_SATURATION_HYPERLION = 255;
byte ALARM_BRIGHTNESS_HYPERLION = 255;
byte START_COLOR = 0;
byte START_BRIGHT_1 = 75;
byte START_BRIGHT_2 = 255;
byte START_BRIGHT_3 = 255;
byte START_SATURATION = 0;
byte STROB_EFFECT = 1;
byte STROB_COLOR = 1;
byte STROB_COLOR_1 = 0;
byte STROB_COLOR_2 = 0;
byte STROB_SATURATION = 255;
byte STROB_DELAY_1 = 15;
byte STROB_DELAY_2 = 25;
byte STROB_DELAY_3 = 30;
byte TURN_LED_POWER = 1;
byte TURN_LED_COLOR = 0;
byte TURN_LED_BRIGHTNESS = 255;
byte TURN_LED_SATURATION = 255;
byte SMALL_LED_POWER = 1;
byte SMALL_LED_COLOR = 0;
byte SMALL_LED_BRIGHTNESS = 255;
byte SMALL_LED_SATURATION = 255;
byte BIG_LED_POWER = 1;
byte BIG_LED_COLOR = 0;
byte BIG_LED_BRIGHTNESS = 255;
byte BIG_LED_SATURATION = 255;
byte LUPA_LED_POWER = 1;
byte LUPA_LED_COLOR = 0;
byte LUPA_LED_BRIGHTNESS = 255;
byte LUPA_LED_SATURATION = 255;
byte FOG_LED_POWER = 1;
byte FOG_LED_COLOR = 0;
byte FOG_LED_BRIGHTNESS = 255;
byte FOG_LED_SATURATION = 255;
byte POTFARNIK_DEFAULT_ON_ADD = 0;
byte POTFARNIK_DEFAULT_OFF_ADD = 0;
byte POTFARNIK_DEFAULT_BRIGHT = 175;
byte POTFARNIK_DEFAULT_BRIGHT_ON = 0;
byte POTFARNIK_DEFAULT_BRIGHT_OFF = 0;
byte POTFARNIK_HYPERLION_ON_ADD = 0;
byte POTFARNIK_HYPERLION_OFF_ADD = 0;
byte POTFARNIK_HYPERLION_BRIGHT_ON = 0;
byte POTFARNIK_HYPERLION_BRIGHT_OFF = 0;
byte POTFARNIK_SPORT_ON_ADD = 0;
byte POTFARNIK_SPORT_OFF_ADD = 0;
byte POTFARNIK_SPORT_BRIGHT = 175;
byte POTFARNIK_SPORT_BRIGHT_ON = 0;
byte POTFARNIK_SPORT_BRIGHT_OFF = POTFARNIK_SPORT_BRIGHT;
byte POTFARNIK_SPORT_BRIGHT_1 = POTFARNIK_SPORT_BRIGHT;
byte POTFARNIK_SPORT_BRIGHT_ON_1 = 0;
byte POTFARNIK_SPORT_BRIGHT_OFF_1 = POTFARNIK_SPORT_BRIGHT;
byte POTFARNIK_TURN = 1;
byte TURN_ON = 0;
byte TURN_LEFT_ON_MODE_1 = 0;
byte TURN_LEFT_ON_MODE_2 = 0;
byte TURN_LEFT_ON_MODE_3 = 0;
byte TURN_LEFT_OFF = 0;
byte TURN_RIGHT_ON_MODE_1 = 0;
byte TURN_RIGHT_ON_MODE_2 = 0;
byte TURN_RIGHT_ON_MODE_3 = 0;
byte TURN_RIGHT_OFF = 0;
byte TURN_EMERGANCE_ON_MODE_1 = 0;
byte TURN_EMERGANCE_ON_MODE_2 = 0;
byte TURN_EMERGANCE_ON_MODE_3 = 0;
byte TURN_EMERGANCE_OFF = 0;
byte TURN_BRIGHT_ON_MODE_1 = 0;
byte TURN_COLOR = 22;
byte TURN_BRIGHT_1 = 255;
byte TURN_BRIGHT_2 = 0;
byte TURN_BRIGHT_3 = 0;
byte TURN_SATURATION = 255;
byte DELAY_TURN_1 = 20;
byte DELAY_TURN_2 = 120;
byte DELAY_TURN_3 = 240;
byte MODE = 1;
//byte LIGHT_ON = 0;
//byte LIGHT_OFF = 1;
int BLUETOOTH;
//byte SMALL_ANGEL_LED = 35; //66
byte START = 0;
byte BRIGHT_ON = 0;
byte BRIGHT_OFF = 255;
int DELAY_1 = 100;
int DELAY_2 = 1000;
int DELAY_3 = 5;
int DELAY_4;
int DELAY_5;
byte WORK_LOOP = 0;
byte PROGRAM = 0;
void setup() {
Serial.begin (9600);
Serial.setTimeout(1);
mySerial.begin(9600);
mySerial.setTimeout(5);
// Potfarnik.setBtnLevel(HIGH);
// TurnLeft.setBtnLevel(HIGH);
// TurnRight.setBtnLevel(HIGH);
// FastLED.addLeds<WS2812B,PIN,GRB>(leds,NUM_LEDS);
// FastLED.setBrightness(50); // яркость применяется по CRT гамме для FastLED
strip_left.setBrightness(255); // яркость применяется по CRT гамме для MicroLED
strip_right.setBrightness(255);
delay(1);
START_PROGRAM();
strip_left.clear();
strip_right.clear();
strip_left.show();
strip_right.show();
delay(1);
}