Hogyan lehet mikrovezérlőt használni a 7 szegmens LED grafikájának meghajtására?

Jul 29, 2025Hagyjon üzenetet

Hogyan lehet mikrovezérlőt használni a 7 szegmens LED grafikájának meghajtására?

Az elektronika világában a 7 szegmens LED -grafika a kapocs a numerikus és néhány ábécé információ egyszerű és hatékony módon történő megjelenítéséhez. Mint beszállító7 Segement LED grafika, Tanúja voltam annak, hogy a különféle alkalmazásokban növekvő igényt mutatnak ezekre az összetevőkre, az egyszerű digitális óráktól a komplex ipari vezérlőpanelekig. Ebben a blogbejegyzésben végigvezeti Önt a mikrovezérlő használatának folyamatán a 7 szegmens LED grafikájának meghajtására, mindent lefedve a 7 szegmens LED -ek alapjaitól a programozási szempontokig.

A 7 szegmens LED grafika megértése

Mielőtt belemerülnénk a 7 szegmens LED -es grafika vezetésének részleteibe egy mikrovezérlővel, elengedhetetlen megérteni, hogy ezek a megjelenítések hogyan működnek. A 7 szegmens LED -kijelző hét egyedi LED -ből áll, egy adott mintában elrendezve a 0 - 9 számjegyet és néhány betűt. A szegmenseket általában A, B, C, D, E, F és G jelölik, és néha egy további tizedes pont (DP) szegmens szerepel.

A 7 szegmens LED kijelzőnek két fő típusa van: a közös katód és a közös anód. Egy közönséges katód kijelzőn az egyes LED -ek összes katód -terminálja összekapcsolódik és földelve van, míg egy közös anód kijelzőn az összes anód -terminál összekapcsolódik és pozitív feszültséggel rendelkezik. A két típus közötti választás az adott alkalmazástól és a mikrovezérlő kimeneti képességeitől függ.

Mikrovezérlő kiválasztása

A 7 szegmens LED grafika vezetésének első lépése a megfelelő mikrovezérlő kiválasztása. Számos mikrokontroller érhető el a piacon, mindegyiknek megvan a saját funkciója és képessége. A 7 szegmens LED -ek vezetésének néhány népszerű választása közé tartozik az Arduino Uno, a Raspberry Pi Pico és az Atgaga328p.

A mikrovezérlő kiválasztásakor vegye figyelembe a következő tényezőket:

  • I/O csapok: Győződjön meg arról, hogy a mikrovezérlőnek elegendő digitális kimeneti csapja van a 7 szegmens LED -es kijelző összes szegmensének ellenőrzéséhez. Az egyjegyű kijelzőhöz legalább 7 csapra van szüksége (vagy 8-ra, ha a tizedes pontot tartalmazza).
  • Feldolgozóerő: Noha a 7 szegmens LED-es kijelző vezetése nem igényel nagy teljesítményű mikrovezérlőt, a megfelelő feldolgozási teljesítmény előnyös lehet, ha további funkciókat tervez vagy összetettebb feladatokat tervez.
  • Programozási nyelv: Válasszon olyan mikrovezérlőt, amely támogatja a ismert programozási nyelvet. Például az Arduino a C/C ++ egyszerűsített verzióját használja, amelyet könnyű megtanulni és használni a kezdőknek.

Áramköri csatlakozás

Miután kiválasztotta a mikrovezérlőt, a következő lépés a 7 szegmens LED kijelző csatlakoztatása a mikrovezérlőhöz. A következő lépések körvonalazzák a közös katód 7 szegmens LED kijelző csatlakoztatásának általános eljárását az Arduino UNO -hoz:

  1. Azonosítsa a csapokat: Lásd a 7 szegmens LED kijelző adatlapját, hogy azonosítsa az egyes szegmenseknek megfelelő csapokat (A - G és DP) és a közös katódcsapot.
  2. Csatlakoztassa a szegmenseket: Csatlakoztassa az egyes szegmenseket (A - G és DP) az Arduino UNO digitális kimeneti csapjához, megfelelő ellenállásokkal, hogy korlátozza a LED -ekön átáramló áramot. Az ellenállás tipikus értéke körülbelül 220 - 330 ohm.
  3. Csatlakoztassa a közös katódot: Csatlakoztassa a 7 szegmens LED kijelző közös katódcsapját a földhöz (GND) az Arduino UNO -n.

