Tuesday, September 1, 2015

How to make an Electronic Dice with Arduino



Arduino එකෙන් දාදු කැටයක් සාදාගන්නා ආකාරය ගැන තමයි මෙයින් පහැදිලි කරලා දෙන්නෙ...


 වැඩේට මේ ටික අවශ්ය වෙනවා.

Arduino - 1
Data Cable - 1
Bread Bord - 1
LED - 6
Jumper Wires - 7
560 Ohm Resistor - 1
Arduino Software (IDE)



මෙන්න පරිපත සටහන.

Arduino  Digital Pins 1,2,3,4,5,6 වලට LED  වල + අග්‍ර වෙන වෙනම සම්බන්ද කරගන්න.
LED වල සියලුම - අග්‍ර එකට සම්බන්ද කර එය 560 Ohm Resistor එක හරහා Arduino එකෙ Gnd සමග සම්බන්ද කරන්න.



 මෙන්න Code එක.

//Creating an Electronic Die
void setup(){
  randomSeed(analogRead(0)); // seed the random number generator
  for ( int z = 1 ; z < 7 ; z++ ) // LEDs on pins 1-6 are output
  {
    pinMode(z, OUTPUT);
  }
}
void randomLED(int del){
  int r;
  r = random(1, 7); // get a random number from 1 to 6
  digitalWrite(r, HIGH); // output to the matching LED on digital pin 1-6
  if (del > 0)
  {
    delay(del); // hold the LED on for the delay received
  }
  else if (del == 0)
  {
    do // the delay entered was zero, hold the LED on forever
    {
    }
    while (1);
  }
  digitalWrite(r, LOW); // turn off the LED
}
void loop()
{
  int a;
  // cycle the LEDs around for effect
  for ( a = 0 ; a < 100 ; a++ )
  {
    randomLED(50);
  }
  // slow down
  for ( a = 1 ;
  a <= 10 ;
  a++ )
  {
    randomLED(a * 100);
  }
  // and stop at the final random number and LED
  randomLED(0);
}





දැන් Code එක Arduino එකට Upload කරන්න .



 දැන් Reset Button එක Press කරල බලන්න.



Random Effect එකකුත් එක්ක අහබු ලෙස LED එකක් දැල්වෙලා තියෙනවා දකගන්න පුලුවන්.

 මෙම ක්‍රියාවලිය දාදු කැටයක් පෙරලිමට සමාන බව ඔබට වැටහෙනවා ඇති.

LED හය, 1 සිට 6 දක්වා නම් කරගත්තම අහබු ලෙස දල්වෙන බල්බයෙන් කියැවෙන ඉලක්කම කියවාගන්න පුලුවන්.

එහෙනම් තවත් අලුත් වැඩකින් නැවත හමුවෙමු...

2 comments:

  1. machan oka lights 9yak use karala kotuwata hadaganne kohomada

    ReplyDelete
    Replies
    1. //Connect your LEDs to Digital Pin 1-9
      void setup(){
      randomSeed(analogRead(0)); // seed the random number generator
      for ( int z = 1 ; z < 10 ; z++ ) // LEDs on pins 1-9 are output
      {
      pinMode(z, OUTPUT);
      }
      }
      void randomLED(int del){
      int r;
      r = random(1, 10); // get a random number from 1 to 9
      digitalWrite(r, HIGH); // output to the matching LED on digital pin 1-9
      if (del > 0)
      {
      delay(del); // hold the LED on for the delay received
      }
      else if (del == 0)
      {
      do // the delay entered was zero, hold the LED on forever
      {
      }
      while (1);
      }
      digitalWrite(r, LOW); // turn off the LED
      }
      void loop()
      {
      int a;
      // cycle the LEDs around for effect
      for ( a = 0 ; a < 100 ; a++ )
      {
      randomLED(50);
      }
      // slow down
      for ( a = 1 ;
      a <= 10 ;
      a++ )
      {
      randomLED(a * 100);
      }
      // and stop at the final random number and LED
      randomLED(0);
      }

      Delete