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

Fehlender Doppelpunkt bei TM1637? Lösung mit TM1637Display.h Schritt für Schritt

Posted on 24. Juni 202524. Juni 2025 by Stefan Draeger

Ein Besucher meines Blogs hat mir vor Kurzem folgende Frage geschickt:

„Ich lasse mir auf einer 4fach-7Segment-Anzeige mit TM1637-Chip abwechselnd die Temperaturen von zwei Sensoren und die Uhrzeit anzeigen. Klappt soweit alles einwandfrei, nur bekomme ich den Doppelpunkt zwischen Segment 2 und 3 nicht zum Leuchten. Ich benutze die TM1637Display.h-Bibliothek. Kannst du mir einen Tipp geben, mit welchem Befehl ich den Doppelpunkt ein- bzw. ausschalten kann?“

Diese Frage nehme ich gerne zum Anlass, um in diesem Beitrag zu zeigen, wie man den Doppelpunkt zwischen den mittleren Ziffern korrekt aktiviert, insbesondere beim Einsatz der beliebten Bibliothek TM1637Display.h.

Ich realisiere dafür ein kleines Beispielprojekt, das mit einem Arduino Nano V3 und einer 4-stelligen 7-Segmentanzeige arbeitet. Der Timer zählt im Format MM:SS hoch, wobei der Doppelpunkt zwischen Minuten und Sekunden sichtbar ist und im Sekundentakt blinkt.

Fehlender Doppelpunkt bei TM1637? Lösung mit TM1637Display.h Schritt für Schritt
Dieses Video auf YouTube ansehen.

Du hast auch eine Frage oder benötigst Unterstützung bei einem deiner Mikrocontroller-Projekte?
Ich freue mich immer über Fragen und Anregungen! Nutze dazu gerne mein Kontaktformular unter:
👉 https://draeger-it.blog/support/

Inhaltsverzeichnis

  • Unterstützte 7-Segment-Anzeigen mit TM1637
  • Schaltung: TM1637-Modul mit dem Arduino Nano verbinden
  • So aktivierst du den Doppelpunkt auf der TM1637-Anzeige
    • Verwendete Bibliothek: TM1637Display
    • Aktivieren / deaktivieren des Doppelpunktes
      • Die beiden Methoden im Vergleich:
      • Beispiel: Zeit mit aktivem Doppelpunkt anzeigen

Unterstützte 7-Segment-Anzeigen mit TM1637

Die in diesem Beitrag gezeigte Lösung funktioniert mit 4-stelligen 7-Segment-Anzeigen, die den TM1637-Treiberchip verwenden. Diese Module sind besonders beliebt in Arduino- und ESP-Projekten, da sie mit nur zwei Datenleitungen (CLK und DIO) auskommen und leicht zu programmieren sind.

Typische Merkmale solcher Anzeigen:

  • 4 Ziffern (0–9, Buchstaben eingeschränkt darstellbar)
  • Ein Doppelpunkt (zwischen Ziffer 2 und 3) – ideal für Zeitdarstellung
  • Ansteuerung über TM1637Display.h Bibliothek
  • Geringer Stromverbrauch und kompakte Bauform
verschiedene Segmentanzeigen für Arduino, ESP32 & Raspberry PI
verschiedene Segmentanzeigen für Arduino, ESP32 & Raspberry PI

Wichtig:
Nicht alle TM1637-Module besitzen den funktionsfähigen Doppelpunkt – beim Kauf solltest du darauf achten, dass zwischen der zweiten und dritten Stelle zwei kleine Punkte sichtbar sind. Nur dann lässt sich der Doppelpunkt auch softwareseitig aktivieren.

Schaltung: TM1637-Modul mit dem Arduino Nano verbinden

Die Verbindung zwischen dem Arduino und dem TM1637-Display ist denkbar einfach.

Schaltung - Arduino mit 4fach 7Segmentanzeige
Schaltung – Arduino mit 4fach 7Segmentanzeige

Es werden nur zwei digitale Pins benötigt:

TM1637-PinArduinoBeschreibung
GNDGNDMasse
VCC5VVersorgungsspannung
DIOD4Datensignal
CLKD5Taktleitung

So aktivierst du den Doppelpunkt auf der TM1637-Anzeige

Verwendete Bibliothek: TM1637Display

Für dieses Projekt verwende ich die beliebte Bibliothek TM1637Display von Avishay Orpaz, die speziell für 4-stellige 7-Segment-Anzeigen mit TM1637-Chip entwickelt wurde.

🔗 GitHub Repository: https://github.com/avishorp/TM1637

Diese Bibliothek stellt einfache Funktionen zur Verfügung, mit denen sich Zahlen, Texte und auch der Doppelpunkt bequem anzeigen lassen.

TM1637Display GitHub Repo ZIP-Download
TM1637Display GitHub Repo ZIP-Download
TM1637Display - Bibliotheksverwalter
TM1637Display – Bibliotheksverwalter