Itt található egy egyszerű áramköri rajz, amely bemutatja az Arduino UNO és a Cathode 7 szegmens LED kijelző közötti kapcsolatot:

Arduino UNO 7 szegmens LED kijelző digitális pin 2 ------- Szegmens A digitális csap 3 ------- B szegmens B digitális csap 4 ------- C szegmens digitális csap 5 ------- D digitális pin 6 ------- E szegmens Pin 7 ------- Szegmentf. Digitális PIN ------- Szegmentum GND digitális PIN-kód (DP (DP) GND ------- Common Cathode Common Cathode

A mikrovezérlő programozása

A 7 szegmens LED kijelző csatlakoztatása után a mikrovezérlőhöz, a következő lépés egy program írása a kijelző vezérléséhez. Az alábbiakban egy egyszerű példát mutatunk be az Arduino IDE -ben írt programra a 0 - 9 számjegyek megjelenítéséhez egy közös katód 7 szegmens LED -es kijelzőn:

22

// Határozza meg az egyes szegmensekhez csatlakoztatott csapokat const int szegmenspins [] = {2, 3, 4, 5, 6, 7, 8, 9}; // Define the patterns for each digit (0 - 9) const byte digitPatterns[] = { 0b00111111, // 0 0b00000110, // 1 0b01011011, // 2 0b01001111, // 3 0b01100110, // 4 0b01101101, // 5 0b01111101, // 6 0b00000111, // 7 0B01111111, // 8 0B01101111 // 9}; void setup () {// Állítsa be az összes szegmenscsapot kimenetként (int i = 0; i <8; i ++) {pinMode (szegmentpinok [i], output); }} érvénytelen hurok () {// Minden számjegyet 0-tól 9-ig jelenít meg, 1 másodperces késleltetéssel az egyes számjegyek között (int digit = 0; számjegy <10; digit ++) {displayDigit (Digit); késleltetés (1000); }} void displayDigit (int digit) {byte pattern = digitPatterns [Digit]; for (int i = 0; i <7; i ++) {digitalWrite (szegmenspinok [i], bitread (minta, i)); } // Kapcsolja ki a tizedes pontot a digitalWrite (szegmenspinok [7], alacsony); }

Ebben a programban először meghatározzuk a 7 szegmens LED kijelző minden szegmenséhez csatlakoztatott csapokat és az egyes számjegyek mintáit (0 - 9). Abeállítás ()Funkció, az összes szegmenscsapot kimenetként állítjuk be. Ahurok()funkció, minden számjegyen keresztül iterálunk 0 -tól 9 -ig, és hívjuk adisplayDigit ()funkció a számjegy megjelenítéséhez a 7 szegmens LED kijelzőn. AdisplayDigit ()A funkció egy egész számot vesz igénybe, amely a megjelenítendő számjegyet ábrázolja, és a megfelelő csapokat a számjegyű minta alapján beállítja.

Több számjegy vezetése

Ha több számjegyet kell megjeleníteni 7 szegmens LED kijelzőn, akkor használhat egy multiplexálásnak nevezett technikát. A multiplexelés magában foglalja a számjegyek közötti gyors váltást magas frekvencián, így az emberi szem az összes számjegyet úgy érzékeli, hogy egyszerre megvilágítják.

A multiplexálás megvalósításához további csapokat kell használnia a mikrovezérlőn az egyes számjegyek közös katód- vagy anódcsapjainak szabályozására. Például, ha vezetni akar aHáromjegyű 7 szegmens LEDKijelzés, 3 további csapra lesz szüksége az egyes számjegyek közös katód- vagy anódcsapjainak vezérléséhez.

Itt található az előző program módosított verziója egy háromjegyű Common Cathode 7 szegmens LED kijelző meghajtására multiplexeléssel:

// Határozza meg az egyes szegmensekhez csatlakoztatott csapokat const int szegmenspins [] = {2, 3, 4, 5, 6, 7, 8, 9}; // Határozza meg az egyes számjegyek általános katódjához csatlakoztatott csapokat [] = {10, 11, 12}; // Define the patterns for each digit (0 - 9) const byte digitPatterns[] = { 0b00111111, // 0 0b00000110, // 1 0b01011011, // 2 0b01001111, // 3 0b01100110, // 4 0b01101101, // 5 0b01111101, // 6 0b00000111, // 7 0B01111111, // 8 0B01101111 // 9}; void setup () {// Állítsa be az összes szegmenscsapot kimenetként (int i = 0; i <8; i ++) {pinMode (szegmentpinok [i], output); } // Állítsa be az összes számjegyű csapot kimenetként (int i = 0; i <3; i ++) {pinMode (digitpins [i], output); }} void hurok () {// jelenítse meg a számjegyeket 123 int számjegy [] = {1, 2, 3}; for (int digitIndex = 0; digitIndex <3; digitIndex ++) {displayDigit (számjegyek [digitIndex], digitIndex); késleltetés (2); // Állítsa be a késleltetést a multiplexelés sebességének vezérléséhez}} érvénytelen displayDigit (int Digit, int digitIndex) {// Kapcsolja ki az összes számjegyet (int i = 0; i <3; i ++) {digitalWrite (digitpins [i], magas); } bájt minta = DigitPatterns [Digit]; for (int i = 0; i <7; i ++) {digitalWrite (szegmenspinok [i], bitread (minta, i)); } // Kapcsolja ki a tizedes pontot a digitalWrite (szegmenspinok [7], alacsony); // Kapcsolja be a kiválasztott számjegyű DigitalWrite -t (DigitPins [DigitIndex], alacsony); }

Ebben a programban egy sor csapot adunk hozzá (digitpin) az egyes számjegyek általános katódcsapjainak szabályozására. Ahurok()funkció, minden számjegyen keresztül iterálunk, és felhívjuk adisplayDigit ()funkció a számjegy megjelenítéséhez a megfelelő számjegyű helyzetben. AdisplayDigit ()A funkció először kikapcsolja az összes számjegyet, majd beállítja a megfelelő szegmenscsapokat a számjegyű minta alapján, és végül bekapcsolja a kiválasztott számjegyet.

Következtetés

A 7 szegmens LED -grafika vezetése mikrovezérlővel egy viszonylag egyértelmű folyamat, amelyet a megfelelő alkatrészekkel és a programozási készségekkel könnyen megvalósíthat. A blogbejegyzésben ismertetett lépéseket követve képesnek kell lennie egy 7 szegmens LED kijelzőnek a mikrovezérlőhöz és a numerikus információk megjelenítéséhez.

Ha érdekli a kiváló minőségű vásárlás7 Segement LED grafika,Háromjegyű 7 szegmens LED, vagyNégyjegyű 7 szegmens LEDMegjelenítések, kérjük, vegye fel velünk a kapcsolatot további információkért és megvitathatja az Ön konkrét követelményeit. Elkötelezettek vagyunk azért, hogy ügyfeleink számára a legjobb termékeket és szolgáltatásokat biztosítsuk versenyképes áron.

Referenciák

  • Arduino dokumentáció: https://www.arduino.cc/reference/en/
  • 7 szegmens LED -es kijelző adatlapok: Különböző gyártók webhelyei