kramann.info
© Guido Kramann

Login: Passwort:










2.4 Übung 1

2.4 (EN google-translate)

2.4 (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).

  • Über das 8-Bit-Register DDRB kann bitweise eingestellt werden, ob ein Pin als Ein- oder Ausgabe arbeitet.
  • Über das 8-Bit-Register PORTB kann entweder 5Volt auf den Ausgang gegeben, oder ein Pullup-Widerstand aktiviert werden.
  • Über das 8-Bit Register PINB kann der elektrische Zustand eines als Eingang konfigurierten Pins ausgelesen werden.

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

Erste Schaltung.

Bild 2.4-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

Zweite Schaltung.

Bild 2.4-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:

http://www.kramann.info/96_Arduino/22_Universal/02_LED_Leiste/index.php

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:

http://www.kramann.info/40_Mikrocontroller/01_Einfuehrung/05_Praxis/06_Do_it_yourself/01_Ampel/index.php

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.