Skip to content

Technik Blog

Programmieren | Arduino | ESP32 | MicroPython | Python | Raspberry Pi | Raspberry Pi Pico

Menu
  • Smarthome
  • Gartenautomation
  • Arduino
  • ESP32 & Co.
  • Raspberry Pi & Pico
  • Solo Mining
  • Deutsch
  • English
Menu

TM1637 Segmentanzeigen im Vergleich: 4-stellig vs. 6-stellig

Posted on 8. Juli 20258. Juli 2025 by Stefan Draeger

Wer regelmäßig mit Mikrocontrollern arbeitet, kennt sie bestimmt: die 7-Segmentanzeigen mit TM1637-Chip. Sie sind einfach anzusteuern, kompakt und günstig. Doch es gibt unterschiedliche Varianten – und jede bringt ihre eigenen Besonderheiten mit.

TM1637 Segmentanzeigen im Vergleich: 4-stellig vs. 6-stellig
Dieses Video auf YouTube ansehen.

In diesem Beitrag vergleiche ich die 4-stellige und 6-stellige Ausführung der Anzeige und erkläre, welche sich für welchen Einsatzzweck besser eignet.

Segmentanzeigen - Beispiel - Uhrzeit
Segmentanzeigen - Beispiel - Gleitkommazahl
Segmentanzeigen - Beispiel - Text
Segmentanzeigen - Beispiel - Level-Meter

Inhaltsverzeichnis

  • Die 4-stellige TM1637-Anzeige
    • Vorteile
    • Einschränkungen
    • Weitere Beiträge zur 4-stelligen Segmentanzeige
  • Die 6-stellige TM1637-Anzeige
    • Vorteile
    • Einschränkungen
  • Direkter Vergleich
    • Empfehlung
  • Programmierung der TM1637-Segmentanzeigen
  • Beispielprojekt: Level-Anzeige mit Drehpoti und mehreren TM1637-Segmentanzeigen
    • Beispielcode: Level-Meter mit TM1637-Segmentanzeigen

Die 4-stellige TM1637-Anzeige

Die klassische 4-stellige Anzeige ist sehr weit verbreitet – gerade in Arduino- und ESP-Projekten.

4-digit LED Display
4-digit LED Display
4-digit LED Display Rückseite
4-digit LED Display Rückseite
4-digit Display v1
4-digit Display v1
4-digit Display v1 Rückseite
4-digit Display v1 Rückseite

Vorteile

Kompakt und leicht zu integrieren

  • Nur zwei Datenleitungen (CLK und DIO)
  • Unterstützt den mittleren Doppelpunkt (zwischen Ziffer 2 und 3)
  • Darstellung einfacher Texte wie HELP, On, Err möglich
  • Ideal für:
    • Uhrzeit im Format MM:SS oder HH:MM
    • Timer und Zähler
    • Ganzzahlige Werte und einfache Textcodes

Einschränkungen

  • Keine Dezimalpunkte pro Ziffer
  • Maximal 4 Zeichen darstellbar

Weitere Beiträge zur 4-stelligen Segmentanzeige

Die 4-stellige 7-Segmentanzeige habe ich bereits in mehreren Projekten auf diesem Blog vorgestellt – in Kombination mit verschiedenen Mikrocontrollern und Programmiersprachen wie Arduino C++, Python, MicroPython und CircuitPython.

4fach 7-Segmentanzeige am ESP32 D1 R32
4fach 7-Segmentanzeige am ESP32 D1 R32
Schaltung - Lichtschranken mit Segmentanzeige
Schaltung – Lichtschranken mit Segmentanzeige
CPU Temperatur auf der 4fach Segmentanzeige
CPU Temperatur auf der 4fach Segmentanzeige
Temperaturanzeige des NTC-Widerstandes am RTC Shield von Open-Smart
Temperaturanzeige des NTC-Widerstandes am RTC Shield von Open-Smart

Hier eine Auswahl meiner bisherigen Beiträge:

  • Arduino Lektion 62: 7 Segmentanzeige ansteuern
  • Arduino Lektion 89: 4fach Segmentanzeige mit TM1636 / TM1637
  • Raspberry Pi Pico #11: 4fach Segmentanzeige mit CircuitPython
  • MicroPython mit ESP32: Zahlen und Zeichen auf der 4fach 7-Segmentanzeige darstellen

In all diesen Beispielen steht die einfache Ansteuerung der Anzeige im Vordergrund, jeweils passend zur Plattform. So kannst du unabhängig von der Hardware direkt loslegen.

Die 6-stellige TM1637-Anzeige

Die 6-stellige Variante bietet mehr Platz – und punktet mit zusätzlichen Möglichkeiten.

