Übung 1
(EN google-translate)
(PL google-translate)
Hinweise zur Übung
Es ist möglich die digitalen Ein- und Ausgänge über die Arduino-Library-Befehle, z.B. pinMode(6, OUTPUT); pinMode(6, INPUT); digitalWrite(2,HIGH); digitalRead(2)==LOW ... (Beispiele) zu konfigurieren, zu setzen und auszulesen. Alternativ besteht die Möglichkeit direkt auf die Konfigurations- und Zustandsregister des Mikrocontrollers zuzugreifen. Insbesondere sind die Pins von PORTB beim Arduino-Micro zu einem großen Teil herausgeführt (vergl. Pin-Layout).
|
In dieser Vorlesung wird die Arduino-Library nur zum Einstieg verwendet. Für die Prüfung relevant ist die Realisierung von Programmen mit Hilfe der Mikrocontroller-Register.
Aufgabe 1
Bild 0-1: Erste Schaltung.
Bauen Sie obige Schaltung auf.
Schreiben Sie ein Programm auf der Grundlage der Arduino-Library, das die LED blinken läßt.
Schreiben Sie ein Programm auf der Grundlage der Registerkonfiguration, das die LED blinken läßt.
Aufgabe 2
Bild 0-2: Zweite Schaltung.
Bauen Sie obige Schaltung auf.
Schreiben Sie ein Programm auf der Grundlage der Arduino-Library, das die LED blinken läßt.
Schreiben Sie ein Programm auf der Grundlage der Registerkonfiguration, das die LED blinken läßt.
Aufgabe 3
1) Bauen Sie die Schaltung "LED-Leiste" von Kapitel 22.2 in "Arduino" auf. Link:
2) Versuchen Sie ein Lauflicht mit Hilfe von Befehlen der Arduino-Bibliothek zu programmieren.
3) Versuchen Sie ein Lauflicht mit Hilfe von Registerbefehlen zu programmieren.
Hinweise zum Vorgehen:
3a) Analysieren Sie hierzu das Beispiel "Ampel" von Kapitel 1.5.6.1 in "Mikrocontroller". Link:
3b) Versuchen Sie dann erst einmal alle LEDs mit Hilfe von Register-Befehlen zum Aufleuchten zu bringen.
3c) Versuchen Sie jetzt LEDs einzeln mit Registerbefehlen an und aus zu schalten.
3d) Versuchen Sie nun das Lauflicht auf Basis von Registerbefehlen zu realisieren.
3e) Zusatzaufgabe: Versuchen Sie nun eine effizientere Programmierung unter Verwendung von Bitshift-Befehlen.