Pixel LED with Arduino Sinhalen | Vesak Decorations WS2811

සුපිරිම වැඩ ටිකක් කරන්න පුලුවන් බල්බ් වැලක් ගැන තමයි අද කියලා දෙන්නේ. මේ බලබ් වැලේ අපිට ඕනෙ බල්බ් එකක් ඕනම පාටකින් පත්තු කරගන්න අපිට පුලුවන්. කරන්න ඕනේ හරියට program එක ලියාගන්න එක විතරයි. මේ බල්බ් වැල වැඩ කරන්නේ 5v වලින්. සම්බන්ධ කරන විදිය ගැන හැම දෙයක්ම වීඩියෝ එකේ කියලා දීලා තියනවා.

Fast LED library එක තමයි මේකෙදි පාවිච්චි කරලා තියෙන්නේ. මේ තියෙන්නේ වීඩියෝ එකේ තියන පළවෙනි example එක.

#include <FastLED.h>

#define DATA_PIN     2
#define NUM_LEDS    50

CRGB leds[NUM_LEDS];

void setup() {
  FastLED.addLeds<WS2811, DATA_PIN, RGB>(leds, NUM_LEDS);
}

void loop() {
 leds[4] = CRGB::Blue;
}

අවශ්‍ය වෙන ලින්ක් ඔක්කොම මෙතන තියනවා

බෞද්ධ කොඩියේ පාට පිරෙන විදියට හදපු code එක පල්ලෙහා තියනවා. අනිත් ඒවා ටික Github එකේ දාලා තියනවා.

#include <FastLED.h>

#define DATA_PIN     2
#define NUM_LEDS    100

CRGB leds[NUM_LEDS];

void setup() {
  FastLED.addLeds<WS2811, DATA_PIN, RGB>(leds, NUM_LEDS);

}

void loop() {
  P_flag();
  //P_2();
  P_flagColors();

}

void P_flag() {
  int TIME_1 = 20;

  for (int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::Blue;
    FastLED.show();
    delay(TIME_1);
  }
  for (int i = 0; i < 4 * NUM_LEDS / 5; i++) {
    leds[i] = CRGB::Yellow;
    FastLED.show();
    delay(TIME_1);
  }
  for (int i = 0; i < 3 * NUM_LEDS / 5; i++) {
    leds[i] = CRGB::Red;
    FastLED.show();
    delay(TIME_1);
  }

  for (int i = 0; i < 2 * NUM_LEDS / 5; i++) {
    leds[i] = CRGB::White;
    FastLED.show();
    delay(TIME_1);
  }

  for (int i = 0; i < NUM_LEDS / 5; i++) {
    leds[i] = CRGB::OrangeRed;
    FastLED.show();
    delay(TIME_1);
  }
  delay(5000);
  for (int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::Black;
    FastLED.show();
    delay(20);
  }
}

void P_2() {

  for (int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::Red;
    leds[i + 1] = CRGB::Red;
    leds[i + 2] = CRGB::Blue;
    FastLED.show();
    delay(10);
    leds[i] = CRGB::Black;
    FastLED.show();
  }

  for (int i = NUM_LEDS; i > 0; i--) {
    leds[i] = CRGB::Red;
    leds[i + 1] = CRGB::Red;
    leds[i + 2] = CRGB::Blue;
    FastLED.show();
    delay(10);
    leds[i - 3] = CRGB::Black;
    FastLED.show();
  }

  for (int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::BurlyWood ;
    leds[i + 1] = CRGB::BurlyWood ;
    leds[i + 2] = CRGB::BurlyWood ;
    FastLED.show();
    delay(10);
    leds[i] = CRGB::Black;
    FastLED.show();
  }

  for (int i = NUM_LEDS; i > 0; i--) {
    leds[i] = CRGB::DeepSkyBlue ;
    leds[i + 1] = CRGB::DeepSkyBlue ;
    leds[i + 2] = CRGB::DeepSkyBlue ;
    FastLED.show();
    delay(10);
    leds[i - 3] = CRGB::Black;
    FastLED.show();
  }
}

void P_flagColors() {
  for (int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::Blue;
  }
  FastLED.show();
  delay(1000);

  for (int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::Yellow;

  }
  FastLED.show();
  delay(1000);

  for (int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::Red;
  }
  FastLED.show();
  delay(1000);

  for (int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::White;
  }
  FastLED.show();
  delay(1000);

  for (int i = 0; i < NUM_LEDS; i++) {
    leds[i] = CRGB::OrangeRed;
  }
  FastLED.show();
  delay(1000);
}

Pixel LED වැල් ගන්න අයට මහින්ද අයියාගෙ නම්බර් එක – 077 7316457, 077 7295849
(පිටකොටුවෙ 88 අතුල බිල්ඩින් එකේ උඩම තියන මහින්ද අයියාගේ H&E Technologies)

4 thoughts on “Pixel LED with Arduino Sinhalen | Vesak Decorations WS2811

  1. Aiye mama aiyage pixel vedio ake thiyena code aka gahuwa , FastLED libery akath download kara ita passe uplord karanna ba mokakda error Akak anawa

  2. මෙි විඩියෝ එකේ කියපු විදියටම හැදුවා. LED ටික නියමටම වැඞ කරා. එත් Board එක Computer යෙන් unplug කරලා power, LED වැලෙන් දුන්නා කියපු විදියටම. එක පාරටම board එකේ L, TX, RX bulb පත්තු වෙලා LED ටික වැඞ කරන්නේ නැතිව ගියා. Board එක දැන් Computer එකට plug කරම Err Massage එකක් එනවා. මෙ ගැටළුව fix කර ගන්නේ කොහෝමද?

    empty sketchඑකක් Upload කරන්න ගියාම මේ විදිය Err එකක් එනවා

    Arduino: 1.8.12 (Windows 10), Board: “Arduino Uno”

    Sketch uses 444 bytes (1%) of program storage space. Maximum is 32256 bytes.
    Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.
    avrdude: ser_open(): can’t open device “\\.\COM6”: The system cannot find the file specified.

    Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.

Leave a Reply

Your email address will not be published. Required fields are marked *