main
Код: Выделить всё
#include "FastLED.h"
#define NUM_LEDS 7
#define LED_PIN 5
#define COLOR_ORDER GRB
#define LED_TYPE WS2811
CRGB leds[NUM_LEDS];
#include <IRremote.h>
#include <IRremoteInt.h>
#define MASTER_BRIGHTNESS 255
#define STARTING_BRIGHTNESS 64
#define FADE_IN_SPEED 32
#define FADE_OUT_SPEED 20
#define DENSITY 255
IRrecv irrecv(2); // Указываем пин, к которому подключен приемник
decode_results results;
unsigned long knopka;//Переменная для хранения кода нажатой кнопки
int ihue = 0;
int thissat = 255;
int thisdelay = 20;
//colortwinkles
enum { GETTING_DARKER = 0, GETTING_BRIGHTER = 1 };
void brightenOrDarkenEachPixel( fract8 fadeUpAmount, fract8 fadeDownAmount)
{
for( uint16_t i = 0; i < NUM_LEDS; i++) {
if( getPixelDirection(i) == GETTING_DARKER) {
// This pixel is getting darker
leds[i] = makeDarker( leds[i], fadeDownAmount);
} else {
// This pixel is getting brighter
leds[i] = makeBrighter( leds[i], fadeUpAmount);
// now check to see if we've maxxed out the brightness
if( leds[i].r == 255 || leds[i].g == 255 || leds[i].b == 255) {
// if so, turn around and start getting darker
setPixelDirection(i, GETTING_DARKER);
}
}
}
}
Код: Выделить всё
void setup() {
delay(3000);
FastLED.addLeds<LED_TYPE,LED_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
FastLED.setBrightness(MASTER_BRIGHTNESS);
Serial.begin(9600);// Запускаем серийный порт
irrecv.enableIRIn(); // Запускаем прием
pinMode(5, OUTPUT);//Определяем 12-й пин на вход
}
Код: Выделить всё
void loop() {
if (irrecv.decode(&results)) // Если данные пришли
{
knopka=results.value;
Serial.println(knopka, DEC);// Отправляем полученную данную в консоль
if (knopka=results.value){
menu();
irrecv.resume(); // Принимаем следующую команду
}
}
}Код: Выделить всё
switch (knopka) {
case 11419:
blink();
//irrecv.resume();
break;
case 27803:
twinki();
//delay (500);
//irrecv.resume();
break;
case 21661:
rainbow_fade();
break;
}
}