Stránka 2 z 2

Re: Pomocné světla k automobilu

Napsal: 10 pro 2017, 22:48
od pavel1tu
Aequitas píše:
10 pro 2017, 22:14
no,původní myšlenka byla taková že celou dobu budou svítit na 50% červeně,pokud se dá blinkr tak se červená vypne a spustí se pulka pásku jako animace na blinkr,to stejný na couvání že se změní z červený na bílou,a pokud se bude brzdit tak se zapne na 100% svítivost červený
Tak ani náznak tohoto v původním kodu nevidím

Jak jsem psal, začal byc s tím, že LED nebo pásek rozsvítím, pak bych pokračovat

nepoužívat DELAY - to prostě zastaví vykonávání programu

mám představu jak to udělat ale nemám opravdu čas, tak za týden
problém je, že nemám to jak ladit když nemám ten pásek

Re: Pomocné světla k automobilu

Napsal: 10 pro 2017, 23:12
od SkullKeep
Oprava meho kodu sice to neni FastLed knihovna, ale zkousel jsem to s 16 pixel RGB typ WS2812B a jede.
Kod:

Kód: Vybrat vše

#include <Adafruit_NeoPixel.h>

int Left = 3;
int Right = 4;
int Brake = 5;
int LeftState = 0;
int RightState = 0;
int BrakeState = 0;
#define NUM_LEDS  96
#define PIN 6
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUM_LEDS, PIN, NEO_GRB + NEO_KHZ800);

void setup() {
  pinMode(Left, INPUT);
  pinMode(Right, INPUT);
  pinMode(Brake, INPUT);
  Serial.begin(9600);
  pixels.begin();
}

void loop() {
  LeftState = digitalRead(Left);
  RightState = digitalRead(Right);
  BrakeState = digitalRead(Brake);
  if (BrakeState == HIGH) {
    for (int i = 0; i < NUM_LEDS; i++) {
      pixels.setPixelColor(i, pixels.Color(200, 0, 0));//RGB RED
      pixels.show();
    }
    delay(2500);  // cekaci doba na zhasnuti
    for (int i = 0; i < NUM_LEDS; i++) {
      pixels.setPixelColor(i, pixels.Color(0, 0, 0));
      pixels.show();
    }
  }
  if (LeftState == HIGH) {
    for (int blik = 0; blik <= 10; blik++) {
      for (int i = 0; i < NUM_LEDS-48; i++) {
        pixels.setPixelColor(i, pixels.Color(200, 57, 0));//RGB orange
        pixels.show();
      }
      delay(250);  // cekaci doba na bliknuti
      for (int i = 0; i < NUM_LEDS-48; i++) {
        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        pixels.show();
      }
      delay(250);
    }
  }
  if (RightState == HIGH) {
    for (int blik = 0; blik <= 10; blik++) {
      for (int i = 47; i < NUM_LEDS; i++) {
        pixels.setPixelColor(i, pixels.Color(200, 57, 0));//RGB orange
        pixels.show();
      }
      delay(250);  // cekaci doba na bliknuti
      for (int i = 47; i < NUM_LEDS; i++) {
        pixels.setPixelColor(i, pixels.Color(0, 0, 0));// RGB black na White Color(255,255,255)
        pixels.show();
      }
      delay(250);
    }
  }
}