A hét szegmenses kijelző az elektronika fontos kijelzőegysége, és széles körben használják a 0 és 9 közötti számok megjelenítésére. Megjeleníthet néhány karakter ábécét is, például A, B, C, H, F, E stb. Ebben az oktatóanyagban megtanuljuk egy 7 szegmenses kijelző összekapcsolása a 8051 mikrovezérlővel. A 8051 sorozat AT89S52 mikrovezérlőjét használjuk.
Az összekapcsolás előtt meg kell tanulnunk a 7 szegmens megjelenítését. Ez a legegyszerűbb egység számok és karakterek megjelenítésére. Csak áll 8 LED-ek, minden LED megvilágítására használt egyik szegmense egység és a 8 th LED megvilágítására alkalmazott DOT 7 szegmenses kijelzőn. Minden szegmenst vonallal jelölhetünk, mivel láthatjuk, hogy az egységben 7 sor található, amelyek szám / karakter megjelenítésére szolgálnak. Minden sort / szegmenst utalhatunk "a, b, c, d, e, f, g" -re, és a dot karakterekre a "h" -t használjuk. 10 érintkezõ van, amelyekben 8 érintkezõ a, b, c, d, e, f, g és h / dp jelölésére szolgál, a két középsõ érintõpont az összes LED közös anódja / katódja. Ezek a közös anódok / katódok belső rövidzárlattal rendelkeznek, ezért csak egy COM tűt kell csatlakoztatnunk.
A 7 szegmenses kijelzőnek két típusa van: Közös anód és Közös katód:
Közös anód: Ebben mind a 8 LED negatív terminálja (katódja) össze van kötve (lásd az alábbi ábrát), COM néven. És az összes pozitív terminál egyedül marad.
Közös katód: Ebben mind a 8 LED összes pozitív kapcsa (anódja) össze van kötve, COM néven. És az összes negatív hő egyedül marad.
Áramköri ábra és működési leírás
Itt a 7 szegmens közös anódtípusát használjuk, mert a LED-eket fordítva kell csatlakoztatnunk. Mint tudjuk, hogy a mikrovezérlő nem biztosít elegendő energiát a LED világításához, ezért a katódot a mikrovezérlő csapjához, a LED anódját pedig az áramellátáshoz kell csatlakoztatnunk. Ezt a negatív logikai koncepciót a „LED-ek összekapcsolása a 8051 mikrokontrollerrel” című cikkben értheti meg. Olvassa el ezt a cikket is, hogy megértse a mikrovezérlő, például a kristály- és a visszaállítási áramkör alapvető kapcsolatát.
Amint fent látható, a 7 szegmenses kijelző és a 8051 mikrovezérlő összekapcsolásának kapcsolási rajza, a, b, c, d, e, f, g, h-t összekötöttük a 2.0 és 2.7 érintkezőkkel, ami azt jelenti, hogy 7 szegmenst csatlakoztatunk a mikrovezérlő 2. portjához. Tegyük fel, hogy 0-t akarunk megjeleníteni, majd az összes LED-et világítanunk kell, kivéve a „g” vonalhoz tartozó LED-et (lásd a fenti ábrát), így a 2.0–2.6 érintkezőknek 0-nak kell lennie (0-nak kell lennie a LED bekapcsolásához negatív logikánként), és a 2.7 és 2.8 tűnek 1-nél kell lennie (1-nek kell lennie a LED KIKAPCSOLÁSÁHOZ negatív logika szerint). Tehát a 2.0–2.6 érintkezőkhöz (a, b, c, d, e, f) kapcsolt LED-ek világítani fognak, a 2.7 és 2.8-hoz (g és h) csatlakoztatott LED-ek pedig kikapcsolt állapotban, így 0 szegmens. Szükségünk van tehát az 11000000 bitmintára (a 8. tű a legmagasabb bit, tehát P2.7-től P2.0-ig kezdődik), és az 11000000 bináris HEX-kódja „C0”. Hasonlóképpen kiszámíthatjuk az összes számjegyet. Itt kell megjegyeznünk, hogy a „dot / h” értéket mindig KI állapotban tartjuk,ezért minden alkalommal meg kell adnunk a LOGIC „1” -t. Az alábbiakban egy táblázatot adtunk meg az összes számról, a Common Anode 7 szegmens használata közben.
Számjegy a megjelenítéshez |
hgfedcba |
Hex kód |
0 |
11000000 |
C0 |
1 |
11111001 |
F9 |
2 |
10100100 |
A4 |
3 |
10110000 |
B0 |
4 |
10011001 |
99 |
5. |
10010010 |
92 |
6. |
10000010 |
82 |
7 |
11111000 |
F8 |
8. |
10000000 |
80 |
9. |
10010000 |
90 |
Kód Magyarázat
Az ms_delay függvényt hoztuk létre az ezredmásodperces késés biztosítására, ezt a késleltetést általában bármelyik mikrovezérlő program biztosítja, hogy a mikrovezérlő befejezhesse belső működését.
Ezután létrehoztunk egy tömböt a hexakódokról 0-tól 9-ig (lásd a fenti táblázatot), végül elküldtük a hexakódokat a 2-es portra, amely a 7 általános anód szegmenshez csatlakozik. Tehát ily módon a számok megjelennek a 7 szegmens kijelzőjén.
Most már csak 4 port van a mikrokontrollerben, és mi van, ha több mint négy 7 szegmensben szeretnénk megjeleníteni az adatokat ?? A probléma megoldása érdekében képbe kerül a multiplexelési technika. Több 7 szegmens egységet kell multiplexelni. Olvassa el a 7 szegmenses kijelző összekapcsolását az AVR mikrokontrollerrel.