Változók, ami eddig kimaradt



Logikai értékek tárolására hozták létre a boolean típusú változókat. Egy bit tárolható bennük, ami két értéket vehet fel true vagy false (igaz vagy hamis).
Főleg tesztelős, számlálós ciklusoknál, feltételes illetve esetválasztásos elágazásoknál használjuk őket az összehasonlító kifejezésekben. Sok függvény visszatérési értéke is boolean típusú.

boolean logi;
void setup(){
pinMode(2,INPUT);
pinMode(13,OUTPUT);
}

void loop(){
digitalWrite(13,LOW);
logi = digitalRead(2);// nyomógomb lenyomás, logikai true
if (logi){
digitalWrite(13,HIGH);// ha logi értéke igaz a led bekapcsol 1s-ra.
delay(1000);
}
}


A feltételes ciklus akkor hajtódik végre ha logi értéke igaz. A változó értéke csak akkor lesz igaz ha
a kettes bemenet értéke HIGH, tehát a nyomógomb lenyomott állapotban van.
Logikai típusoknál a true értéknek megfelel az 1 illetve a HIGH konstans is, ugyan így a false értéknek a 0 illetve a LOW konstans.


Biztos észre vettétek egy két program a következő sorral fejeződik be: while(true);
Ez egy logikai érték direkt megadása, a while elöltesztelős ciklussal kombinálva egy végtelen ciklust hozzunk létre, ami azt eredményezi, hogy a programunk nem képes tovább lépni, leállításig ennél a sornál marad.

Példa függvény visszatérési logikai értékére : if(Serial.available()) , ha változás történik a soros monitor beviteli mezőjében akkor a függvény értéke true(igaz) lesz, az if elágazás utasításai végrehajtódnak.


Logikai műveleti jelek(operátorok)

Ide tartozik, bár már leírtam egyszer a logikai operátorok használata. Ha több feltételnek kell megfelelnie egyszerre egy változónak, akkor könnyedén lerövidíthetjük programunkat az operátorok használatával.

Egy példa: ha „adat” változó értékének 4 és 7 között kell lennie akkor ezt felírhatjuk úgy, hogy

if (adat>4){
if(adat<7){
utasítások
}
}

Vagy az operátorok segítségével: if (adat>4 && adat<7)

&& – és (and)
|| – vagy (or)
! – nem (not)

Az és-nél minden kifejezésnek igaznak kell lenni, a vagy-nál csak az egyiknek, a nemnél hamisnak
kell lenni a kifejezésnek ahhoz, hogy végrehajtódjon az adott ciklus vagy elágazás.


Van néhány olyan változó típus amit ritkábban használunk, de azért egyes programok szívesen alkalmazzák őket. Használatuk néha célszerűbb mint az általános típusoké.

byte – 8bites előjel nélküli egész szám tárolására hozták létre. A nyolc bit 256 értéket vehet fel.

pl.: byte szam = B10011001; // egy nyolc bites bináris szám tárolása.

word – 16 bites előjel nélküli egész szám tárolására. 0 és 65535 értékek között.

short – 16 bites előjeles egész szám tárolására készült, az értéke -32768 és 32767 közötti szám lehet.