- Hét szegmenses kijelző:
- Szükséges alkatrészek:
- Áramkör és működési magyarázat:
- Programozási magyarázat:
A Raspberry Pi egy ARM architektúra processzor alapú tábla, amelyet elektronikus mérnököknek és hobbistáknak terveztek. A PI az egyik legmegbízhatóbb projektfejlesztési platform odakinn. Nagyobb processzorsebességgel és 1 GB RAM-mal a PI számos nagy horderejű projekthez használható, például Képfeldolgozáshoz és IoT-hez.
Bármely nagy horderejű projekt megvalósításához meg kell érteni a PI alapvető funkcióit. Ezekben az oktatóanyagokban a Raspberry Pi összes alapvető funkciójára kitérünk. Minden oktatóanyagban megvitatjuk a PI egyik funkcióját. A Raspberry Pi oktatóanyagok sorozatának végére megtanulhatja a Raspberry Pi programot, és egyedül is elkészíthet jó projekteket. Nézze át az alábbi oktatóanyagokat:
- Az első lépések a Raspberry Pi-vel
- Raspberry Pi konfiguráció
- LED villog
- Gombok összekapcsolása
- Raspberry Pi PWM generáció
- LCD interfész a Raspberry Pi-vel
- DC motor vezérlése
- Léptetőmotor vezérlés
- Interfacing Shift Register
- Raspberry Pi ADC bemutató
- Szervomotor vezérlés
- Kapacitív érintőpad
Ebben az oktatóanyagban Raspberry Pi 7 szegmens kijelző interfészeket fogunk végezni. A hét szegmenses kijelző a legolcsóbb egy kijelzőegységhez. Ezen szegmensek egy része egymásra rakva használható a hőmérséklet, a számlálóérték stb. Megjelenítésére. A 7 szegmenses kijelzőegységet a PI GPIO-hoz fogjuk csatlakoztatni, és vezérelni fogjuk őket a számjegyek megfelelő megjelenítéséhez. Ezután írunk egy programot PYTHON- ban hét szegmenses megjelenítésre, amely 0 és 9 közötti számolással nullára állítja vissza magát.
Hét szegmenses kijelző:
Különböző típusú és méretű 7 szegmenses kijelző található. Hét szegmenst dolgoztunk itt részletesen. Alapvetően kétféle 7 szegmens létezik, a közös anódtípus (közös pozitív vagy közös VCC) és a közös katód-típus (közös negatív vagy közös alap).
Közös anód (CA): 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 (CC): 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.
Ezek a CC és CA hét szegmenses kijelzők nagyon hasznosak, miközben több cellát multiplexelnek. Oktatóanyagunkban CC-t vagy Common Cathode Seven Segment Display- t használunk.
Már összekapcsoltuk a 7 szegmenst a 8051-gyel, az Arduinóval és az AVR-rel. Számos projektünkben 7 szegmenses kijelzőt is használtunk.
Mielőtt tovább mennénk, megbeszélünk egy kicsit a Raspberry Pi GPIO-ról, A Raspberry Pi 2-ben 40 GPIO kimeneti tű található. De a 40-ből csak 26 GPIO csap (GPIO2-GPIO27) programozható, lásd az alábbi ábrát. Ezek közül a csapok közül néhány speciális funkciót lát el. Különleges GPIO-t félretéve 17 GPIO van hátra.
A GPIO (1. vagy 17. tű) + 3,3 V jel elegendő a 7 szegmenses kijelző meghajtásához. Az áramkorlát biztosításához minden szegmenshez 1KΩ ellenállást fogunk használni, az áramköri ábra szerint.
Ha többet szeretne megtudni a GPIO csapokról és azok jelenlegi kimeneteiről, menjen át: A LED villog Raspberry Pi-vel
Szükséges alkatrészek:
Itt a Raspberry Pi 2 Model B-t használjuk Raspbian Jessie operációs rendszerrel. Az összes alapvető hardver- és szoftverkövetelményt korábban megbeszéltük, megnézheti a Raspberry Pi bevezetőjében, a szükségesek kivételével:
- Csatlakozó csapok
- Közös katód 7 szegmens kijelző (LT543)
- 1KΩ ellenállás (8 darab)
- Kenyérlemez
Áramkör és működési magyarázat:
Az Interfacing 7 szegmens megjelenítéséhez a Raspberry Pi-hez való csatlakozásokat az alábbiakban adjuk meg. Itt használtuk a Common Cathode 7 szegmenst:
PIN1 vagy e ------------------ GPIO21
PIN2 vagy d ------------------ GPIO20
PIN4 vagy c ------------------ GPIO16
PIN5 vagy h vagy DP ---------- GPIO 12 // nem kötelező, mivel nem tizedespontot használunk
PIN6 vagy b ------------------ GPIO6
PIN7 vagy egy ------------------ GPIO13
PIN9 vagy f ------------------ GPIO19
PIN10 vagy g ---------------- GPIO26
PIN3 vagy PIN8 ------------- csatlakozik a földhöz
Tehát a PI 8 GPIO tűjét fogjuk használni 8 bites PORTként. Itt a GPIO13 az LSB (legkevésbé jelentős bit) és a GPIO 12 az MSB (a legjelentősebb bit).
Most, ha azt akarjuk, hogy megjelenjen „1” szám, meg kell erő szegmensek B és C. A B és C szegmens áramellátásához a GPIO6 és GPIO16 tápellátását kell biztosítanunk. Tehát a 'PORT' funkció bájtja 0b00000110 lesz, a 'PORT' hexaértéke pedig 0x06 lesz. Mindkét tüske magasan „1” -t kapunk a kijelzőn.
Megírtuk az egyes megjelenítendő számjegyek értékeit, és ezeket az értékeket a „DISPLAY” nevű karakterláncba tároltuk (Ellenőrizze az alábbi Kód részt). Ezután egyesével felhívtuk ezeket az értékeket, hogy a megfelelő számjegy megjelenjen a kijelzőn, a 'PORT' funkció használatával.
Programozási magyarázat:
Miután minden a kapcsolási rajz szerint össze van kapcsolva, bekapcsolhatjuk a PI-t, hogy PYHTON-ba írjuk a programot.
Néhány parancsról fogunk beszélni, amelyeket a PYHTON programban fogunk használni, GPIO fájlt fogunk importálni a könyvtárból, az alábbi funkció segítségével programozhatjuk a PI GPIO csapjait. A „GPIO” -ot „IO” -ra is átnevezzük, így a programban, amikor csak GPIO-csapokra akarunk utalni, az „IO” szót fogjuk használni.
importálja az RPi.GPIO-t IO-ként
Néha, amikor a GPIO csapok, amelyeket megpróbálunk használni, más funkciókat is elláthatnak. Ebben az esetben figyelmeztetéseket kapunk a program futtatása közben. Az alábbi parancs arra utasítja a PI-t, hogy figyelmen kívül hagyja a figyelmeztetéseket, és folytassa a programot.
IO.setwarnings (hamis)
Hivatkozhatunk a PI GPIO csapjaira, akár a fedélzeten található PIN-kód, akár a funkciójuk száma alapján. A táblán lévő „PIN 29” -hez hasonlóan a „GPIO5”. Tehát itt elmondjuk, hogy vagy itt fogjuk ábrázolni a „29” vagy „5” betűket.
IO.setmode (IO.BCM)
8 GPIO-tűt állítunk be kimeneti tűként az LCD adat- és vezérlőtűihez.
IO.setup (13, IO.OUT) IO.setup (6, IO.OUT) IO.setup (16, IO.OUT) IO.setup (20, IO.OUT) IO.setup (21, IO.OUT) IO.setup (19, IO.OUT) IO.setup (26, IO.OUT) IO.setup (12, IO.OUT)
Abban az esetben, ha a zárójelben szereplő feltétel igaz, a cikluson belüli utasítások egyszer végrehajtásra kerülnek. Tehát ha a 8 bites 'pin' bit0 értéke igaz, akkor a PIN13 MAGAS lesz, különben a PIN13 LOW lesz. Nyolc 'ha más' feltételünk van a bit0-től bit7-ig, így a megfelelő LED a 7 szegmenses kijelzőn magasra vagy alacsonyra állítható a megfelelő szám megjelenítéséhez.
if (pin & 0x01 == 0x01): IO.output (13,1) else: IO.output (13,0)
Ez a parancs tízszer hajtja végre a ciklust, x-et 0-tól 9-ig növekszik.
x-hez a tartományban (10):
Az alábbi parancsot örök ciklusként használják, ezzel a paranccsal a ciklus belsejében lévő utasítások folyamatosan végrehajtódnak.
Míg 1:
Az összes többi funkciót és parancsot a „Kód” részben, a „Megjegyzések” segítségével magyaráztuk.
A program megírása és végrehajtása után a Raspberry Pi elindítja a megfelelő GPIO-kat, hogy a számjegyet megjelenítsék a 7 szegmens kijelzőjén. A program úgy van megírva, hogy a kijelző folyamatosan 0-9-ig számoljon.