Jak sterować jednocyfrową 7-segmentową diodą LED za pomocą mikrokontrolera PIC?

Nov 03, 2025Zostaw wiadomość

Sterowanie jednocyfrową 7-segmentową diodą LED za pomocą mikrokontrolera PIC to ciekawy i praktyczny projekt, który znajduje zastosowanie w różnych dziedzinach, takich jak wyświetlacze cyfrowe, systemy wbudowane i automatyka. Jako jednocyfrowy dostawca 7-segmentowych diod LED jestem dobrze zaznajomiony z komponentami i procesem związanym z tym mechanizmem sterującym. Na tym blogu poprowadzę Cię przez kolejne etapy sterowania jednocyfrową, 7-segmentową diodą LED za pomocą mikrokontrolera PIC.

Zrozumienie jednocyfrowej 7-segmentowej diody LED

Jednocyfrowa 7-segmentowa dioda LED składa się z siedmiu pojedynczych segmentów LED ułożonych w kształcie cyfry 8 wraz z przecinkiem. Segmenty te są zazwyczaj oznaczone jako a, b, c, d, e, f i g. Podświetlając różne kombinacje tych segmentów, możemy wyświetlić różne cyfry od 0 do 9, a także niektóre litery.

7-segmentowa dioda LED może mieć wspólną anodę lub wspólną katodę. W konfiguracji ze wspólną anodą wszystkie anody poszczególnych diod LED są ze sobą połączone i podłączone do źródła napięcia dodatniego. Aby oświetlić segment, odpowiedni pin katody musi być pociągnięty nisko. I odwrotnie, w konfiguracji ze wspólną katodą wszystkie katody są ze sobą połączone i uziemione, a aby oświetlić segment, odpowiedni pin anody musi zostać podciągnięty wysoko.

Wybór odpowiedniego mikrokontrolera PIC

Jeśli chodzi o sterowanie jednocyfrową, 7-segmentową diodą LED, można zastosować kilka mikrokontrolerów PIC. Niektóre popularne opcje obejmują PIC16F84A, PIC16F628A i PIC18F452. Te mikrokontrolery zapewniają dobrą równowagę pomiędzy kosztem, wydajnością i łatwością obsługi.

W tym projekcie załóżmy, że używamy PIC16F84A. Posiada 13 pinów I/O, które wystarczają do sterowania jednocyfrową 7-segmentową diodą LED. Mikrokontroler pracuje z częstotliwością zegara, którą można dostosować do wymagań projektu.

Projekt obwodu

Pierwszym krokiem w sterowaniu 7-segmentową diodą LED jest zaprojektowanie obwodu. Oto podstawowy schemat obwodu do sterowania jednocyfrową, 7-segmentową diodą LED ze wspólną katodą za pomocą układu PIC16F84A:

  1. Zasilanie: Podłącz pin VDD układu PIC16F84A do dodatniego zacisku zasilacza (zwykle 5 V), a styk VSS do masy.
  2. 7 - Podłączenie diody segmentowej: Podłącz siedmiosegmentowe styki (a, b, c, d, e, f, g) 7-segmentowej diody LED do styków wyjściowych mikrokontrolera PIC. Na przykład możesz podłączyć segment a do styku RA0, segment b do styku RA1 i tak dalej. Jeśli używasz diody LED ze wspólną katodą, może być konieczne dodanie rezystorów ograniczających prąd szeregowo z każdym segmentem, aby zapobiec przetężeniu i uszkodzeniu diod LED. Typowa wartość tych rezystorów wynosi około 330 omów.
  3. Rezystory podciągające: W razie potrzeby dodaj rezystory podciągające do pinów wejściowych mikrokontrolera, aby zapewnić stabilną pracę.

Programowanie mikrokontrolera PIC

Po zaprojektowaniu i złożeniu obwodu następnym krokiem jest zaprogramowanie mikrokontrolera PIC. Do napisania i skompilowania kodu użyjemy MPLAB IDE (Integrated Development Environment) wraz z asemblerem MPASM.

Oto prosty przykład kodu montażowego do wyświetlania cyfr od 0 do 9 na jedno-cyfrowej 7-segmentowej diodzie LED ze wspólną katodą przy użyciu PIC16F84A:

