Szilágyi Sándor Zoltán hobbielektronika és amatőr robottechnika oldala

Arduino kezdőknek cikksorozatom, melynek első 13 része publikálásra került. Amatőr robotok, robot autók és LED-kockák építése.

Arduino kezdőknek 9 - 8 bites futófények 1-4.

Szilágyi Sándor Zoltán   Villamosmérnök, mérnök-informatikus

 

A cikket megírtam: 2022. 10. 05-án

A Rádiótechnikában megjelent: 2022. december

Ez a blog oldal tehát az eredeti, saját tulajdonomban levő dokumentum, és nem a nyomtatásban megjelent másolata. A cikket én írtam, én küldtem be, és csak azután jelent meg nyomtatott formában is. A nyomtatásban megjelent cikkeimre szerződést nem kötöttek velem, és anyagi juttatást se kaptam soha érte. Mivel a magazin már nem kapható, ezért a megjelent 13 cikkemet itt folytatnám, mivel Magyarországon jelenleg nincs hobbielektronikával foglalkozó magazin.

 

     Az előző számban befejeztem az analóg beviteli eszközök alapjait. Lesz folytatása, de előtte a futófények alapjait is meg kell ismerni. Néhány egymást követő cikkben tervezem ezeket bemutatni, először digitális IC-k nélkül. Az áramkörök még mindig csak modellek, nem konkrét alkalmazások. Kezdő szintűek, akárcsak a programjaik. Több különböző áramkört kívánok bemutatni, az elsőhöz 8 db alapszintű programmal, melyet továbbfejlesztek digitális IC-kkel.

 

9.1 Futófény hardver

     Az első 8 futófény programhoz egy olyan kapcsolást használunk, ami hasonlít a második cikk harmadik ábrájára, megnyolcszorozva a kimeneteket. Az áramkör a 39. ábrán látható. A panel 6-13 digitális kimeneteire egy-egy 220 ohmos védő ellenálláson át kötjük a led-ek anódjait. A katódokat közösítjük, és a GND pontra kapcsoljuk. Az áramkör ezzel kész.

 

39._abra_-_23-30._programok_8_bites_futofeny.png

39. ábra

 

9.1 Futófény programok

 

 

23. program: 8 db led astabil villogtatása

 

     A 8-ledes villogtató program a 40. ábrán látható. Azért astabil, mert nincs stabil állapota. A villogás a végtelenségig tart (vagy ameddig ki nem kapcsoljuk). 

     A program egy megjegyzéssel kezdődik. Ezek lehetnek egysorosak, ekkor a //-jelet használjuk. Többsoros esetén (vagy ha ideiglenesen ki akarunk takarni egy részt a programból) használhatjuk a /*   */-jelet is, melynek első része után több sorral lejjebb is elhelyezhetjük a záró részét. 

     Deklaráljuk és definiáljuk a led1-led8 változókat. Mindegyikük byte típusú. Az egyenlőségjel után írt 6-13 szám a panelen levő pineket jelöli. Korábban kevesebb változót használtunk, és külön-külön sorba kerültek. Mivel túl nagy helyet foglalnak el a képernyőn, és mivel azonos az adattípusuk, így csoportosíthatók: elég egyszer megadni az adattípust, majd vesszővel elválasztva felsorolni őket úgy, hogy új sor írásakor se kell az előző sort lezárni pontosvesszővel. Azaz elég csak a legutolsó után írni. 

     A setup részben a változókhoz hozzárendeljük a board kimeneteit. A deklarációs rész példáját csak részben tudjuk követni. Itt is fel lehet sorolni, több sorban, vesszővel elválasztva az egyes elemeket úgy, hogy a pontosvesszőt csak az utolsó után írjuk. Viszont a pinMode-ot mindegyik elé oda kell írni. Ha csak az első elé írjuk, a többinél elhagyjuk, akkor nem jelez a fordító hibát, viszont csak az első led fog villogni, mivel az a kimenet lesz aktív. 

     A főprogram egyszerű, nincs benne se szelekció, se iteráció. Azaz egyszerű szekvenciákból áll, melyek egymás után lefutnak. Egyszerűsítés, több sorba írás itt is lehetséges. A digitalWrite-ot itt is ki kell írni mindegyik elé, mert ha csak az elsőhöz írjuk, akkor a (már aktív kimenetek közül) csak ahhoz fog a jel valóban kijutni, így a többi nem fog világítani. Először az összes ledet egyszerre bekapcsoljuk, majd adott időzítés után kikapcsoljuk, majd újabb adott időzítés után kezdődik elölről a folyamat.

 

