muze mi nekdo pomoci?
pouzivam tenhle kod
a potreboval bych jeste pridelat aby se po privedeni HIGH na pin dejme tomu 12 je to jedno
seply oba pasky ale jinou barvou tam si nastavim cervenou ale aby zaroven pokud bude seplej levy pasek na blikani tak pravy svitil cervene a po vypnuti leveho se rozsvitil stejne jako pravy cervene.
Kód: Vybrat vše
#include <Adafruit_NeoPixel.h>
////// NASTAVENI LEVEHO PASKU
#define PIN_L_PASEK 6 //pin l pasku
#define NUM_LEDS_L_PASEK 15 //pocet led l pasku
Adafruit_NeoPixel L_PASEK = Adafruit_NeoPixel(NUM_LEDS_L_PASEK, PIN_L_PASEK, NEO_GRB + NEO_KHZ800);
////// NASTAVENI PRAVEHO PASKU
#define PIN_P_PASEK 4 //pin p pasku
#define NUM_LEDS_P_PASEK 15 //pocet led p pasku
Adafruit_NeoPixel P_PASEK = Adafruit_NeoPixel(NUM_LEDS_P_PASEK, PIN_P_PASEK, NEO_GRB + NEO_KHZ800);
////////////POCET LED JEDNOHO Z PASKU
#define NUM_LEDS NUM_LEDS_L_PASEK
////// NASTAVENI VSTUPNICH PINU
#define L_BLINKR_PIN 8 //vstup z l blinkru
#define P_BLINKR_PIN 10 //vstup z p blinkru
void setup() {
/// Nastaveni pinu na ktere pujdou vstupy/ blinkry
pinMode(L_BLINKR_PIN, INPUT);
pinMode(P_BLINKR_PIN, INPUT);
///Nastaveni pasku
L_PASEK.begin();
L_PASEK.show();
P_PASEK.begin();
P_PASEK.show();
}
void loop() {
if(digitalRead(P_BLINKR_PIN) && !digitalRead(L_BLINKR_PIN))
{
colorWipe(0xff,0x3f,0x00, 20, 1);
colorWipe(0x00,0x00,0x00, 10, 1);
}
if(digitalRead(L_BLINKR_PIN) && !digitalRead(P_BLINKR_PIN))
{
colorWipe(0xff,0x3f,0x00, 20, 0);
colorWipe(0x00,0x00,0x00, 10, 0);
}
if(digitalRead(L_BLINKR_PIN) && digitalRead(P_BLINKR_PIN))
{
colorWipe(0xff,0x3f,0x00, 20, 2);
colorWipe(0x00,0x00,0x00, 10, 2);
}
}
void colorWipe(byte red, byte green, byte blue, int SpeedDelay, int pasek) {
if(pasek == 0){
for(uint16_t i=0; i<NUM_LEDS_L_PASEK; i++) {
setPixelL_PASEK(i, red, green, blue);
showL_PASEK();
delay(SpeedDelay);
}
}
if(pasek == 1){
for(uint16_t i=0; i<NUM_LEDS_P_PASEK; i++) {
setPixelP_PASEK(i, red, green, blue);
showP_PASEK();
delay(SpeedDelay);
}
}
if(pasek == 2){
for(uint16_t i=0; i<NUM_LEDS; i++) {
setPixelL_PASEK(i, red, green, blue);
setPixelP_PASEK(i, red, green, blue);
showL_PASEK();
showP_PASEK();
delay(SpeedDelay);
}
}
}
void showL_PASEK() {
#ifdef ADAFRUIT_NEOPIXEL_H
// NeoPixel
L_PASEK.show();
#endif
#ifndef ADAFRUIT_NEOPIXEL_H
// FastLED
FastLED.show();
#endif
}
void setPixelL_PASEK(int Pixel, byte red, byte green, byte blue) {
#ifdef ADAFRUIT_NEOPIXEL_H
// NeoPixel
L_PASEK.setPixelColor(Pixel, L_PASEK.Color(red, green, blue));
#endif
#ifndef ADAFRUIT_NEOPIXEL_H
// FastLED
leds[Pixel].r = red;
leds[Pixel].g = green;
leds[Pixel].b = blue;
#endif
}
void showP_PASEK() {
#ifdef ADAFRUIT_NEOPIXEL_H
// NeoPixel
P_PASEK.show();
#endif
#ifndef ADAFRUIT_NEOPIXEL_H
// FastLED
P_PASEK.show();
#endif
}
void setPixelP_PASEK(int Pixel, byte red, byte green, byte blue) {
#ifdef ADAFRUIT_NEOPIXEL_H
// NeoPixel
P_PASEK.setPixelColor(Pixel, P_PASEK.Color(red, green, blue));
#endif
#ifndef ADAFRUIT_NEOPIXEL_H
// FastLED
leds[Pixel].r = red;
leds[Pixel].g = green;
leds[Pixel].b = blue;
#endif
}