Arduino Projekt: 4x4 Nummernfeld einlesen: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
|||
| (3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 5: | Zeile 5: | ||
| '''Autor:''' || [[Benutzer:Ulrich_Schneider| Prof. Dr.-Ing. Schneider]] | | '''Autor:''' || [[Benutzer:Ulrich_Schneider| Prof. Dr.-Ing. Schneider]] | ||
|- | |- | ||
| '''Projekt:''' || | | '''Projekt:''' || 4x4 Nummernfeld einlesen | ||
|- | |- | ||
| '''Termin:''' || | | '''Termin:''' || 13.04.2026 | ||
|} | |} | ||
= Lernziel = | |||
Die Schüler können: | |||
* ein 4×4-Keypad anschließen | |||
* Tasten abfragen | |||
* einen 4-stelligen Code eingeben und prüfen | |||
* einfache Logik (Vergleich, Variablen) anwenden | |||
= Funktionsprinzip= | |||
*4 Reihen + 4 Spalten | |||
*Taste = Verbindung zwischen Reihe & Spalte | |||
= Aufgabe 1: Erste Eingaben lesen = | |||
„Zeige gedrückte Taste auf Display/seriell an“ | |||
Umsetzung in Open Roberta Lab: | |||
* 4 Spalten → werden nacheinander „aktiv“ gesetzt | |||
* 4 Reihen → werden abgefragt | |||
* Wenn Taste gedrückt → eine Reihe wird '''HIGH''' | |||
* Ergebnis: Du erkennst, welche Taste gedrückt wurde | |||
* kurze Pause (100 ms) nach Tastendruck - Entprellen des Tasters | |||
👉 Ziel: Schüler sehen → jede Taste funktioniert | |||
==Logik == | |||
Spalte 1 aktivieren: | |||
*Pin 6 = HIGH | |||
*Pins 7–9 = LOW | |||
Dann prüfen: | |||
* Wenn Pin 2 HIGH → Taste „1“ | |||
* Wenn Pin 3 HIGH → Taste „4“ | |||
* usw. | |||
[1] [2] [3] [A] | |||
[4] [5] [6] [B] | |||
[7] [8] [9] [C] | |||
[*] [0] [#] [D] | |||
== Ablauf: == | |||
# Taste drücken | |||
# Zeichen anhängen | |||
# Wenn Länge = 4 → prüfen | |||
# Ergebnis anzeigen | |||
# Reset | |||
= Aufgabe 2: Code speichern = | |||
„Speichere 4 gedrückte Tasten“ | |||
== Konzept: == | |||
*Variable: eingabe | |||
*Bei Tastendruck: eingabe = eingabe + taste | |||
== Beispiel: == | |||
*Eingabe: 1 → 2 → 3 → 4 | |||
* Ergebnis: „1234“ | |||
== ⚠️ Wichtig == | |||
*Maximal 4 Zeichen speichern | |||
*Danach zurücksetzen | |||
= Aufgabe 3: Code prüfen = | |||
Vergleiche mit richtigem Code“ | |||
* Richtiger Code z. B.: "1234" | |||
*Logik: | |||
wenn eingabe == code | |||
→ "Richtig!" | |||
sonst | |||
→ "Falsch!" | |||
danach: | |||
Eingabe zurücksetzen | |||
=Aufgabe 4: Erweiterungen = | |||
* LED grün/rot für richtig/falsch | |||
* „*“ = löschen | |||
* „#“ = bestätigen | |||
* 3 Fehlversuche → Sperre | |||
* Zeitverzögerung | |||
---- | |||
→ Zurück zur Hauptseite: [[Mechatronik_mit_Arduino_-_02/26]] | |||
Aktuelle Version vom 13. April 2026, 14:42 Uhr

| Autor: | Prof. Dr.-Ing. Schneider |
| Projekt: | 4x4 Nummernfeld einlesen |
| Termin: | 13.04.2026 |
Lernziel
Die Schüler können:
- ein 4×4-Keypad anschließen
- Tasten abfragen
- einen 4-stelligen Code eingeben und prüfen
- einfache Logik (Vergleich, Variablen) anwenden
Funktionsprinzip
- 4 Reihen + 4 Spalten
- Taste = Verbindung zwischen Reihe & Spalte
Aufgabe 1: Erste Eingaben lesen
„Zeige gedrückte Taste auf Display/seriell an“
Umsetzung in Open Roberta Lab:
- 4 Spalten → werden nacheinander „aktiv“ gesetzt
- 4 Reihen → werden abgefragt
- Wenn Taste gedrückt → eine Reihe wird HIGH
- Ergebnis: Du erkennst, welche Taste gedrückt wurde
- kurze Pause (100 ms) nach Tastendruck - Entprellen des Tasters
👉 Ziel: Schüler sehen → jede Taste funktioniert
Logik
Spalte 1 aktivieren:
- Pin 6 = HIGH
- Pins 7–9 = LOW
Dann prüfen:
- Wenn Pin 2 HIGH → Taste „1“
- Wenn Pin 3 HIGH → Taste „4“
- usw.
[1] [2] [3] [A] [4] [5] [6] [B] [7] [8] [9] [C] [*] [0] [#] [D]
Ablauf:
- Taste drücken
- Zeichen anhängen
- Wenn Länge = 4 → prüfen
- Ergebnis anzeigen
- Reset
Aufgabe 2: Code speichern
„Speichere 4 gedrückte Tasten“
Konzept:
- Variable: eingabe
- Bei Tastendruck: eingabe = eingabe + taste
Beispiel:
- Eingabe: 1 → 2 → 3 → 4
- Ergebnis: „1234“
⚠️ Wichtig
- Maximal 4 Zeichen speichern
- Danach zurücksetzen
Aufgabe 3: Code prüfen
Vergleiche mit richtigem Code“
- Richtiger Code z. B.: "1234"
- Logik:
wenn eingabe == code → "Richtig!" sonst → "Falsch!"
danach:
Eingabe zurücksetzen
Aufgabe 4: Erweiterungen
- LED grün/rot für richtig/falsch
- „*“ = löschen
- „#“ = bestätigen
- 3 Fehlversuche → Sperre
- Zeitverzögerung
→ Zurück zur Hauptseite: Mechatronik_mit_Arduino_-_02/26