LISTA P=16F84A #INCLUDE <P16F84A.INC> ORG 0 MOVLW 0x07 ; Skonfiguruj PORTA jako wyjście MOVWF TRISA MOVLW 0x00 ; Zainicjuj PORTA na 0 MOVWF PORTA MAIN_LOOP: ; Wyświetlana cyfra 0 MOVLW 0x3F MOVWF OPÓŹNIENIE POŁĄCZENIA PORTA; Wyświetlana cyfra 1 MOVLW 0x06 MOVWF OPÓŹNIENIE POŁĄCZENIA PORTA ; Wyświetlana cyfra 2 MOVLW 0x5B MOVWF OPÓŹNIENIE POŁĄCZENIA PORTA ; Wyświetlana cyfra 3 MOVLW 0x4F MOVWF OPÓŹNIENIE POŁĄCZENIA PORTA; Wyświetlana cyfra 4 MOVLW 0x66 MOVWF OPÓŹNIENIE POŁĄCZENIA PORTA; Wyświetlana cyfra 5 MOVLW 0x6D MOVWF OPÓŹNIENIE POŁĄCZENIA PORTA; Wyświetlana cyfra 6 MOVLW 0x7D MOVWF OPÓŹNIENIE POŁĄCZENIA PORTA; Wyświetlana cyfra 7 MOVLW 0x07 MOVWF OPÓŹNIENIE POŁĄCZENIA PORTA; Wyświetlana cyfra 8 MOVLW 0x7F MOVWF OPÓŹNIENIE POŁĄCZENIA PORTA; Wyświetlana cyfra 9 MOVLW 0x6F MOVWF PORTA CALL DELAY GOTO MAIN_LOOP DELAY: MOVLW D'255' DELAY_LOOP: DECFSZ 0x20, F GOTO DELAY_LOOP RETURN END

W tym kodzie najpierw konfigurujemy piny PORTA układu PIC16F84A jako piny wyjściowe. Następnie w pętli głównej wyświetlamy każdą cyfrę od 0 do 9 na 7-segmentowej diodzie LED wysyłając odpowiednie wartości szesnastkowe do rejestru PORTA. TheOPÓŹNIENIEpodprogram służy do wprowadzenia krótkiego opóźnienia pomiędzy wyświetleniem każdej cyfry, dzięki czemu cyfry są wyraźnie widoczne.

Kompilowanie i programowanie kodu

Po napisaniu kodu należy go skompilować za pomocą asemblera MPASM w środowisku MPLAB IDE. Asembler wygeneruje plik szesnastkowy, który będzie zawierał kod maszynowy mikrokontrolera PIC.

Aby zaprogramować PIC16F84A, możemy użyć programatora PIC, takiego jak Pickit 2 lub Pickit 3. Podłącz programator do mikrokontrolera PIC i komputera, a następnie użyj oprogramowania do programowania, aby załadować plik szesnastkowy do mikrokontrolera.

Zaawansowane zastosowania i rozważania

Chociaż podstawowy obwód i kod pozwalają nam wyświetlać cyfry od 0 do 9, istnieje wiele zaawansowanych zastosowań i rozważań, które można zbadać.

3Three-digit 7 Segement LED

  • Wyświetlanie liter: Stosując różne kombinacje aktywacji segmentów, możliwe jest wyświetlanie niektórych liter na 7-segmentowej diodzie LED. Na przykład, aby wyświetlić literę „A”, możemy aktywować segmenty a, b, c, e, f i g.
  • Wiele cyfr: Jeśli chcesz wyświetlić wiele cyfr, możesz użyćTrzycyfrowa 7-segmentowa dioda LED,Dwucyfrowa siedmiosegmentowa dioda LED, LubCzterocyfrowa 7-segmentowa dioda LED. Zasada jest podobna, ale będziesz musiał użyć technik multipleksowania, aby kontrolować każdą cyfrę sekwencyjnie.
  • Kontrola jasności: Jasność 7-segmentowej diody LED można regulować regulując prąd przepływający przez segmenty. Można to osiągnąć za pomocą sygnału PWM (modulacja szerokości impulsu) generowanego przez mikrokontroler PIC.

Kontakt w sprawie zakupów

Jeżeli jesteś zainteresowany zakupem jednocyfrowych 7-segmentowych diod LED lub masz pytania dotyczące sterowania nimi za pomocą mikrokontrolerów PIC, skontaktuj się z nami. Jesteśmy niezawodnym dostawcą wysokiej jakości 7-segmentowych diod LED i możemy zapewnić Państwu najlepsze produkty i wsparcie techniczne.

Referencje

  • Karta katalogowa Microchip Technology Inc. PIC16F84A.
  • Podręcznik użytkownika MPLAB IDE.
  • Podręcznik użytkownika asemblera MPASM.