Fiókom
TERMÉK KATEGÓRIÁK
10/26/2021 Arduino programozás kezdőknek

Arduino programozás kezdőknek

Szóval, van otthon egy Arduino lapod, csatlakoztatod a PC-hez… és most mi következik?

Fejlesztői környezet

Arduino programozásához leggyakrabban az Arduino IDE környezetet használjuk. Jelenleg már létezik az Arduino IDE 2 verzió is, azonban ez még viszonylag új, és elég sok hibát tartalmaz. Sok felhasználó ezért maradt az 1.0-s verziónál, és más weboldalakon található régebbi útmutatók is ennek a verziónak a használatával foglalkoznak. Mi is ennél maradunk egyelőre, a jövőben viszont számíthattok egy blogra az Arduino IDE 2-ről.

Haladó felhasználók választhatnak más fejlesztői környezetet is, gyakran használják például az Atmel Studio-t vagy akár a VS Code-ot is, mi azonban ma nem foglalkozunk ezekkel. Ha kíváncsi vagy, milyen hardver található az Arduino lapon, ajánljuk ezt a blogbejegyzésünket.

Arduino IDE

Először le kell töltenünk azt a környezetet, amelyben a lapot programozzuk:

Link: https://www.arduino.cc/en/software

A legtöbb felhasználónak, akik Windows 7-et vagy újabb rendszert használnak, az első linket kell választania (WINDOWS win 7 and newer).
Letöltés után telepítjük a programot, majd megnyitjuk. Egy üres fehér képernyő fogad minket rövid szöveggel:

Arduino lapok programozása

Az Arduino kód két függvényre oszlik:
– void setup()
– void loop()

A setup() függvény – ahogy a neve is mutatja – csak egyszer fut le. Akkor indul el, amikor a lapot tápfeszültséghez csatlakoztatjuk vagy újraindítjuk, lefut, majd a processzor többé nem tér vissza hozzá. Ebben a függvényben szokás beállítani a pinek kezdeti állapotait, elindítani a kommunikációt a PC-vel és hasonlókat.

A loop() függvény ezzel szemben folyamatosan ismétlődik egészen a végtelenségig, vagy amíg az Arduino nincs újraindítva vagy le nem csatlakoztatják a tápfeszültségről. Itt történik általában minden érdekes dolog. Nézzük meg ezt egy példán keresztül.

A „void” szó jelentését egy későbbi blogbejegyzésünkben magyarázzuk el, egyelőre nem kell vele foglalkoznunk.

A beépített LED villogtatása

Ahhoz, hogy a LED-et villogtassuk, csak néhány parancsra van szükségünk, azonban az Arduino IDE fejlesztői környezetben már léteznek példaprogramok különböző funkciók tesztelésére és a lappal való ismerkedésre. Egy ilyen példát meg is nyithatunk.

Ha rákattintunk erre a menüre, megnyílik egy új ablak kóddal. A felső eszköztárban az „Eszközök” fül alatt még be kell állítanunk, hogy melyik lapra szeretnénk feltölteni a kódot, és hová van csatlakoztatva.

Kiválasztjuk tehát a megfelelő lap típust (esetünkben Arduino Uno) és a portot. Nálunk azonban nem jelent meg port, illetve „szürke” maradt. Mit tegyünk? Ez azt jelenti, hogy a laphoz nincs telepítve driver, ezért azt fel kell telepíteni. A legtöbb esetben azonban a rendszer felismeri a lapot, és kiválaszthatjuk a megfelelő portot. Ha viszont szükség van a driver telepítésére, mindenképpen olvassátok el régebbi blogunkat a driverekről.

A kódban megjegyzéseket használtunk az egyes sorok magyarázatára. A megjegyzések olyan egyszerű szövegek, amelyeket a fordító figyelmen kívül hagy, ezért csak számunkra – a készítők és az olvasók számára – szolgálnak információként. Megjegyzéseket a „//” két perjellel írhatunk, illetve többsoros megjegyzést a /* …. */ közé helyezhetünk:

/*
  Blink

  Turns an LED on for one second, then off for one second, repeatedly.

  Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
  it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
  the correct LED pin independent of which board is used.
  If you want to know what pin the on-board LED is connected to on your Arduino
  model, check the Technical Specs of your board at:
  https://www.arduino.cc/en/Main/Products

  modified 8 May 2014
  by Scott Fitzgerald
  modified 2 Sep 2016
  by Arturo Guadalupi
  modified 8 Sep 2016
  by Colby Newman

  This example code is in the public domain.

  https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
*/

// funkcia setup, vykoná sa iba jeden krát na začiatku
void setup() {
  // Jedná sa o inicializáciu výstupného pinu na výstup (OUTPUT), konkrétne pinu 13. 
  // Namiesto "LED_BUILTIN" môžeme napísať "13" (bez úvodzoviek) a jednalo by sa presne o to isté. 
  // Arduino však má niektoré vstavané funkcie a premenné, takže takto je to jednoduchšie, 
  // nemusíme si pamätať presný pin, na ktorom je LED dióda pripojená
  pinMode(LED_BUILTIN, OUTPUT);
}

// funkcia loop sa vykonáva dookola. Dióda sa rozsvieti, počkáme jednu sekundy, LED zhasneme a opäť počkáme jednu sekundu. Dookola
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // Zapnutie LED signálom HIGH (úroveň 5V)
  delay(1000);                       // Ppočkáme 1000 milisekúnd, teda 1 sekundu
  digitalWrite(LED_BUILTIN, LOW);    // vypnutie LED signálom LOW (úroveň 0V)
  delay(1000);                       // Počkáme 1000 milisekúnd, teda 1 sekundu
}

A kód tehát elkészült, feltölthetjük a lapra. Ezt úgy tesszük meg, hogy rákattintunk a bal felső sarokban található nyílra:

Kis ideig várunk, amíg a kód lefordul (tehát szöveges formából bináris – 1-esek és 0-ák – halmazává alakul), majd feltöltődik a lap processzorába. Ha minden rendben lezajlott, alul megjelenik a „Kód feltöltése befejeződött” üzenet. Ezután már csak figyelnünk kell, hogyan villog az Arduino beépített LED-je.

Vélemény, hozzászólás?

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük