TinkerCAD Circuits: UNO-Multifunktionsshield - Taster
- Teil 2
Erstelle eine Kopie deiner TinkerCAD-Circuit
mfs-taster und benenne diese in mfs-taster-1
um. Füge den folgenden Programmcode hinzu bzw. ändere ihn
entsprechend ab.
taster-1.ino
Beim Testen des Programmes wird es dir in der Simulation
nicht gelingen, beide Taster gleichzeitig zu drücken. Ersetze
deshalb die Taster 1 und 2 durch DIP-Schalter. Achte auf das
Umverlegen der "Masseleitung" des Taster 1.
Jetzt wird es uns gelingen, den Zustand des "gleichzeitigen"
Drückens der Taster zu simulieren. Teste jetzt das Programm.
Nun wollen wir den Programmcode etwas um struktuieren.
Durch das "Hochziehen" der nachfolgenden If-Anweisungen wird der
Programmcode kompakter und übersichtlicher. Im nächsten
Schritt nehmen wir noch einige derzeit nicht notwendige
Klammerpaare weg.
Jetzt liest sich der Code noch besser und das Hinzufügen
weiterer Bedingungen ist jetzt ein Kinderspiel.
Ordne allen möglichen Tasterzuständen eine Aktion der LEDs
zu.
Jetzt haben wir noch das Problem der Gleichzeitgkeit zu
lösen. Es ist praktisch kaum möglich, mehrere Taster gleichzeit
zu drücken bzw. wieder los zu lassen. Eine Möglichleit ist
das Einfügen einer delay()-Anweisung, um die Häufigkeit der
Tasterabfrage zu verringern. Leider können während des
Wartens des UNO keine anderen Aktivitäten ausführen werden.
Besser ist jedoch das "Anzapfen der UNO-Uhr" durch die
millis()-Anweisung. Achte auf die notwendigen
Variablenvereinbarungen! taster-1-f.ino