7‑segmentdisplay¶
| Component | 7‑segmentdisplay |
| Type | Uitvoer |
| Intro | Toon tijd, score of getallen zonder al te veel moeite. |
Introductie¶
Een 7‑segmentdisplay is een elektronisch display dat decimale cijfers en enkele letters kan tonen. Het bestaat uit zeven LEDs die samen segmenten vormen. Je gebruikt het om cijfers, sommige letters en speciale tekens te tonen, bijvoorbeeld in digitale klokken en meetinstrumenten.
Vooral bij 4 of 8 displays op een rij heb je veel bedrading nodig. Daarom gebruiken we een display‑driver die je via I2C of SPI met je microcontroller verbindt. Zo heb je slechts 2–4 draden nodig om alle displays aan te sturen.
We hebben er twee liggen:
- TM1637 (4 digits, 7‑segment, I2C, dubbele punt)

- MAX7219 (8 digits, 7‑segment, SPI, decimale punten)

Pinbeschrijving¶
Beide modules hebben een andere pinout, maar de aansturing is eenvoudig met een bibliotheek. De TM1637 heeft 4 pinnen: VCC, GND, SDA en SCL. De MAX7219 heeft 5 pinnen: VCC, GND, DIN, CS en CLK.
Met een geschikte bibliotheek stuur je het display aan met enkele regels code.
Codevoorbeeld¶
Onderstaand voorbeeld gebruikt de TM1637Display‑bibliotheek om een 4‑digit 7‑segmentdisplay aan te sturen.
#include <TM1637Display.h>
// Module connection pins (Digital Pins)
#define CLK 2
#define DIO 3
TM1637Display display(CLK, DIO);
void setup() {
display.setBrightness(0x0f);
}
void loop() {
display.showNumberDec(1234, false);
delay(1000);
display.showNumberDec(8765, false);
delay(1000);
}
Het volgende voorbeeld gebruikt de max7219‑bibliotheek voor een 8‑digit 7‑segmentdisplay.
#include <max7219.h>
#define LEFT 0
#define RIGHT 1
MAX7219 max7219;
void setup() {
Serial.begin(9600);
max7219.Begin();
}
void loop() {
//Display HELLO right justified
max7219.Clear();
max7219.DisplayText("HELLO", RIGHT);
delay(1000);
}
Zorg dat de juiste bibliotheek is geïnstalleerd en dat de pinnen kloppen.