Aktivieren / deaktivieren des Doppelpunktes

Ein häufiges Problem beim Einsatz der TM1637Display.h-Bibliothek: Der Doppelpunkt zwischen der zweiten und dritten Ziffer bleibt dunkel, obwohl die Anzeige korrekt funktioniert. Der Grund liegt in der verwendeten Funktion – denn nicht jede Methode der Bibliothek kann den Doppelpunkt ansteuern.

Die beiden Methoden im Vergleich:

display.showNumberDec(value, true, 4, 0);

Diese Funktion zeigt eine Zahl im Dezimalformat an – ohne Möglichkeit, den Doppelpunkt zu aktivieren oder zu steuern. Sie ist ideal für reine Zahlenwerte wie 1234 oder 0007, aber nicht geeignet für Zeitformate wie MM:SS.

display.showNumberDecEx(value, dots, true, 4, 0);

Die erweiterte Version showNumberDecEx() erlaubt dagegen die gezielte Steuerung des Doppelpunkts über den Parameter dots. Hier kannst du mit einem einfachen Bitwert den Doppelpunkt aktivieren oder deaktivieren.

Der entscheidende Parameter:

Wert von dotsWirkung auf den Doppelpunkt
0b00000000 oder 0Doppelpunkt aus
0b01000000 oder 64Doppelpunkt an (Segment G)

Das Bit 0b01000000 steht für Segment G, welches beim TM1637-Display für den mittleren Doppelpunkt zuständig ist.

Beispiel: Zeit mit aktivem Doppelpunkt anzeigen

int value = 1234; // z. B. 12:34
int colon = 0b01000000; // Doppelpunkt aktivieren

display.showNumberDecEx(value, colon, true, 4, 0);

💡 Tipp: Wer den Doppelpunkt blinken lassen möchte, kann den Wert von colon einfach im Sekundentakt zwischen 64 und 0 umschalten – wie im Beispielprojekt gezeigt.

Beispiel: Arduino Nano V3 mit 4fach 7SegmentanzeigHerunterladen
Quellcode
/*
 * Titel: Fehlender Doppelpunkt bei TM1637? Lösung mit TM1637Display.h Schritt für Schritt
 * Beschreibung:
 * Dieses Beispiel zeigt, wie man mit einem Color Nano V4.0 und einer 4-stelligen 7-Segmentanzeige (TM1637)
 * einen einfachen Timer realisiert. Die Sekunden werden im Format MM:SS dargestellt. 
 * Der Doppelpunkt zwischen den beiden mittleren Stellen wird mithilfe der TM1637Display.h-Bibliothek korrekt aktiviert.
 * Nach einem Reset beginnt der Timer wieder bei 00:00.
 * 
 * Autor: Stefan Draeger
 * Webseite: https://draeger-it.blog
 * Beitrag: https://draeger-it.blog/fehlender-doppelpunkt-bei-tm1637-loesung-mit-tm1637display-h-schritt-fuer-schritt/
 */

#include <TM1637Display.h>

// Pin-Definitionen für das TM1637-Modul
#define segmentanzeige_CLK 5
#define segmentanzeige_DIO 4

// Bitmaske für den Doppelpunkt (Segment G)
#define DISPLAY_COLON 0b01000000

// Initialisierung des Displays mit den definierten Pins
TM1637Display display(segmentanzeige_CLK, segmentanzeige_DIO);

// Zählvariable für vergangene Sekunden
int seconds = 0;

void setup() {
  Serial.begin(9600); // Serielle Schnittstelle für Debug-Zwecke

  // Maximale Helligkeit des Displays (0x00 bis 0x0f)
  display.setBrightness(0x0f);

  // Kurzer Starttest: alle Segmente für 1 Sekunde anzeigen
  uint8_t allSegments[] = { 0xff, 0xff, 0xff, 0xff };
  display.setSegments(allSegments);
  delay(1000);
}

void loop() {
  // Sekundenzähler erhöhen
  seconds++;

  // Umrechnung der Sekunden in Minuten und Sekunden
  int minutes = seconds / 60;
  int remainingSeconds = seconds % 60;

  // Format: MMSS, z. B. 01:45 → 0145
  int value = (minutes * 100) + remainingSeconds;

  // Doppelpunkt aktivieren bei gerader Sekunde (blinkender Effekt)
  int colon = (seconds % 2 == 0) ? DISPLAY_COLON : 0;

  // Wert auf dem Display anzeigen:
  // - value: MMSS-Wert
  // - colon: Doppelpunkt-Bit aktivieren/deaktivieren
  // - true: führende Nullen anzeigen
  // - 4: Länge (alle 4 Stellen)
  // - 0: Startposition (von ganz links)
  display.showNumberDecEx(value, colon, true, 4, 0);

  // Eine Sekunde warten
  delay(1000);
}

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}