කොහොමද ඒ LED නිවි නිවි පත්තු වුනේ : Arduino සිංහලෙන් 2 කොටස

මේ ලිපියෙන් කියලා දෙන්නේ පලමු ලිපියෙන් මොනවාද වුනේ කියලා. අපි ඒකෙන Arduino board එක insall කලා, ඒකේ තියන LED එකක් නිවි නිවි පත්තු කලා.

දැනගැනීමට අවශ්‍ය කොටස්

මෙකේ වැදගත් කොටස් හුඟාක් තියනවා. ඒවායින් දැනට වැදගත් වෙන ඒවා පමණක් කියලා දෙන්නම්. ඔක්කෝම එකපාර කියලා දුන්නොත් වැඩක් නෑනේ.


Pin



මෙවායින් තමයි අපි හැම දෙයක්ම කරන්නේ. අපි හිතමුකෝ LED එකක් පත්තු කරනවා කියලා. ඒක සව් කරන්නේ මේවාට. Car එකක් හදලා ඒකේ තියන motor සවි කරන්නේ මේවාට. දැනට මේවාගෙන් වර්ග දෙකක් ගැන බලමු.






Output pin – output කියන්නේ මේකෙන් මොනවාහරි දෙයක් එලියට දෙනවා. අපි හිතමුකෝ LED එකක් පත්තු කරනවා කියලා. එතකොට ඒකට අවශ්‍ය Volt සහ Ampere ප්‍රමාණය සපයන්න ඕනේ. එතකොට තමයි LED එක පත්තු වෙන්නේ.

Input pin – අපි මොකක් හරි එකක් හදනවා පරිසර උෂ්ණත්වය මනින්න. ඒ උෂ්ණත්වය මනින උපකරණයෙන් උෂ්ණත්වය ලබා දෙනවා. ඒක Arduino එකෙන් ගන්න ඕනේ. ඒ උෂ්ණත්වය මනින උපකරණය සවි කරන්නේ මේ Input pin කියන ඒවාට. මොනවාහරි දත්තයක් Arduino එකේ ඇතුලට ලබා දෙනවා.

අපි ලඟ තියන Arduino UNO එකේ මේ pin 14ක් තියනවා. මේ Pin ටික ඕනේ නම් Output විදිහටත් නැතිනම් Input විදිහටත් වෙනස් කරන්න පුලුවන්. ඒක කරන්නේ අපි ලියන code එකෙන්.

මේ pin අදුරගන්නේ number වලින්. ඒවා තමයි 0 සිට 14 ට තියෙන්නේ.

මේකේ 13 වන pin එකට LED එකක් සවිකරලා තියනවා board එකේම. ඒකට තමයි අපි මේ code එක ලියන්නේ. Board එකේ L කියලා තියෙන්නේ මේක.

තව LED එකක් තියනවා රතු පාටින් පත්තු වෙලාම තියන. ඒකෙන් කියනේ Board එකට power දීලා තියනවා කියලා. Board එකේ On කියලා තියෙන්නේ මේක.

Code එක විස්තර කිරීම.






මෙතනදී තමයි C ඕනෙ වෙන්නේ.

int led = 13;

Variable එකකට 13 කියලා value එකක් දාලා තියනවා. අපි Code එක ලියන්නේ board එකේ තියන LED එකට ඒක තියෙනේ 13 වෙනි pin එකට සවි කරලා.

void setup() {   
             
  pinMode(led, OUTPUT);   
  
}

මේ setup() function එක board එක on වෙනකොට එක පාරක් වැඩ කරනවා.

pinMode() function එකෙන්, pin එකක් input කරනවාද නැතිනම් output කරනවාද කියලා තීරණය කරනවා.

Parameter වලට දෙන පලවෙනි එක, මොන pin එක එක්කද අපි වැඩ කරන්න යන්නේ. ඒක තමයි led කියලා තියෙන්නේ (led variavle එකට 13 දැම්මා).

Parameter වලට දෙන දෙවනි එක මේ pin එක input කරනවාද නැතිනම් output කරනවාද කියලා තීරණය කරනවා. මෙතනදි අපිට ඕනේ LED එක පත්තු කරගන්න. ඒනිසා OUTPUT දීලා තියනවා.

pinMode(මොන pin එකද , OUTPUT ද නැතිනම් INPUT ද);

int led = 13  කියන එක නොමැතිව මෙහෙමත් කෙටියෙන් ලියන්න පුලුවන්.

void setup() {                
  pinMode(13, OUTPUT);
}



void loop() {
  digitalWrite(led, HIGH);   
  delay(1000);               
  digitalWrite(led, LOW);    
  delay(1000);               
}

setup() function එක අවසන් වුන පසු මේ loop() කියන function එක නැවත නැවත වැඩ කරනවා.

digitalWrite(led, HIGH);

මේකෙන් කරන්නේ මේ pin එකට voltage එකක් ලබාදෙන එක. 13 වන pin එකට 5V ලබාදෙනවා. ඒකට සවිකරලා තියන LED එක පත්තු වෙනවා.

පළමු parameter එක - මොන pin එකද අපි පාවිච්චි කරන්නේ.

දෙවනි parameter එක - තේරුව pin එකට voltage එකක් ලබාදෙනවාද නැද්ද කියන එක. ලබාදෙනවානම් HIGH නැතිනම් LOW


delay(1000);

මේකෙන් කරන්නේ තත්පරයක් ඉන්න කියන එක. 1000 කියලා තියෙනේ මිලි තත්පර.

1000 milliseconds = 1 second



දැන් loop() function එකේ සම්පූර්ණ ක්‍රියාව තේරෙනවා ඇති.

digitalWrite(led, HIGH)     LED එක on කරන්න.
delay(1000)                 තත්පරයක් ඉන්න.
digitalWrite(led, LOW)      LED එක off කරන්න.
delay(1000)                 තත්පරයක් ඉන්න.

මේක නැවත නැවත වෙනවා. ඒකයි දිගටම නිව් නිවී පත්තු වෙනවා පේන්නේ.

අපි code එක වෙනස් කලා පළමු delay එක 3000 සහ දෙවන delay එක 500 කියලා. ඒ කියන්නේ තත්පර 3 ක් පත්තුවෙලා තියනවා. තත්පර භාගයක් නිමිලා තියනවා. මේවා වෙනස් කරලා එක එක ඒවා කරලා බලන්න.

No comments:

Post a Comment