itthon / Internet / Alfanumerikus kijelzők a mikrokontrolleren. Hét szegmens jelző 14 szegmens jelző

Alfanumerikus kijelzők a mikrokontrolleren. Hét szegmens jelző 14 szegmens jelző

Jó nap! Hosszú és kényszerű szünetem után folytatjuk az Arduino programozási tanfolyam elsajátítását. Egyik korábbi oktatóanyagunkban már dolgoztunk LED-ek sorozatával, most itt az ideje, hogy továbblépjünk a tanulás következő lépésére. A mai cikk témája egy 7 szegmenses mutató lesz.

A 7 szegmenses indikátor bemutatása két részből áll. Az első részben felületesen „átjárjuk” az elméleti komponenst, dolgozunk a hardverrel és egyszerű programokat írunk.

Legutóbb 8 LED-ből álló sorozattal dolgoztunk, ma is 8 lesz belőle (7 - LED szalag és 1 pont). Az előző sorozattól eltérően ennek a halmaznak az elemei nem sorakoznak (egymás után), hanem meghatározott sorrendben vannak elrendezve. Ennek köszönhetően egyetlen komponens használatával 10 számjegyet (0-tól 9-ig) jeleníthet meg.

Egy másik jelentős különbség, amely megkülönbözteti ezt a jelzőt az egyszerű LED-ek hátterétől. Van egy közös katódja (vagy inkább két egyenértékű 3-as és 8-as lába, amelyre a katód csatlakozik). Elég csak az egyik katódot a földhöz csatlakoztatni ( GND). Az összes indikátorelem anódja egyedi.

Egy kis kitérő. A fentiek mindegyike a 7 szegmenses, közös katóddal rendelkező indikátorokra vonatkozik. Vannak azonban közös anóddal rendelkező mutatók. Az ilyen mutatók összekapcsolása jelentős különbségeket mutat, ezért kérjük, ne keverje össze a „bűnöst az igazakkal”. Világosan meg kell értened, hogy milyen típusú hétszegmenses van a kezedben!

Az egyszerű LED-ek és a 7 szegmenses kijelzők közötti különbségek mellett hasonlóságok is vannak. Például: az indikátorok, mint a LED-ek, sorban (sorrendben) szerelhetők fel két-, három-, négyjegyű számok (számjegyek) megjelenítésére. Nem tanácsolom azonban, hogy sokat foglalkozzon a szegmenskészletek önszerelésével. Eladó "közel" egyszámjegyű jelzőkkel, több számjegyű is kapható.

Remélem, nem felejtette el, hogy a LED-ek csatlakoztatásakor áramkorlátozó ellenállásokat kell használni. Ugyanez vonatkozik az indikátorokra is: az indikátor minden elemének saját ellenállással kell rendelkeznie. 8 elem (7 + 1) - 8 ellenállás.

Kéznél volt egy hétszegmenses 5161AS (közös katód) jelzéssel. Névjegyek kijelölése:



kördiagramm

Ahogy korábban mondtam, az „A” szegmens bekapcsolásához a „földelést” csatlakoztatjuk bármely közös érintkezőhöz (3 vagy 8), és 5 V-os tápfeszültséget adunk a 7. érintkezőhöz. Ha az indikátor közös anóddal van ellátva, akkor az anódot és a „föld” szegmens kimenetét 5V-tal látjuk el!

Gyűjtsünk próbapad. A vezetékeket sorrendben csatlakoztatjuk, kezdve az első lábbal, amely az Arduino tábla 2. kimenetére megy. Csatlakoztatjuk a földet az indikátor 8. kimenetéhez.

Az állvány összeszerelése után megkezdheti a firmware írását.

Futtassuk az írott programot az indikátor ellenőrzésére. Válasszuk ki az "A" elemet, és kacsintsunk rá.


Most villogtassuk a 2-es számot. Ehhez kapcsoljunk be még néhány elemet.

Egy számjegy megjelenítéséhez n számú kódsort kell beírni. Nehéz, nem találom.

Van más mód is. Ahhoz, hogy bármilyen szám megjelenjen az indikátoron, azt először meghatározott bitsorozatként kell ábrázolni.

Levelezési táblázat.

Ha a kijelzőn közös anód van, akkor az 1-et 0-ra, a 0-t 1-re kell cserélni!

A hexadecimális oszlop a számjegy bájtos ábrázolása (erről a második részben lesz szó részletesebben).

A bináris rendszerben egy szám a következőképpen írható: 0b00000000. 0b- kettes számrendszer. A nullák azt jelentik, hogy az összes LED nem világít.

Csatlakozáskor a 2-9 érintkezőket használtuk. A 2-es érintkező bekapcsolásához egy egységet írunk rá = 0b00000001. A jobb oldali negyedik bit felelős a pontért. Az utolsó bit felelős a jelző közepén lévő kötőjelért.

Írjunk példát a 0 szám kiadására.

A beírt karakterláncok számának csökkentése érdekében olyan ciklust használunk, amely lehetővé teszi mind a 8 bit "kipróbálását". változó enable_segment az olvasott bit értéke hozzá van rendelve. Ezt követően az áramkimenet a megfelelő módba kerül ( jel megléte vagy hiánya).

Megjegyzés: A bitRead() függvény beolvassa a megadott bit állapotát, és visszaadja az állapot értékét (0 vagy 1).bitRead(x, n)ahol x az a szám, amelynek bitjét be kell olvasni; n annak a bitnek a száma, amelynek állapotát ki kell olvasni. A számozás a legkisebb jelentőségű bittől (jobb szélső) kezdődik 0-val.

Az első rész végére pedig írunk egy kis számlálót.

Vannak olyan paraméterek, amelyekről kényelmesebb lenne objektív információt adni, mint csupán jelzést adni. Például a külső levegő hőmérséklete vagy az ébresztőóra ideje. Igen, mindezt meg lehetne tenni izzó izzókkal vagy LED-ekkel. Egy fok - egy égő LED vagy izzó, és így tovább. De hogy ezeket a szentjánosbogarak számolják – hát nem! De, mint mondják, a legtöbb egyszerű megoldások- a legmegbízhatóbb. Ezért a fejlesztők hosszú gondolkodás nélkül egyszerű LED-szalagokat vettek, és a megfelelő sorrendbe rendezték őket.

A huszadik század elején, a vákuumcsövek megjelenésével megjelentek az első gázkisülési mutatók.

Ilyen mutatók segítségével lehetett következtetni digitális információ arab számokkal. Korábban az ilyen lámpákon készültek különféle jelzések a műszerekre és egyebekre elektronikus eszközök. Jelenleg szinte sehol nem használnak gázkisüléses elemeket. De a retro mindig divatos, ezért sok rádióamatőr kiváló órákat gyűjt magának és szeretteinek a gázkisülés-jelzőkön.


A gázkisüléses lámpák hátránya, hogy sok áramot fogyasztanak. A tartósság vitatható. Egyetemünkön a frekvenciamérőket továbbra is a laboratóriumi helyiségekben üzemeltetik gázkisülés-jelzők.

Hét szegmens mutató

A LED-ek megjelenésével a helyzet drámaian javult. Maguk a LED-ek kevés áramot vesznek fel. Ha a megfelelő pozícióba helyezi őket, akkor bármilyen információt megjeleníthet. Az összes arab szám kiemeléséhez mindössze hét világító LED-szalag elegendő - bizonyos módon beállított szegmensek:

Szinte az összes ilyen hétszegmenses mutatóhoz egy nyolcadik szegmens is hozzáadódik - egy pont, hogy meg tudja mutatni bármely paraméter egész és tört értékét

Elméletileg nyolcszegmenses mutatót kapunk, de a régi módon hétszegmenses mutatónak is hívják.

Mi az eredmény? A hétszegmenses kijelző minden csíkját egy LED vagy LED-csoport világítja meg. Ennek eredményeként bizonyos szegmensek kiemelésével 0-tól 9-ig számot, valamint betűket és szimbólumokat jeleníthetünk meg.

Típusok és jelölések a diagramon

Léteznek egy-, két-, három- és négyjegyű, hétszegmenses mutatók. Soha nem láttam négynél többet.

A diagramokon egy hétszegmenses mutató valahogy így néz ki:

A valóságban a fő következtetések mellett minden hétszegmenses indikátornak van egy közös kivezetése közös anóddal (OA) vagy közös katóddal (OK).

A közös anóddal rendelkező hétszegmenses jelző belső áramköre így fog kinézni:


és egy ilyen közös katóddal:


Ha van egy hétszegmenses jelzőnk közös anóddal (OA), akkor az áramkörben ezt a kimenetet „plusz” tápellátással kell ellátnunk, ha pedig közös katóddal (OK), akkor „mínusz” vagy földelés.

Hogyan teszteljünk egy hétszegmenses indikátort

A következő mutatók állnak rendelkezésünkre:


Egy modern hétszegmenses jelző ellenőrzéséhez elég nekünk egy dióda folytonossági funkcióval ellátott multiméter. Először is egy általános következtetést keresünk - ez lehet OA vagy OK. Itt csak véletlenszerűen. Nos, akkor ellenőrizzük a mutató többi szegmensének teljesítményét a fenti sémák szerint.

Amint az alábbi képen is látható, a tesztelt szegmens kigyulladt. Hasonló módon ellenőrizzük a többi szegmenst is. Ha minden szegmens világít, akkor egy ilyen jelző sértetlen, és felhasználható a fejlesztésekben.


Néha a multiméter feszültsége nem elegendő a szegmens teszteléséhez. Ezért vesszük a tápegységet, és 5 voltra állítjuk. A szegmensen áthaladó áram korlátozása érdekében egy 1-2 Kiloom ellenálláson keresztül ellenőrizzük.


Ugyanígy ellenőrizzük a kínai vevő jelzőjét


Az áramkörökben hétszegmenses jelzők csatlakoznak az ellenállásokhoz minden kimeneten.

Miénkben modern világ A hétszegmenses indikátorokat folyadékkristályos indikátorok váltják fel, amelyek bármilyen információt képesek megjeleníteni

de használatukhoz bizonyos készségekre van szükség az ilyen eszközök áramkörében. Ezért a hétszegmenses mutatókat alacsony költségük és egyszerű használatuk miatt ma is használják.

A hétszegmenses jelzőket néha "numerikusnak" (eng. "numeric display") nevezik, mivel elsősorban a 0 ... 9 arab számok megjelenítésére szolgálnak. Használhatók azonban stilizált nagybetűk és nagybetűvel Orosz és latin ábécé, például "E", "P", "C", "F", "c", "d" stb.

Tisztább képek érhetők el az alfanumerikus kijelzőkön (angol. "alphanumeric display"), amelyek további radiális szegmensekkel rendelkeznek, és ennek megfelelően több következtetéseket (2.27. ábra, a ... c). Ennek eredményeként az ilyen jelzők a latin ábécé szinte összes betűjét, cirill betűit és néhány speciális karaktert jelenítenek meg.

Rizs. 2.27. Szegmensek elrendezése alfanumerikusan LED kijelzők: a) 9 szegmens; b) 14 szegmens; c) 16 szegmens.

Sajnos az alfanumerikus indikátorok szegmenseinek kijelölésében nincs harmonikus szabványosítás, minden gyártó a maga módján „gyakorol”. Az egyetlen dolog az, hogy a tizedespontokat következetesen két, és nem egy "DP" (tizedespont) betűvel jelölik.

Az egyetlen különbség az 1 db 16 szegmenses kijelző között az, hogy a 16 szegmenses kijelző két részre osztja a felső és alsó szegmenst, ami javítja kinézet néhány betű és szimbólum (2.28. ábra).

Rizs. 2.28. Betűk és szimbólumok formálása 16 szegmenses kijelzőn.

Mivel az ilyen jelzőkhöz sok kimenet van, és előfordulhat, hogy nem is vannak sorrendben elhelyezve, célszerű tesztelővel vagy 4,5 V-os, 300 ... 390 Ohm sorozatú ellenállású galvanikus akkumulátorral lecsengetni, mielőtt a táblára felszereljük.

A rádióamatőr szlengben az 1 db 16 szegmensből álló kijelzőt "csillagoknak" vagy "hópelyheknek" nevezik bizarr formájuk miatt. A név másik változata az "angol indikátorok", amelyek a kontúr hasonlóságát Nagy-Britannia nemzeti zászlójával jelzik.

Általánosságban elmondható, hogy az alfanumerikus indikátorok MK-hoz csatlakoztatásának áramköre ugyanaz, mint a hétszegmenses jelzőfényeknél. A fő különbség a csapok számának kétszerese (2.29. ábra, a, b).

Rizs. 2.29. Csatlakozási rajzok MK 14 szegmenses jelzőfényekhez:

a) az R1 ... R14 ellenállások korlátozzák a HG1 indikátor szegmensein átfolyó áramokat. Az R15 ellenállás az automatikus fényerő-szabályozó áramkörben található. A negatív hatása miatt Visszacsatolás, ez az ellenállás, amikor a HG1 jelző teljesen „világít”, csökkenti a szegmensekre adott feszültséget (és ezért csökkenti az áramerősséget és a fényerőt);

b) A DA1 egy speciális meghajtó, három vezetékes SCK, SDI, SDO interfésszel. Az R1 ellenállás szabályozza a fényerőt, pontosabban az összes szegmensen áthaladó stabilizált áramot. Egyedi mutatók helyett Yab7…#b! 6 14 szegmenses jelzőpárokat használhat tizedesvesszővel, például a Lite-OnTechnology LTP-3786G-jét.