Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Alapszabályok:

1. A parancsokat pontosvessző zárja - digitalWrite(13, HIGH);


2. Egy sorba több parancs is írható - digitalWrite(13, HIGH); delay(500);
3. Parancsblokkot { és } karakterekkel tudunk írni.
4. Elágazásra az if, else és switch parancsokat tudjuk használni.
5. Ciklusokhoz a while, és for parancsokat használhajtuk.
6. Kommentsort a // jelekkel lehet írni, komment-blokkot a /* karakterekkel kezdünk
és */ karakterekkel zárunk. - /* Ez egy komment */ digitalWrite(13, HIGH); //Ez
is

Karakterek:

; Parancs végét jelző karakter

' Karakter írására alkalmas jel

|| Logikai VAGY

&& Logikai ÉS

== Egyenlőségvizsgálat

!= Egyenlőtlenségvizsgálat

= Értékedás
+=, -=, /= *= Értékmódosítás

++, -- Eggyel növelés ill. csökkentés

● int int valtozo = -1; //Típus és név, majd értékadás


● char
● String
● tömbök:int[] valtozo = int[3]; //Típus, elemszám, és név, majd értékadás
● pinMode - Beállít egy lábat bemeneti vagy kimeneti lábra
● digitalWrite - Beállít egy kimenetet magas vagy alacsony szintre
● digitalRead - Beolvas egy bemenetről egy logikai értéket
● delay - Szünetelteti a program végrehajtását adott ideig
● analogRead - Beolvas egy feszültségértéket egy analóg bemeneten
● random - Generál egy véletlenszerű számot

Serial.begin

Elindítja a soros portos kommunikációt az 1-es és 2-es lábakon ill. USB-n.

Szintaxis

void Serial.begin(int speed)

Használat

Serial.begin(9600); //9600 baudos soros kommunikációt indít el. 9600 Az


alapértelmezett.

Serial.write

Adat írható vele a soros portra.


Szintaxis

void Serial.write(char c)
void Serial.write(String s)
void Serial.write(char[] buffer, int length)

Használat

char c[32];

...

Serial.write('a'); //Kiírja a soros portra az a karaktert


Serial.write("Szoveg"); //Kiírja a soros portra a Szoveg karaktereket
Serial.write(c, 10); //Kiírja a soros portra a c tömb első 10 karakterét.

Serial.read

Beolvas egy karaktert a soros portról, ha van bejövő üzenet.

Szintaxis

char Serial.read()

Használat

char c;

...

if(Serial.available() > 0) //Megnézzük előbb, hogy van-e mit olvasni


{
c = Serial.read(); //Ha van, a legelső karaktert kiolvassuk}
Serial.available

Visszaadja hány karakter várakozik olvasásra a soros porton.

Szintaxis

int Serial.available()

Használat

char c;

...

if(Serial.available() > 0) //Megnézzük előbb, hogy van-e mit olvasni


{
c = Serial.read(); //Ha van, a legelső karaktert kiolvassuk

Serial.readString

Beolvas egy egész szöveget sor vége jelig.

Szintaxis

String Serial.readString()

Használat

String s;

...

if(Serial.available() > 0) //Megnézzük előbb, hogy van-e mit olvasni


{
s = Serial.readString(); //Sor vége jelig vagy 0-ás kódú karakterig olvasunk
}

If és else.
int i;

void setup()
{
i = 0;
pinMode(13, OUTPUT);
}

void loop()
{
if(i == 0)
{
i = 1;
digitalWrite(13, HIGH);
}
else
{
i = 0;
digitalWrite(13, LOW);
}
delay(300);
}

For és while ciklus:


//For ciklusfelépítés
for(kezdes; feltetel; modositas)
{
...
}

//Ugyanez a ciklus while-al


kezdes;
while(feltetel)
{
...
modositas;
}
egypéldaprogramban:
int i;
for(i = 0; i < 10; i++)
{
Serial.write(i);
delay(200);
}

void ciklus
Sokszor hasznos tud lenni, ha egy adott kódrészletet többször is fel tudunk használni.
Például ha egy programban valami tevékenységet akarunk jelezni, villogtathatunk egy ledet:
digitalWrite(LED, HIGH);
delay(500);
digitalWrite(LED, LOW);

Az előző kód részlettel azonban van egy nagy probléma: minden egyes villogtatási helyre be
kell másolni. Ha utólag rájövünk, hogy pl. más sebességgel akarunk villogtatni, akkor ezt
aránylag sok helyen kell módosítani. Ehelyett létrehozhatunk metódusokat:
void villog(int ido, int szam) //visszatérési érték, név, paraméterek(nem mindig
szükséges)
{
int i; //
for(i = 0; i@ < szam; i++) //
{ //
digitalWrite(LED, HIGH); // Metódus Törzs
delay(ido); //
digitalWrite(LED, LOW); //
} //
}

You might also like