Whatsapp (Englisch)

15919880141

Wie steuere ich eine einstellige 7-Segment-LED mit einem PIC-Mikrocontroller?

Nov 03, 2025Eine Nachricht hinterlassen

Die Steuerung einer einstelligen 7-Segment-LED mit einem PIC-Mikrocontroller ist ein interessantes und praktisches Projekt, das in verschiedenen Bereichen wie Digitalanzeigen, eingebetteten Systemen und Automatisierung Anwendung findet. Als einstelliger 7-Segment-LED-Lieferant bin ich mit den Komponenten und dem Prozess dieses Steuermechanismus bestens vertraut. In diesem Blog werde ich Sie durch die Schritte zur Steuerung einer einstelligen 7-Segment-LED mit einem PIC-Mikrocontroller führen.

Die einstellige 7-Segment-LED verstehen

Eine einstellige 7-Segment-LED besteht aus sieben einzelnen LED-Segmenten, die in Form der Ziffer 8 angeordnet sind, zusammen mit einem Dezimalpunkt. Diese Segmente werden typischerweise als a, b, c, d, e, f und g bezeichnet. Durch das Aufleuchten verschiedener Kombinationen dieser Segmente können wir verschiedene Ziffern von 0 bis 9 sowie einige Buchstaben anzeigen.

Die 7-Segment-LED kann entweder eine gemeinsame Anode oder eine gemeinsame Kathode sein. Bei einer Konfiguration mit gemeinsamer Anode sind alle Anoden der einzelnen LEDs miteinander verbunden und an eine positive Spannungsquelle angeschlossen. Um ein Segment zum Leuchten zu bringen, muss der entsprechende Kathodenstift nach unten gezogen werden. Umgekehrt sind bei einer gemeinsamen Kathodenkonfiguration alle Kathoden miteinander verbunden und geerdet, und um ein Segment zum Leuchten zu bringen, muss der entsprechende Anodenstift nach oben gezogen werden.

Auswahl des richtigen PIC-Mikrocontrollers

Zur Steuerung einer einstelligen 7-Segment-LED können mehrere PIC-Mikrocontroller verwendet werden. Zu den beliebten Optionen gehören PIC16F84A, PIC16F628A und PIC18F452. Diese Mikrocontroller bieten ein gutes Gleichgewicht zwischen Kosten, Leistung und Benutzerfreundlichkeit.

Nehmen wir für dieses Projekt an, dass wir einen PIC16F84A verwenden. Es verfügt über 13 I/O-Pins, die zur Ansteuerung einer einstelligen 7-Segment-LED ausreichen. Der Mikrocontroller arbeitet mit einer Taktfrequenz, die je nach Projektanforderungen angepasst werden kann.

Schaltungsdesign

Der erste Schritt bei der Steuerung der 7-Segment-LED besteht im Entwurf der Schaltung. Hier ist ein grundlegender Schaltplan zur Steuerung einer einstelligen 7-Segment-LED mit gemeinsamer Kathode mithilfe eines PIC16F84A:

  1. Stromversorgung: Verbinden Sie den VDD-Pin des PIC16F84A mit dem Pluspol der Stromversorgung (normalerweise 5 V) und den VSS-Pin mit Masse.
  2. 7-Segment-LED-Anschluss: Verbinden Sie die sieben Segmentpins (a, b, c, d, e, f, g) der 7-Segment-LED mit den Ausgangspins des PIC-Mikrocontrollers. Beispielsweise können Sie Segment a mit Pin RA0, Segment b mit Pin RA1 usw. verbinden. Wenn Sie eine LED mit gemeinsamer Kathode verwenden, müssen Sie möglicherweise Strombegrenzungswiderstände in Reihe mit jedem Segment hinzufügen, um Überstrom und Schäden an den LEDs zu verhindern. Ein typischer Wert für diese Widerstände liegt bei etwa 330 Ohm.
  3. Pull-up-Widerstände: Fügen Sie bei Bedarf Pull-Up-Widerstände zu den Eingangspins des Mikrocontrollers hinzu, um einen stabilen Betrieb zu gewährleisten.

Programmierung des PIC-Mikrocontrollers

Sobald die Schaltung entworfen und zusammengebaut ist, besteht der nächste Schritt darin, den PIC-Mikrocontroller zu programmieren. Wir werden die MPLAB IDE (Integrated Development Environment) zusammen mit dem MPASM-Assembler verwenden, um den Code zu schreiben und zu kompilieren.

Hier ist ein einfaches Assembler-Codebeispiel für die Anzeige der Ziffern von 0 bis 9 auf einer einstelligen 7-Segment-LED mit gemeinsamer Kathode unter Verwendung eines PIC16F84A:

