Arduino Nano ESP32 – TM1637 4-stellige 7-Segmentanzeige
Dieses Tutorial zeigt dir, wie du den Arduino Nano ESP32 mit dem TM1637-4-stellige 7-Segmentanzeige-Modul verwendest. Es deckt die folgenden Themen ab:
- Anschluss der vierstelligen 7-Segmentanzeige an den Arduino Nano ESP32
- Programmierung des Arduino Nano ESP32, um Informationen auf der vierstelligen 7-Segmentanzeige anzuzeigen

In diesem Tutorial verwenden wir ein vierstelliges 7-Segment-Display-Modul mit einem Doppelpunkt-Trennzeichen. Wenn Sie Fließkommazahlen anzeigen möchten, lesen Sie bitte das Tutorial 74HC595 4-digit 7-segment Display Module.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über TM1637 4-stellige 7-Segmentanzeige
Ein vierstelliges 7-Segment-Display wird üblicherweise für Uhr, Timer und Zähler verwendet und zeigt die Temperatur an. Allerdings benötigt es normalerweise 12 Anschlüsse. Das TM1637-Modul vereinfacht dies, indem es nur 4 Anschlüsse benötigt: 2 für die Stromversorgung und 2 für die Ansteuerung der Segmente.
Ein TM1637-Modul besteht in der Regel aus vier 7-Segment-LEDs und einer der folgenden Optionen:
- Eine Doppelpunkt-LED in der Mitte: Sie eignet sich ideal zur Anzeige der Uhrzeit in Stunden und Minuten, oder Minuten und Sekunden, oder zur Anzeige der Punktestände zweier Mannschaften.
- Vier punktförmige LEDs pro Ziffer: Sie eignen sich ideal zur Anzeige der Temperatur oder eines Dezimalwerts.
Pinbelegung des TM1637 für eine 4-stellige 7-Segmentanzeige
TM1637 4-stelliges 7-Segment-Display-Modul hat vier Pins:
- CLK-Pin: ist ein Taktpin, der mit jedem digitalen Pin des Arduino Nano ESP32 verbunden werden sollte.
- DIO-Pin: ist ein Data-I/O-Pin, der mit jedem digitalen Pin des Arduino Nano ESP32 verbunden werden sollte.
- VCC-Pin: wird verwendet, um dem Modul Strom zuzuführen, und sollte an eine 3,3-V bis 5-V-Stromversorgung angeschlossen werden.
- GND-Pin: ist ein Massepin, der mit dem Massepunkt des Arduino Nano ESP32 verbunden werden sollte.

Verdrahtungsdiagramm
Um ein TM1637 mit einem ESP32 zu verbinden, werden vier Kabel benötigt: zwei für die Stromversorgung und zwei zur Ansteuerung des Displays. Das Modul kann vom 5-Volt-Ausgang des Arduino Nano ESP32 mit Strom versorgt werden. Die CLK- und DIO-Pins sollten mit beliebigen digitalen Pins des Arduino verbunden werden; zum Beispiel mit den Pins 2 und 3. Werden andere Pins verwendet, müssen die Pin-Nummern im Code angepasst werden.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Bibliotheksinstallation
Um einfach mit dem TM1637-4-stelligen 7-Segment-Display zu programmieren, müssen Sie die Bibliothek TM1637Display von Avishay Orpaz installieren. Befolgen Sie die untenstehenden Schritte, um die Bibliothek zu installieren:
- Öffnen Sie den Bibliotheks-Manager, indem Sie auf das Bibliotheks-Manager-Symbol in der linken Navigationsleiste der Arduino IDE klicken
- Suchen Sie „TM1637“, und finden Sie anschließend die TM1637Display-Bibliothek von Avishay Orpaz
- Klicken Sie auf die Install-Schaltfläche.

Wie man TM1637 4-stellige 7-Segmentanzeige mit Arduino Nano ESP32 programmiert
- Binde die Bibliothek ein.
- Geben Sie die Pins des Arduino Nano ESP32 an, die mit den CLK- und DIO-Pins des Displaymoduls verbunden sind. Zum Beispiel D9 und D10.
- Erstelle ein TM1637Display-Objekt.
- Dann können Sie Zahlen, Zahlen mit Dezimalstellen, Zahlen mit negativen Vorzeichen oder Buchstaben anzeigen. Im Fall von Buchstaben müssen Sie die Buchstabenform angeben. Schauen wir uns jeden Fall einzeln an.
- Zahlen anzeigen: Siehe untenstehende Beispiele; '_' in der folgenden Beschreibung steht für eine Ziffer, die in der Praxis nicht angezeigt wird:
- Zeige die Nummer mit einem Doppelpunkt oder Punkt:
Weitere Informationen zu den Funktionen finden Sie am Ende dieses Tutorials.
Arduino Nano ESP32 Code
Schnelle Schritte
Um mit dem Arduino Nano ESP32 in der Arduino-IDE zu beginnen, befolgen Sie diese Schritte:
- Wenn Sie neu bei Arduino Nano ESP32 sind, verweisen Sie auf das Tutorial zu wie man die Umgebung für Arduino Nano ESP32 in der Arduino IDE einrichtet.
- Verdrahten Sie die Bauteile gemäß dem bereitgestellten Diagramm.
- Verbinden Sie das Arduino Nano ESP32-Board mit Ihrem Computer über ein USB-Kabel.
- Starten Sie die Arduino IDE auf Ihrem Computer.
- Wählen Sie das Arduino Nano ESP32-Board und den entsprechenden COM-Port aus.
- Kopieren Sie den obigen Code und fügen Sie ihn in die Arduino IDE ein.
- Kompilieren und laden Sie den Code auf das Arduino Nano ESP32-Board hoch, indem Sie in der Arduino IDE auf die Schaltfläche Upload klicken.

- Prüfen Sie die Zustände der 7-Segmentanzeige.
Video Tutorial
Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.
Funktionsreferenzen
Nachfolgend finden Sie die Referenzen für:
- display.clear()
- display.showNumberDec()
- display.showNumberDecEx()
- display.setSegments()
- display.setBrightness()
display.clear()
Beschreibung
Diese Funktion löscht das Display. Alle LEDs werden ausgeschaltet.
display.showNumberDec()
Beschreibung
Die 7-Segmentanzeige wird verwendet, um eine Dezimalzahl anzuzeigen. Diese Funktion wird dafür verwendet.
Satzbau
Parameter
- num: ist der Wert, der auf der 7-Segmentanzeige angezeigt wird und reicht von -9999 bis 9999.
- leading_zero: ein optionaler Parameter mit dem Standardwert false, der bestimmt, ob führende Nullen angezeigt werden sollen.
- length: ein weiterer optionaler Parameter mit dem Standardwert 4, legt die Anzahl der anzuzeigenden Ziffern fest.
- pos: ebenfalls ein optionaler Parameter mit dem Standardwert 0, legt die Position der führenden Ziffer fest.
Bitte beachten Sie, dass die Funktion nichts anzeigt, wenn die Zahl außerhalb des Bereichs liegt oder wenn der Längenwert größer als 4 ist.
showNumberDecEx()
Beschreibung
Diese Funktion ist eine Weiterentwicklung von showNumberDec() und bietet mehr Kontrolle über die Anzeige einer Dezimalzahl auf der 7-Segment-Anzeige. Sie verfügt über die Möglichkeit, die Punkt- oder Doppelpunktsegmente jeder Ziffer einzeln zu steuern.
Syntax
Parameter
- num1: Dies ist die Zahl, die auf dem 7-Segment-Display angezeigt werden soll. Sie sollte sich im Bereich von -9999 bis 9999 befinden.
- dots: Dieser Parameter dient dazu, festzulegen, welche Segmente des Displays als Punkte eingeschaltet werden sollen. Jedes Bit des Werts entspricht einer Ziffer am Display. Mögliche Werte sind:
- 0b10000000 zum Anzeigen des ersten Punkts (0.000)
- 0b01000000 zum Anzeigen des zweiten Punkts (00.00) oder des Doppelpunkts (00:00). Es hängt vom Modultyp ab.
- 0b00100000 zum Anzeigen des dritten Punkts (000.0)
- leading_zero: Dies ist ein optionaler Parameter mit einem Standardwert von false. Wenn er auf true gesetzt wird, werden führende Nullen angezeigt.
- length: Dies ist ein optionaler Parameter mit einem Standardwert von 4. Er bestimmt die Anzahl der Ziffern, die auf dem 7-Segment-Display angezeigt werden.
- pos: Dies ist ein optionaler Parameter mit einem Standardwert von 0. Er legt die Position der höchstsignifikanten Ziffer der Zahl fest.
Zum Beispiel, wenn Sie display.showNumberDecEx(1530, 0b01000000) verwenden, wird es angezeigt:
- Die Zahl 15:30 auf der 7-Segmentanzeige, falls das Modul eine Doppelpunkt-LED hat.
- Die Zahl 15.30 auf der 7-Segmentanzeige, falls das Modul punktförmige LEDs hat.
Bitte beachten Sie, dass die Funktion nichts anzeigt, wenn die Zahl außerhalb des Bereichs liegt oder wenn der Wert der Länge größer als 4 ist.
setSegments()
Beschreibung
Die Funktion ermöglicht es, die Segmente der 7-Segmentanzeige direkt zu setzen. Dadurch können Buchstaben, Sonderzeichen oder alle LED-Segmente ausgeschaltet werden.
Syntax
Parameter
- segments: Dieser Parameter legt die Segmente der 7-Segmentanzeige fest, es handelt sich um ein Array von Bytes. Jedes Byte repräsentiert die Segmente jeder Ziffer, und jedes Segment wird durch ein Bit im Byte dargestellt.
- length: Es handelt sich um einen optionalen Parameter mit dem Standardwert 4. Er bestimmt die Anzahl der Ziffern, die auf der 7-Segmentanzeige angezeigt werden.
- pos: Es handelt sich um einen optionalen Parameter mit dem Standardwert 0. Er gibt die Position der signifikantesten Ziffer der Zahl an.
Diese Funktion ist vorteilhaft, wenn Sie Zeichen oder Symbole anzeigen müssen, die auf der Standard-7-Segmentanzeige nicht verfügbar sind. Sie können jedes von Ihnen gewünschte Muster erstellen, indem Sie die Segmente direkt einstellen.
Bitte beachten Sie, dass die Funktion nichts anzeigt, wenn die Zahl außerhalb des Bereichs liegt oder die Länge größer als 4 ist.
setHelligkeit()
Beschreibung
Die Helligkeit der 7-Segmentanzeige kann mithilfe dieser Funktion angepasst werden.
Satzbau
Parameter
- brightness: Dieser Parameter passt die Helligkeit der 7-Segment-Anzeige an. Der Wert sollte zwischen 0 und 7 liegen, wobei eine höhere Zahl eine hellere Anzeige erzeugt.
- on: Dieser Parameter ist optional und hat einen Standardwert von true. Er wird verwendet, um das Display ein- oder auszuschalten. Wenn er auf false gesetzt wird, wird das Display deaktiviert.