Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende Überarbeitung | |||
hallo_c [2019/01/29 16:26] – [Zusammenfassung als Video] huwi | hallo_c [2019/07/27 16:42] (aktuell) – huwi | ||
---|---|---|---|
Zeile 4: | Zeile 4: | ||
Die erste Übung soll das typische LED einschalten sein. Dazu verbinden Sie bitte vom Port-B das Bit-0 mit der roten LED, indem Sie eines der kleinen // | Die erste Übung soll das typische LED einschalten sein. Dazu verbinden Sie bitte vom Port-B das Bit-0 mit der roten LED, indem Sie eines der kleinen // | ||
- | >>>>> | + | > |
Auch auf die Gefahr hin Sand in die Wüste zu tragen hier eine kurze Wiederholung zur Bedeutung der GPIO (General Purpose Input/ | Auch auf die Gefahr hin Sand in die Wüste zu tragen hier eine kurze Wiederholung zur Bedeutung der GPIO (General Purpose Input/ | ||
Zeile 13: | Zeile 13: | ||
Für das Einschalten unser LED ist es jetzt erforderlich im entsprechenden Daten-Richtungs-Register auf das betreffende Bit eine 1 zu schreiben. In myAVR C++ können wir das mit einer recht modernen Schreibweise tun. Dabei ist zu beachten, dass zur Unterscheidung gegenüber der klassischen Großschreibweise der Port-Register die neue Schreibweise mit kleinen Buchstaben beginnt. Der Zugriff auf die einzelnen Bits erfolgt über den Punktoperator und den Bitnamen. Das befreit uns an dieser Stelle in einem gewissen Umfang von dem bisher üblichen Bitgeschubse (& | Für das Einschalten unser LED ist es jetzt erforderlich im entsprechenden Daten-Richtungs-Register auf das betreffende Bit eine 1 zu schreiben. In myAVR C++ können wir das mit einer recht modernen Schreibweise tun. Dabei ist zu beachten, dass zur Unterscheidung gegenüber der klassischen Großschreibweise der Port-Register die neue Schreibweise mit kleinen Buchstaben beginnt. Der Zugriff auf die einzelnen Bits erfolgt über den Punktoperator und den Bitnamen. Das befreit uns an dieser Stelle in einem gewissen Umfang von dem bisher üblichen Bitgeschubse (& | ||
- | >>>< | + | >< |
| | ||
| | ||
Zeile 20: | Zeile 20: | ||
Die eigentliche Ausgabe erfolgt über das dafür zuständige Register. Wir verwenden dabei wiederum die objektorientierte Schreibweise. | Die eigentliche Ausgabe erfolgt über das dafür zuständige Register. Wir verwenden dabei wiederum die objektorientierte Schreibweise. | ||
- | >>>< | + | >< |
| | ||
</ | </ | ||
Zeile 26: | Zeile 26: | ||
Legen Sie ein neues kleines Programm an, überprüfen Sie die Einstellung für die Sprache //AVR C++// und den Controller ATmega8 mit 3,6864 MHz. Laden Sie die Vorlage für die Grundstruktur einer AVR C++ Anwendung. Das gesamte Programm sollte wie unten dargestellt ergänzt werden. Dabei erfolgt die Konfiguration des Ports in der Operation //onStart// und die Ausgabe in der Operation //onWork//. Zunächst machen wir uns einen Plan von dem, was zu tun ist. Diesen notieren wir als Kommentar an die betreffenden Stellen in der Vorlage. | Legen Sie ein neues kleines Programm an, überprüfen Sie die Einstellung für die Sprache //AVR C++// und den Controller ATmega8 mit 3,6864 MHz. Laden Sie die Vorlage für die Grundstruktur einer AVR C++ Anwendung. Das gesamte Programm sollte wie unten dargestellt ergänzt werden. Dabei erfolgt die Konfiguration des Ports in der Operation //onStart// und die Ausgabe in der Operation //onWork//. Zunächst machen wir uns einen Plan von dem, was zu tun ist. Diesen notieren wir als Kommentar an die betreffenden Stellen in der Vorlage. | ||
- | >>>< | + | >< |
////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////// | ||
// Hallo myAVR C++ ENTWURF | // Hallo myAVR C++ ENTWURF | ||
Zeile 47: | Zeile 47: | ||
Es ist gut, sich den Plan noch mal durch den Kopf gehen zu lassen oder, wenn man sich unsicher ist diesen mit jemandem, der sich auskennt zu besprechen. Erst jetzt sollte nach den geeigneten Befehlen gesucht werden den Plan umzusetzen. Schreiben Sie zu den Kommentaren die entsprechenden Befehle. | Es ist gut, sich den Plan noch mal durch den Kopf gehen zu lassen oder, wenn man sich unsicher ist diesen mit jemandem, der sich auskennt zu besprechen. Erst jetzt sollte nach den geeigneten Befehlen gesucht werden den Plan umzusetzen. Schreiben Sie zu den Kommentaren die entsprechenden Befehle. | ||
- | >>>< | + | >< |
////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////// | ||
// Hallo myAVR C++ | // Hallo myAVR C++ | ||
Zeile 70: | Zeile 70: | ||
Kompilieren, | Kompilieren, | ||
- | >>>>> | + | > |
Und weil es so schön war, variieren wir unser // | Und weil es so schön war, variieren wir unser // | ||
- | >>> | + | > |
Um die LED blinken zu lassen, muss also die folgende Sequenz ständig wiederholt werden: | Um die LED blinken zu lassen, muss also die folgende Sequenz ständig wiederholt werden: | ||
Zeile 86: | Zeile 86: | ||
Zuerst der Plan! | Zuerst der Plan! | ||
- | >>>< | + | >< |
////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////// | ||
// Blinklicht 1 ENTWURF | // Blinklicht 1 ENTWURF | ||
Zeile 114: | Zeile 114: | ||
Dann die Umsetzung. | Dann die Umsetzung. | ||
- | >>>< | + | >< |
////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////// | ||
// Blinklicht 1 | // Blinklicht 1 | ||
Zeile 142: | Zeile 142: | ||
Kompilieren, | Kompilieren, | ||
- | >> | + | > |
====== Zusammenfassung als Video ====== | ====== Zusammenfassung als Video ====== | ||
- | >>>< | + | >< |
====== Nächstes Thema ====== | ====== Nächstes Thema ====== | ||
[[einfache Ein- und Ausgaben]] | [[einfache Ein- und Ausgaben]] |