Arduino - 10-Segment-LED-Balkenanzeige
In diesem Tutorial lernen wir:
- Wie man die 10-Segment-LED-Balkenanzeige an den Arduino anschließt
- Wie man den Arduino programmiert, um die 10-Segment-LED-Balkenanzeige zu steuern
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables STEM V3 Starter-Kit (Arduino enthalten) | |
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.
Über die 10-Segment-LED-Balkenanzeige
| 10-Segment-LED-Balkenanzeige | |
|---|---|
| Anzahl der Segmente | 10 |
| LED-Farbe | Hellrot |
| Durchlassspannung | ca. 2V pro Segment |
| Durchlassstrom | max. 20mA pro Segment |
| Benötigter Widerstand | 220Ω pro Segment |
Pinbelegung

- Anodenpins (A1–A10): Jeder muss über einen 220Ω-Widerstand mit einem GPIO-Pin verbunden werden
- Kathodenpins (K1–K10): Jeder muss mit GND verbunden werden
Verdrahtungsdiagramm
Schließen Sie die 10-Segment-LED-Balkenanzeige wie in der folgenden Tabelle gezeigt an den Arduino Uno an.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
| LED-Balkenanzeige | Arduino-Pin |
|---|---|
| A1 (Anode 1) | Pin 2 (über 220Ω) |
| A2 (Anode 2) | Pin 3 (über 220Ω) |
| A3 (Anode 3) | Pin 4 (über 220Ω) |
| A4 (Anode 4) | Pin 5 (über 220Ω) |
| A5 (Anode 5) | Pin 6 (über 220Ω) |
| A6 (Anode 6) | Pin 7 (über 220Ω) |
| A7 (Anode 7) | Pin 8 (über 220Ω) |
| A8 (Anode 8) | Pin 9 (über 220Ω) |
| A9 (Anode 9) | Pin 10 (über 220Ω) |
| A10 (Anode 10) | Pin 11 (über 220Ω) |
| K1–K10 (Kathoden) | GND |
Wie man den Arduino für die 10-Segment-LED-Balkenanzeige programmiert
- Keine Bibliothek erforderlich: Die LED-Balkenanzeige verwendet nur die eingebaute Funktion digitalWrite()
- Pins definieren: const int ledPins[10] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
- Jeden Pin als Ausgang festlegen: pinMode(ledPins[i], OUTPUT);
- Ein Segment einschalten: digitalWrite(ledPins[i], HIGH);
- Ein Segment ausschalten: digitalWrite(ledPins[i], LOW);
- Zustand der Anzeige ausgeben: Das Array durchlaufen und * für leuchtende Segmente sowie für ausgeschaltete Segmente ausgeben
Arduino-Code - 10-Segment-LED-Balkenanzeige
Schnelle Schritte
- Verbinden Sie den Arduino über ein USB-Kabel mit dem PC.
- Öffnen Sie das Menü Tools und wählen Sie das richtige Board und den richtigen Port aus.
- Kopieren Sie den obigen Code und fügen Sie ihn in die Arduino IDE ein.
- Klicken Sie in der Arduino IDE auf die Schaltfläche Upload, um den Code auf den Arduino hochzuladen.
- Beobachten Sie, wie sich die LED-Balkenanzeige Segment für Segment füllt und anschließend in einer sich wiederholenden Animation wieder leert.
/*
* Dieser Arduino Code wurde von newbiely.de entwickelt
* Dieser Arduino Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt.
* Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte:
* https://newbiely.de/tutorials/arduino/arduino-10-segment-led-bar-graph
*/
const int NUM_SEGMENTS = 10;
const int ledPins[NUM_SEGMENTS] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
void printBar(int litCount) {
Serial.print("Bar: [");
for (int i = 0; i < NUM_SEGMENTS; i++) {
Serial.print(i < litCount ? "*" : " ");
}
Serial.println("]");
}
void setup() {
Serial.begin(9600);
for (int i = 0; i < NUM_SEGMENTS; i++) {
pinMode(ledPins[i], OUTPUT);
digitalWrite(ledPins[i], LOW);
}
}
void loop() {
for (int i = 0; i < NUM_SEGMENTS; i++) {
digitalWrite(ledPins[i], HIGH);
printBar(i + 1);
delay(100);
}
delay(500);
for (int i = NUM_SEGMENTS - 1; i >= 0; i--) {
digitalWrite(ledPins[i], LOW);
printBar(i);
delay(100);
}
delay(500);
}
Ausgabe im Serial Monitor
8
Serial.println("Hello World!");
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
Bar: [* ]
Bar: [** ]
Bar: [*** ]
Bar: [**** ]
Bar: [***** ]
Bar: [****** ]
Bar: [******* ]
Bar: [******** ]
Bar: [********* ]
Bar: [**********]
Bar: [********* ]
Bar: [******** ]
Bar: [******* ]
Bar: [****** ]
Bar: [***** ]
Bar: [**** ]
Bar: [*** ]
Bar: [** ]
Bar: [* ]
Bar: [ ]
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.