6-digit LED Display
6-digit LED Display
6-digit LED Display Rückseite
6-digit LED Display Rückseite

Vorteile

  • Anzeige von längeren Zahlen und Text
  • Unterstützt Dezimalpunkte an jeder Stelle
  • Inzwischen durch geeignete Bibliothek vollständig ansteuerbar
  • Ideal für:
    • Gleitkommazahlen (z. B. 12.3456)
    • Sensorwerte mit Kommastellen
    • Alphanumerische Codes und Texte

Einschränkungen

  • Kein mittlerer Doppelpunkt vorhanden (nicht ideal für Uhrzeit)
  • Größer als die 4-stellige Variante

Direkter Vergleich

Merkmal4-stellig TM16376-stellig TM1637
Anzahl Zeichen46
Doppelpunkt (Colon)✅ Ja❌ Nein
Dezimalpunkte pro Stelle❌ Nein✅ Ja
Anzeige von Uhrzeit✅ Ideal⚠ Möglich, aber ohne Doppelpunkt
Anzeige von Kommazahlen❌ Umständlich✅ Optimal
Anzeige von Text✅ Einfach✅ Einfach
Ansteuerung per TM1637✅ Einfach✅ Einfach

📌 Hinweis zur Bibliothek:
Für die 6-stellige Anzeige verwende ich eine alternative TM1637-kompatible Bibliothek, die beide Typen vollständig unterstützt. Die Standardbibliothek von Avishay Orpaz funktioniert gut mit 4-stelligen Anzeigen, stößt bei 6-stelligen jedoch an ihre Grenzen.

Empfehlung

  • Für Uhrzeit und kompakte Werte → 4-stellig
  • Für Gleitkommazahlen, Sensorwerte und längere Texte → 6-stellig

Weitere Beiträge & Videos:

  • Fehlender Doppelpunkt bei TM1637? Lösung mit TM1637Display.h Schritt für Schritt
  • YouTube-Video: Fehlender Doppelpunkt bei TM1637? Lösung mit TM1637Display.h Schritt für Schritt

Gerne! Hier ist ein kompakter, informativer Abschnitt zur Programmierung und zur verwendeten Bibliothek – ideal als Kapitel in deinem Blogbeitrag:

Programmierung der TM1637-Segmentanzeigen

Für die Ansteuerung der 4- und 6-stelligen TM1637-Segmentanzeigen verwende ich die leichtgewichtige und leistungsfähige Bibliothek TM1637TinyDisplay von Jason A. Cox.

Diese Bibliothek unterstützt sowohl die klassischen 4-stelligen Anzeigen als auch die 6-stelligen Varianten mit Dezimalpunkten – ohne größere Unterschiede bei der Programmierung.

Die Einbindung erfolgt über:

#include <TM1637TinyDisplay.h>    // für 4-stellige Anzeige
#include <TM1637TinyDisplay6.h>   // für 6-stellige Anzeige

Wichtig:
Für die 6-stellige Anzeige muss beim Klassennamen ein „6“ ergänzt werden:

TM1637TinyDisplay6 display(clk, dio); // für 6-stellig

Die restliche Programmierung bleibt identisch – das macht den Wechsel zwischen den Modulen besonders einfach.

Die Bibliothek kann direkt über den Bibliotheksverwalter der Arduino IDE installiert oder von GitHub heruntergeladen werden: https://github.com/jasonacox/TM1637TinyDisplay

Beispielprojekt: Level-Anzeige mit Drehpoti und mehreren TM1637-Segmentanzeigen

Im folgenden Beispielprojekt werden drei TM1637-Segmentanzeigen gleichzeitig angesteuert:

  • Zwei 4-stellige Anzeigen dienen als visuelle Level-Meter (eine mit und eine ohne Dezimalpunkte),
  • Eine 6-stellige Anzeige zeigt den aktuellen Wert zusätzlich als Zahl an.
Schaltung - Segmentanzeigen als Level-Meter mit Drehpotentiometer
Schaltung – Segmentanzeigen als Level-Meter mit Drehpotentiometer

Der analoge Eingang eines Drehpotentiometers wird ausgelesen, auf einen Bereich von 0–100 skaliert und in Echtzeit dargestellt.

Die Bibliothek TM1637TinyDisplay bzw. TM1637TinyDisplay6 macht die Ansteuerung sehr einfach – unabhängig davon, ob du eine 4- oder 6-stellige Anzeige nutzt.

Beispielcode: Level-Meter mit TM1637-Segmentanzeigen

/*
 * Titel: Level-Meter mit mehreren TM1637-Segmentanzeigen
 * Beschreibung:
 * Dieser Sketch liest den analogen Wert eines Drehpotentiometers aus
 * und zeigt ihn als Balkenanzeige (Level-Meter) auf zwei 4-stelligen
 * und einer 6-stelligen TM1637-Segmentanzeige an. Zusätzlich wird der
 * Zahlenwert als Ziffernanzeige dargestellt.
 * 
 * Autor: Stefan Draeger
 * Blogbeitrag: https://draeger-it.blog/tm1637-segmentanzeigen-im-vergleich-4-stellig-vs-6-stellig/
 */

#include <TM1637TinyDisplay.h>
#include <TM1637TinyDisplay6.h>

// Pins für die 6-stellige Anzeige
#define CLK_DSP6 5
#define DIO_DSP6 4
TM1637TinyDisplay6 display6(CLK_DSP6, DIO_DSP6);

// Pins für die erste 4-stellige Anzeige
#define CLK_DSP4 9
#define DIO_DSP4 8
TM1637TinyDisplay display4(CLK_DSP4, DIO_DSP4);

// Pins für die zweite 4-stellige Anzeige (zum Anzeigen des aktuellen Wertes)
#define CLK_DSP4_2 12
#define DIO_DSP4_2 11
TM1637TinyDisplay display4_2(CLK_DSP4_2, DIO_DSP4_2);

// Helligkeit der Anzeigen (0–7)
const int BRIGHTNESS = 5;

void setup() {
  Serial.begin(9600); // Für Debug-Ausgabe (optional)

  // Helligkeit aller Displays setzen
  display6.setBrightness(BRIGHTNESS);
  display4.setBrightness(BRIGHTNESS);
  display4_2.setBrightness(BRIGHTNESS);
}

void loop() {
  // Analogen Wert vom Potentiometer einlesen (0–1023)
  int value = analogRead(A1);

  // Wert auf 0–100 skalieren
  int level = map(value, 0, 1023, 0, 100);

  // 6-stellige Anzeige: Level-Meter mit Dezimalpunkten
  display6.showLevel(level, true);

  // 4-stellige Anzeige: Level-Meter ohne Punkte
  display4.showLevel(level, false);

  // Zweite 4-stellige Anzeige: Zahlenwert anzeigen
  display4_2.showNumber(level);

  // Kleine Pause für Lesbarkeit
  delay(75);
}

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Fragen oder Feedback?

Du hast eine Idee, brauchst Hilfe oder möchtest Feedback loswerden?
Support-Ticket erstellen

Newsletter abonnieren

Bleib auf dem Laufenden: Erhalte regelmäßig Updates zu neuen Projekten, Tutorials und Tipps rund um Arduino, ESP32 und mehr – direkt in dein Postfach.

Jetzt Newsletter abonnieren

Unterstütze meinen Blog

Wenn dir meine Inhalte gefallen, freue ich mich über deine Unterstützung auf Tipeee.
So hilfst du mit, den Blog am Leben zu halten und neue Beiträge zu ermöglichen.

draeger-it.blog auf Tipeee unterstützen

Vielen Dank für deinen Support!
– Stefan Draeger

Kategorien

Tools

  • Unix-Zeitstempel-Rechner
  • ASCII Tabelle
  • Spannung, Strom, Widerstand und Leistung berechnen
  • Widerstandsrechner
  • 8×8 LED Matrix Tool
  • 8×16 LED Matrix Modul von Keyestudio
  • 16×16 LED Matrix – Generator

Links

Blogverzeichnis Bloggerei.de TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste Blogverzeichnis trusted-blogs.com

Stefan Draeger
Königsberger Str. 13
38364 Schöningen
Tel.: 01778501273
E-Mail: info@draeger-it.blog

Folge mir auf

link zu Fabook
link zu LinkedIn
link zu YouTube
link zu TikTok
link zu Pinterest
link zu Instagram
  • Impressum
  • Datenschutzerklärung
  • Disclaimer
  • Cookie-Richtlinie (EU)
©2025 Technik Blog | Built using WordPress and Responsive Blogily theme by Superb
Cookie-Zustimmung verwalten
Wir verwenden Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wir tun dies, um das Surferlebnis zu verbessern und um personalisierte Werbung anzuzeigen. Wenn Sie diesen Technologien zustimmen, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn Sie Ihre Zustimmung nicht erteilen oder zurückziehen, können bestimmte Funktionen beeinträchtigt werden.
Funktional Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt. Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.
Optionen verwalten Dienste verwalten Verwalten von {vendor_count}-Lieferanten Lese mehr über diese Zwecke
Einstellungen anzeigen
{title} {title} {title}