Wednesday, July 29, 2015

Using ' if ' with Arduino



 Using ' if ' with Arduino


Arduino මගින් වැඩසටහනක් සකස් කිරීමේදී if යන විධානය බොහෝ දුරට භාවිතා කිරීමට සිදු වේ. අද ලිපියෙන් මේ පිළිබඳව අවධානය යොමු කරමු. 


if විධානය මගින් සිදු කරන්නේ යම් කිසි තර්කයක් සත්‍ය වූ විට ඊට අදාළ කාර්යයක් සිදු කිරීමයි.


මෙය පරීක්ෂා කිරීම සදහා පරිදි උපාංග Arduino සමග සම්බන්ද කරගන්න.



දැන් පහත code කොටස Arduino එකට upload කරන්න.


#define ButtonPin 2



void setup(){

  Serial.begin(9600);

  pinMode(ButtonPin, INPUT);

}



void loop(){

  if(digitalRead(ButtonPin) == HIGH){

    Serial.println("Button is Pressed");

  }

   if(digitalRead(ButtonPin) == LOW){

    Serial.println("Button is not Pressed");

  }

  delay(1000);

}


මෙය IDE හි පහත පරිදි දැක්වේ.



දැන් Serial Monitor open කර බලන්න.



දැන් Button Press කරන්න.


එවිට එක් එක් අවස්තාව සදහා Button එක Press කර ඇත්ද, නැතිද යන්න Serial Monitor හි දැකගත හැකිය.


දැන් if විධානය ක්‍රියාත්මක වන ආකාරය සලකා බලමු.




මෙහි #define ButtonPin 2 මගින් Arduino හි digital pin no2, ButtonPin ලෙස නම් කරයි.


void setup කොටසෙහි  Serial.begin(9600); මගින් Serial Monitor සමග සම්බන්ධ වීමද  pinMode(ButtonPin, INPUT); මගින් ButtonPin යන්න INPUT එකක් ලෙස හදුන්වා දීම ද සිදු කෙරේ.


9 වන පේලිය මගින් සිදු වෙන්නේ ButtonPin එක HIGH අවස්ථාවට පත් ව තිබේදැයි පරීක්ෂා කිරීමයි. එනම් Button එක Press කර ඇත්ද යන්න පරීක්ෂා කිරීමයි. එය සත්‍ය නම් පමණක් {} තුල ඇති කොටස ක්‍රියාත්මක වී Serial Monitor හි Button is Pressed යන්න ප්‍රදර්ශනය කරයි.


මේ ආකාරයට දෙවන if කොටස ද පරීක්ෂා කරයි.


කේතය නැවත ක්‍රියාත්මක වීමට පෙර තත්පර 1 ක විරාමයක් තැබීම 15 වන පේලියේ සිදු වේ.


if විධානය යොදාගත හැකි විවිධ ආකාර ද පවතී.


උදාහරණ ලෙස x යනු  විචල්‍යයක් ද LedPin යනු OUTPUT එකක් ද ලෙස ගත විට if යොදා පහත පරිදි code නිර්මාණය කල හැක.


if(x > 120){

//සිදු විය යුතු කාර්යය

}


ex:-


if(x > 120) digitalWrite(LedPin, High);


if(x > 120)

 digitalWrite(LedPin, High);



if(x > 120) { digitalWrite(LedPin, High); }



if(x > 120) {

digitalWrite(LedPin1, High);

digitalWrite(LedPin2, High);

}


මේ ආකාරයක if විධානය භාවිතා කල හැක. මෙම සියලුම ආකාර නිවැරදි වේ.


== , != , > ,< , <= ,>= වැනි සංකේත මේ සදහා යොදාගත හැකිය. මේවා comparison Operators ලෙස හැදින්වේ. මෙම එක් එක් සංකේත මගින් පහත කාර්යයන් සිදු කරගත හැකිය.


x == y    (x සමානයි y)

x != y    (x අසමානයි y)

x < y     (x කුඩායි y)

x > y     (x විශාලයි y)

x <= y   (x කුඩායි හෝ සමානයි y)

x >=  y  (x විශාලයි හෝ සමානයි y)


මෙම කොටස පිලිබඳ ගැටළු තිබේනම් පහතින් Comment  කරන්න.

4 comments: