hu en es hu en en en hu hu de hu hu en hu hu hu hu hu zh ru cs kn hu hu fr en hu hu hu hu hu hu hu zh ru cs kn fr en hu en en hu en kn hu hu en hu zh ru cs hu kn fr en hu hbs_lat hu en en hu en kn hu hu hu hu hu hu hu en zh ru ru cs ja kn fr fa ceb tr sv ceb en en en kn kn kn hu hu hu hu hu hu hu hu hu hu hu cs hu hu hu en
Az Arduino programozásban egy fontos dolog a soros monitor kezelése, ezen keresztül küldhetünk illetve fogadhatunk adatokat a PC és az Arduino  között. Nagy segítség hibakeresésnél, értékek visszaellenőrzésénél.
Először készítsünk el egy 3 ledből álló kapcsolást, ezt használjuk majd mind két példánál.
A soros monitort a program feltöltése után az IDE jobb felső sarkában található gombra kattintva
Nézzünk egy egyszerű kis programot a bemutatására:
Első lépésként meg kell adni a soros monitor bit rátáját( másodpercenként áthaladó
bit-ek száma), mi a 9600-as értéket használjuk, Serial.begin(9600).
Miután bekapcsoltuk a ledet a soros monitoron megjelenik a "LED bekapcsolva" üzenet.
A Serial.println() kiírja a soros monitorra a benne lévő üzenetet és egy sorral lejjebb folytatja a
A Serial.print() ugyan ezt teszi csak nem vált sort, tehát a következő Serial.print() utasítás ennek
az első sort folytatja tovább.
egy kis módosítás, tegyünk a kiírandó szöveghez egy változót ami számlálja nekünk, hogy hányszor
kapcsoljuk be a ledet.
Egy pár szó a változókról, ezek memória részek amiket mi vagy a programunk tölt fel adott értékekkel, esetünkbe az int egész számok tárolására alkalmas változó típus. Először létrehozzuk a változót.
A setupban kezdőértéket adunk neki, majd a fő ciklusban kiíratjuk az értékét és növeljük azt eggyel.
Most nézzük az egészet visszafelé, a soros monitorba beírt értéket továbbítjuk az Arduinora.
Itt a bevitt karakterek miatt egy egészen más típusú változót kell használnunk, ez pedig a char.
A char-t karakterek tárolására használjuk.
pl.: char betu = „d”; // itt a d betűt tárolja el a betu nevű változónk
vagy char kod = 49; //itt viszont az ASCII kód 49-es számú karakterét kapjuk, ez az 1-es.
char kod = Serial.read();
if (kod>'1' && kod<'5'){
led = (kod - 48);
Először nézzük a if ( Serial.available()) utasítást, ez figyeli a soros monitor beviteli mezőjének
és a küldésgombjának változásait, ha a mező nem üres és le lett nyomva a küldésgomb akkor
tovább enged az utasításblokk belsejébe.
Másodszor a char kod = Serial.read(); sort nézzük át. Itt létrehozzunk egy kod nevű char típusú
változót amit rögtön feltöltünk a Serial.read() utasítás segítségével, ami beolvassa a soros monitor
beviteli mezejéből a karaktereket.
Harmadszor az if (kod>'1' && kod<'5') sor meghatározza azt az értéktartományt amit a következő utasításokban felhasználhatunk. Ez az '1'-nél nagyobb és az '5' -nél kisebb értékű karakterek.
Negyedszer a led = (kod – 48); sor konvertálja a char változóba lévő karakter értékét int értékre.
A kod – 48 -ról bővebben, minden egyes karakternek van egy úgynevezett ASCII kódja ami
0-255 közötti szám. A '0' kódja a 48, az '1' kódja a 49, a '2' kódja az 50. A számítás így lép
érvénybe: a kod változó int értékéből kivonjuk a '0' int értékét(48) így megkapjuk a bevitt számot.
pl.: 1 ASCII kódja a 49, 49 – 48 = 1
A soros monitor az Arduino Uno 0-s RX, és 1-es TX digitális pinjét használja, ezeket a monitor
használata közben másra nem lehet használni.
Homepage | contact | html | css | © 2007 Anyone | Design by www.mitchinson.net | This work is licensed under a Creative Commons Attribution 3.0 License