7×7×7 LED-Würfel bauen: Schritt-für-Schritt Arduino-Projekt
Komponenten und Materialien
| Komponente | Anzahl |
|---|---|
| Arduino UNO | 1 |
| 74HC574 (8-Bit-D-Flip-Flop) | 7 |
| 74HC138 (3-zu-8-Dekoder/Demultiplexer) | 1 |
| Widerstand 220 Ω | 49 |
| 16 MHz Quarz | 1 |
Benötigte Werkzeuge und Maschinen
- Lötkolben (Standard)
Projektbeschreibung
Ich wollte schon immer einen eigenen LED-Würfel bauen und teile hier mein Projekt mit Ihnen.
Schritt 1: LED-Matrix erstellen
Zunächst werden sieben 7×7 LED-Matrizen gebaut. Dabei werden Anoden und Kathoden getrennt und in Reihen und Spalten verlötet, sodass jede Matrix am Ende 7 Anoden- und 7 Kathodenanschlüsse besitzt.


Schritt 2: Steuerungselektronik
Dies ist der anspruchsvollste Teil, wenn man sich mit Elektronik nicht gut auskennt. Ich versuche, ihn so klar wie möglich zu erklären.
- 7× 74HC574: Jeder Baustein ist ein 8-Bit-Speicher (D-Flip-Flop). Damit kann man Bits laden, um das Bild auf dem Würfel anzuzeigen. Da es sieben LED-Matrizen (Ebenen) gibt, werden sieben Stück benötigt.
- 7× NPN-Transistoren: Sie steuern, welche Ebene gerade aktiv ist.
- 1× 74LS138: Ein 3-zu-8-Dekoder/Demultiplexer. Damit lassen sich alle Flip-Flops mit nur 3 Bits ansteuern, da diese auch einen Taktsignal-Impuls zum Speichern der Daten benötigen.
Mithilfe der Multiplexing-Technik kann so ein Bild auf dem gesamten Würfel dargestellt werden.

Die Schaltung wurde selbst entworfen und verwendet einen ATmega328P im Standalone-Betrieb (ohne Arduino-Board).


Schritt 3: Mechanischer Aufbau
Für die Befestigung der Elektronik und des LED-Würfels wurde eine Holzkonstruktion verwendet. Jede LED-Matrix wird vor die andere gesetzt, und die Kathoden jeder Ebene werden mit demselben Transistor verbunden.

Schritt 4: Programmierung
Nun kann der Code geschrieben werden. Das obige Blockdiagramm hilft dabei. Dieser Teil kann anfangs verwirrend sein, wird aber mit Übung leichter.
Der folgende Code zeigt die einfachsten Animationen, da die komplexeren zu lang wären. Mit etwas Fantasie können Sie jedoch beliebige Effekte programmieren.
Code
Animation (Arduino)
// Einfachste Animation für LED-Würfel
int temp = 50, cont = 0;
// Lädt alle Ebenen des Würfels
void load_all(void) {
// Ebene 1
digitalWrite(A2, LOW); digitalWrite(A1, LOW); digitalWrite(A0, LOW); delay(1);
// Ebene 2
digitalWrite(A2, HIGH); digitalWrite(A1, LOW); digitalWrite(A0, LOW); delay(1);
// Ebene 3
digitalWrite(A2, LOW); digitalWrite(A1, HIGH); digitalWrite(A0, LOW); delay(1);
// Ebene 4
digitalWrite(A2, HIGH); digitalWrite(A1, HIGH); digitalWrite(A0, LOW); delay(1);
// Ebene 5
digitalWrite(A2, LOW); digitalWrite(A1, LOW); digitalWrite(A0, HIGH); delay(1);
// Ebene 6
digitalWrite(A2, HIGH); digitalWrite(A1, LOW); digitalWrite(A0, HIGH); delay(1);
// Ebene 7
digitalWrite(A2, LOW); digitalWrite(A1, HIGH); digitalWrite(A0, HIGH); delay(1);
// Ebene 8 (nicht genutzt bei 7×7×7)
digitalWrite(A2, HIGH); digitalWrite(A1, HIGH); digitalWrite(A0, HIGH); delay(1);
}
// Aktiviert jede Ebene für die Zeit t
void scrolling(int t) {
PORTB = 0x00;
digitalWrite(7, HIGH); delay(t); digitalWrite(7, LOW);
digitalWrite(8, HIGH); delay(t); digitalWrite(8, LOW);
digitalWrite(9, HIGH); delay(t); digitalWrite(9, LOW);
digitalWrite(10, HIGH); delay(t); digitalWrite(10, LOW);
digitalWrite(11, HIGH); delay(t); digitalWrite(11, LOW);
digitalWrite(12, HIGH); delay(t); digitalWrite(12, LOW);
digitalWrite(13, HIGH); delay(t); digitalWrite(13, LOW);
}
// Animation: Ebenen nacheinander, Geschwindigkeit steigt
void one(void) {
PORTD = 0xff;
load_all();
while (1) {
scrolling(temp);
temp = temp - 2;
if (temp <= 0) {
temp = 1;
cont++;
if (cont == 1000) { cont = 0; temp = 100; }
}
}
}
void setup() {
DDRD = 0xff; // Port D als Ausgang
DDRB = 0xff; // Port B als Ausgang
DDRC = 0xff; // Port C als Ausgang
}
void loop() {
one();
}
Individuelle Teile und Gehäuse
gestione_mankWMoVhz.sch (Eagle-Schaltplan)
Schaltpläne
Bild zur Bauteile-Anordnung:
Herstellungsprozess
- Rubiks Würfel: Von der Erfindung zum modernen Puzzle
- Leuchtdioden (LED): Von der Entdeckung zur 100-Jahre-Lebensdauer
- 37-LED-Roulette-Spiel mit Arduino Nano bauen – Europäisches Layout
- Arduino Coffin Dance Melodie-Projekt – Viralen Hit nachbauen & abspielen
- Einen beeindruckenden 5x5x5 LED-Würfel mit Arduino Mega bauen
- Alte Fernbedienungen revitalisieren: DIY Smart Devices mit Arduino bauen
- LED per Bluetooth mit Arduino steuern – Einfache DIY-Anleitung
- Soundgesteuerte 8-LED-Lichtanzeige mit Arduino
- Intelligenten Arduino-Vierbeiner-Roboter bauen: Schritt-für-Schritt-Anleitung
- Arduino RGB-LED-Farbmischer – Einsteigerfreundliches DIY-Projekt