40._abra_-_23._program_8_db_led_villogtatasa_egyszerre.png

40. ábra

 

 

24. program: 4-4 led felváltva villogtatása

 

     Ez a 2 bites astabil multivibrátor 8 bites változata úgy, hogy minden második (páros-páratlan) led világít vagy nem világít. Sorok összevonását itt is lehet alkalmazni. Működése egyszerű, nem sokban tér el az előzőtől. A program a 41-edik ábrán látható. Amíg a páratlan sorszámú ledek logikai magas állapotban vannak, addig a páros sorszámúak logikai alacsony állapotban, egészen az időzítés végéig. Ezután a páratlanok lesznek logikai alacsony-, illetve a páros sorszámúak logikai magas állapotban.

 

41._abra_-_24._program_4-4_led_felvaltva_villogtatasa.png

41. ábra

 

25. program: 8 bites futófény

     Ifjúkoromban olvastam a Rádiótechnikában hasonlóról, ez most a jóval egyszerűbb,  Arduino-s változat lesz. A program (42. ábra) annyiban tér el az előzőektől, hogy az egyes ledek időben egymás után villannak fel a beállított időre, majd miközben kialszik, (késleltetés nélkül) azonnal felgyullad a következő. A végén a folyamat késleltetés nélkül kezdődik elölről, mintha a soron következő led következne.

 

42._abra_-_25._program_8_bites_futofeny.png

42. ábra

 

26. program: led-kígyó

     A rendelkezésre álló szakirodalomban nem találtam hasonlót, így kénytelen vagyok így elnevezni. Működése (43. ábra) továbbra is astabil jellegű, mivel egy digitális kimenet se kerül stabil állapotba, logikai értékük adott idő múlva megváltozik. Minden kimenet azonos ideig van logikai magas-, majd azonos ideig logikai alacsony állapotban, csak időben egymáshoz képest sorban eltolva. Tehát először az első, majd adott idő múlva a második, majd adott idő múlva a harmadik, stb... led villan fel. Amikor mindegyik világít, adott idő múlva elalszik az első, majd adott idő múlva a második, stb..., végül ha mind elaludt, adott idő múlva kezdődik elölről a folyamat. Természetesen a késleltetési idők bármilyen értékre beállíthatók.

 

43._abra_-_26._program_led-kigyo.png

43. ábra

 

     Felhasznált irodalom: 

-

  

A cikket megírtam: 2022. 10. 05-án

A Rádiótechnikában megjelent: 2022. december

 

 

 

 

Weblap látogatottság számláló:

Mai: 9
Tegnapi: 3
Heti: 12
Havi: 137
Össz.: 3 866

Látogatottság növelés
Oldal: Arduino kezdőknek 9 - 8 bites futófények 1-4.
Szilágyi Sándor Zoltán hobbielektronika és amatőr robottechnika oldala - © 2008 - 2025 - szilagyi-robot.hupont.hu

A HuPont.hu ingyen adja a tárhelyet, és minden szolgáltatása a jövőben is ingyen ...

ÁSZF | Adatvédelmi Nyilatkozat

X

A honlap készítés ára 78 500 helyett MOST 0 (nulla) Ft! Tovább »