LIST P=16F84A #INCLUDE <P16F84A.INC> ORG 0 MOVLW 0x07 ; PORTA als Ausgang konfigurieren MOVWF TRISA MOVLW 0x00 ; PORTA auf 0 initialisieren MOVWF PORTA MAIN_LOOP: ; Anzeigeziffer 0 MOVLW 0x3F MOVWF PORTA CALL DELAY ; Anzeigeziffer 1 MOVLW 0x06 MOVWF PORTA CALL DELAY ; Anzeigeziffer 2 MOVLW 0x5B MOVWF PORTA CALL DELAY ; Anzeigeziffer 3 MOVLW 0x4F MOVWF PORTA CALL DELAY ; Anzeigeziffer 4 MOVLW 0x66 MOVWF PORTA CALL DELAY ; Anzeigeziffer 5 MOVLW 0x6D MOVWF PORTA CALL DELAY ; Anzeigeziffer 6 MOVLW 0x7D MOVWF PORTA CALL DELAY ; Anzeigeziffer 7 MOVLW 0x07 MOVWF PORTA CALL DELAY ; Anzeigeziffer 8 MOVLW 0x7F MOVWF PORTA CALL DELAY ; Anzeigeziffer 9 MOVLW 0x6F MOVWF PORTA CALL DELAY GOTO MAIN_LOOP DELAY: MOVLW D'255' DELAY_LOOP: DECFSZ 0x20, F GOTO DELAY_LOOP RETURN END

In diesem Code konfigurieren wir zunächst die PORTA-Pins des PIC16F84A als Ausgangspins. Dann zeigen wir in der Hauptschleife jede Ziffer von 0 bis 9 auf der 7-Segment-LED an, indem wir die entsprechenden Hexadezimalwerte an das PORTA-Register senden. DerVERZÖGERUNGDie Unterroutine wird verwendet, um eine kurze Verzögerung zwischen den einzelnen Ziffernanzeigen einzuführen, damit wir die Ziffern deutlich sehen können.

Kompilieren und Programmieren des Codes

Nachdem wir den Code geschrieben haben, müssen wir ihn mit dem MPASM-Assembler in der MPLAB-IDE kompilieren. Der Assembler generiert eine Hex-Datei, die den Maschinencode für den PIC-Mikrocontroller enthält.

Um den PIC16F84A zu programmieren, können wir einen PIC-Programmierer wie Pickit 2 oder Pickit 3 verwenden. Verbinden Sie den Programmierer mit dem PIC-Mikrocontroller und dem Computer und laden Sie dann mit der Programmiersoftware die Hex-Datei auf den Mikrocontroller.

Erweiterte Anwendungen und Überlegungen

Während die Grundschaltung und der Code es uns ermöglichen, Ziffern von 0 bis 9 anzuzeigen, gibt es viele fortgeschrittene Anwendungen und Überlegungen, die untersucht werden können.

3Three-digit 7 Segement LED

  • Buchstaben anzeigen: Durch die Verwendung verschiedener Kombinationen von Segmentaktivierungen ist es möglich, einige Buchstaben auf der 7-Segment-LED anzuzeigen. Um beispielsweise den Buchstaben „A“ anzuzeigen, können wir die Segmente a, b, c, e, f und g aktivieren.
  • Mehrere Ziffern: Wenn Sie mehrere Ziffern anzeigen müssen, können Sie verwendenDreistellige 7-Segment-LED,Zweistellige Sieben-Segment-LED, oderVierstellige 7-Segment-LED. Das Prinzip ist ähnlich, Sie müssen jedoch Multiplextechniken verwenden, um jede Ziffer nacheinander zu steuern.
  • Helligkeitsregelung: Die Helligkeit der 7-Segment-LED kann durch Anpassen des durch die Segmente fließenden Stroms gesteuert werden. Dies kann durch die Verwendung eines vom PIC-Mikrocontroller erzeugten PWM-Signals (Pulsweitenmodulation) erreicht werden.

Kontakt für Beschaffung

Wenn Sie Interesse am Kauf von einstelligen 7-Segment-LEDs haben oder Fragen zur Ansteuerung mit PIC-Mikrocontrollern haben, können Sie sich gerne an uns wenden. Wir sind ein zuverlässiger Lieferant hochwertiger 7-Segment-LEDs und können Ihnen die besten Produkte und technischen Support bieten.

Referenzen

  • Microchip Technology Inc. PIC16F84A Datenblatt.
  • MPLAB IDE-Benutzerhandbuch.
  • MPASM Assembler-Benutzerhandbuch.