1.8 KiB
1.8 KiB
01_atmega328_lauflicht
Stage 1 - Hello World, Assembler:
- Kompilieren und Flashen via Shell-Skript
- LED Reihe via Assembler aufleuchten lassen
Stage 2 - Timer Integration:
- Hardcodiertes Lauflicht L2R Richtung
- Hardcodiertes Lauflicht R2L Richtung
Stage 3 - Statuswechsel via Hardware Interaktion:
- Richtungswechsel via Taster Klick
- Animation läuft unbeirrt weiter bei Taster-Klick
- Wechsel von L2R auf R2L bei Taster-Links-Klick
- Wechsel von R2L auf L2R bei Taster-Rechts-Klick
Stage 4 - Erweiterte Status Abhandlung (Anzahl Status > 2):
- Animation stoppt wenn beide Taster simultan gedrückt sind
Stage 5 - Willkommen in der Analogen MCU-Welt:
- Geschwindigkeit via Poti steuern
Stage 6 - Gray-Code Handling kann auch nicht schaden:
- Modi umschalten via Encoder-Taster
- Mode 1: autom. Lauflicht
- Mode 2: manuelles Lauflicht gesteuert via Encoder-Drehung
Stage 7 - Pin Reduzierung:
- LEDs via Charlieplexing betreiben um Pin-Anzahl von 8 auf 4 zu reduzieren
- Standard-LEDs durch einzel adressierbare RGB-LEDs austauschen um so die Daten-Pin-Anzahl auf 1 zu reduzieren
Stage 8 - Lass uns ein Spiel spielen:
- Mode 3: 1-Dimensionales Pong Spiel
- Wenn das Lauflicht (LL) das linke/rechte Ende erreicht, muss der jeweilige Button rechtzeitig gedrückt werden um die Laufrichtung umzukehren.
- Wenn das LL durchläuft bekommt der Gegner einen Punkt
- Punktestände werden mit zwei einzelnen 7-Segmentanzeigen visualisiert
- Wer zuerst 10 Punkte erreicht gewinnt
- ToDo: Sieges-Animation bestimmen z.B. Farbenspiel der LL-LEDs oder Kreisanimation der 7-Segmentanzeige
Stage 9 - Mal was für's Auge (SPI & I2C):
- Zeige aktuellen Modus auf LCD an
- Zeige aktuellen Modus auf OLED an