Saturday, April 30, 2016

Blinking LED

 Blinking LED

 අපි ගිය සතියේ කතා කෙරේ Arduino පුවරුව computer එකට සම්බන්ද කරන ආකාරයයි. ඉන් පසු ක්‍රියාවලිය අද බලමු.

බොහෝ පරිගණක භාෂා වල, පළමු වැඩසටහන ලෙස ඔබ තිරය වෙත "Hello World" දිස්වීමට code එකක් ලියයි.නමුත් මෙහිදි අපි ඒ වෙනුවට LED නිවිම දැල්විම(Blinking) යන code එක ලියන්න තමා යන්නේ.ඒ සදහා digital pin වල 13 භාවිතා පහසුවේ.  එහි පින් මත 1 KB ප්රතිරෝධයක් වේ.


digital pin 13 LED සම්බන්ධ කිරීම සඳහා, ඔබ බාහිර ප්රතිරෝධයක් භාවිතා කළ යුතු වේ.
LED එක නිසිලෙස ඉහත රූපයේ පරිදි සම්බන්ද කල යුතුය.එකේ LED  දිගු කකුලක් සාමාන්යයෙන් ධනාත්මක වන අතර,
(digital 13). අනෙක  GND(ground) සම්බන්ධ අනිනවා සම්බන්ධ යුතුය.

දැන් අපි මෙයට අදාල code එක බලමු.


/* Blinking LED
* ------------
*
* turns on and off a light emitting diode(LED) connected to a digital
* pin, in intervals of 2 seconds. Ideally we use pin 13 on the Arduino
* board because it has a resistor attached to it, needing only an LED
*
* Created 1 June 2005
* copyleft 2005 DojoDave <http://www.0j0.org>
* http://arduino.berlios.de
*
* based on an orginal by H. Barragan for the Wiring i/o board
*/
int ledPin = 13; // LED connected to digital pin 13
void setup()
{
pinMode(ledPin, OUTPUT); // sets the digital pin as output
}
void loop()
{
digitalWrite(ledPin, HIGH); // sets the LED on
delay(1000); // waits for a second
digitalWrite(ledPin, LOW); // sets the LED off
delay(1000); // waits for a second
}



මෙහිදි /* comment කිරිම අරම්භද */ මගින් comment අවසනයද පෙන්නුම් කරයි. මෙම code එක පහත ආකාරයට ගත හැක.නමුත් code එක අතින්ම type කරන එක වඩා හොදයි





තවද // මගින්ද comment කිරිම කරයි.


int ledPin = 13;

මෙහි int  මගින් variable type එක එනම් integer(පුර්ණ සංඛ්යා) දක්වයි.ledPin යනු variable name එක වේ.
මෙය 13 වෙනි pin එකට සමාන කර තිබේ.pin වර්ග පහසුවෙන් හදුනා ගනිමට මෙලස නම් කිරිම ඉතා වැදගත් වේ.

void setup()
{
pinMode(ledPin, OUTPUT); // sets the digital pin as output
}


void setup() මගින් මෙහි ඇති pin , input එකක්ද outupt එකක්ද යන්න තිරණය කරයි.
එයට pinMode යන method එක මගින් මෙය සිදු කරනු ලබයි. සදහා pinMode(ledPin, OUTPUT); ලෙස සැකසිය යුතුය.input නම් OUTPUT යන්න INPUT ලෙස සැකසියුතුය.
මෙහිදි capital විම අනිවර්ය වේ. තවද {} තුල වියයුතුය.මෙම code එක ; න් අවසන් විමද අනිවා වේ.

void loop()
{
digitalWrite(ledPin, HIGH); // sets the LED on
delay(1000); // waits for a second
digitalWrite(ledPin, LOW); // sets the LED off
delay(1000); // waits for a second


void loop() යන method එක නොකඩවා සිදු වෙන ක්රියාවලියකි.එනම් loop එකකි. මෙහි void කියන්නෙ මෙකෙ කිසිම return එකක් නති නිසා.

digitalWrite(ledPin, HIGH);

13
වැනි pin එකට HIGH(වැඩි voltage) එකක් ලබදිම සිදුකරයි.එවිට LED එක දැල්විම සිදුවන නමුත් මෙහි delay(1000); යන කොටස නොතිබුනොත් එය අපට නොපෙනේ. එනම් delay(1000); මගින් code එක මිලිතත්පර 1000(එනම් තත්පරයක්) කට නවතා තිබිම සිදු කරයි.මෙහි 1000 තමාට අවශ් පරිදි වෙනස් කරගැනිමෙන් එම වෙලාව වෙනස් කරගතහැක.

digitalWrite(ledPin, LOW); 

13 වැනි pin එකට LOW(අඩු voltage) එකක් ලබදිම සිදුකරයි.එවිට LED එක නිවි යයි.
delay(1000); මගින් code එක මිලිතත්පර 1000(එනම් තත්පරයක්) කට නවතා තිබිම සිදු කරයි.
 එම නිසා දැන් අපිට දැල්විම හා නිවිම යන දෙකම නිරික්ෂණය කල හැක.

මෙය void loop() එක තුල නිසා මෙම ක්රියාවලිය දිගින් දිගටම සිදුවේ.

code එක ඇතුලත් කිරිම


 


  1. Verify: සථායිතාව සහ ඔබේ කේතය අනුමත(Compile) කරයි. code එකේ වැරදි වැරදි සෙවිම කරයි.
  2. Upload: මෙම Board එකට ඔබේ කේතය යවයි. ඔබ එය ක්ලික් කළ විට, ඔබ ඔබේ Board එකෙ ලයිට් වේගයෙන් නිවිදැවෙදැයි බැලිය යුතුය.
  3. New: මෙම බොත්තම් නව කේතය කවුළුව ටැබ් දක්වා විවෘත කරයි.
  4. Open: මෙම බොත්තම මගින්  ඔබ දැනට කර ඇති code එකක සටහනක් විවෘත කරයි.
  5. Save: ඔබ දැනට කර ඇති code එකක සටහනක්  save කරයි.
  6. Serial Monitor: මෙය ඔබේ Board එකේ  සම්ප්රේෂණය වෙන ඕනෑම අනුක්රමික තොරතුරු පෙන්වන්නේ මෙම  කවුළුවෙන් . එය නිදොස්කරණය සඳහා ඉතා ප්රයෝජනවත් වේ.
  7. Sketch Name: මෙය ඔබ දැනට save කර ඇති  නම පෙන්වයි..
  8. Code Area: ඔබ ඔබේ code කිරිම සදහා වූ ප්‍රදෙශයයි.
  9. Message Area:ඔබගේ කේතය ඕනෑම වැරදි තිබේ නම් එම IDE ඔබ පවසනවා මෙහි වෙයි
  10. Text Console: සම්පූර්ණ වරද පණිවුඩ පෙන්වයි. දෝෂහරණයට ඉතා ප්රයෝජනවත් වේ.
  11. Board and Serial Port: කුමන port එකද කියා පෙන්වයි.
 
 ඉහත code එක ගැසිමෙන් පසු verify යන්න ඔබන්න.ඉන්පසු code එකක්  වැරදක් නැත්නම් upload එක  ඔබන්න.

එවිට LED බල්බය නිසිලෙස නිවිනිවි දැල්වෙ.

එහෙනම් තවත් post එකකින් නැවත හමුවෙමු

No comments:

Post a Comment