C-Programmierung mit AVR-GCC
Aus Wikibooks
[Bearbeiten] Zusammenfassung des Projekts
- Zielgruppe: Leute mit Programmiererfahrung in C, die in die Microcontroller-Programmierung einsteigen wollen.
- Lernziele: Die Grundlagen der Microcontroller-Programmierung auf Basis des AVR von Atmel zu erlernen.
- Buchpatenschaft/Ansprechperson: --ThyMYthOS 14:59, 6. Nov. 2008 (CET)
- Sind Co-Autoren gegenwärtig erwünscht? Schreibt, was ihr wollt, ich freu mich darüber! Kaputtmachen könnt ihr nichts!
- Richtlinien für Co-Autoren: Anmerkungen für fortgeschrittene Leser sollten als solche gekennzeichnet werden.
- Projektumfang und Abgrenzung zu anderen Wikibooks: Es sollen aufbauend auf z.B. C-Programmierung die Besonderheiten im Umgang mit der AVR-Familie behandelt werden.
- Aufbau des Buches:
Es handelt sich hier um den Versuch, das AVR-GCC-Tutorial (Veröffentlicht unter der Creative Commons Attribution-Share Alike Lizenz) von www.mikrocontroller.net als Buch umzuschreiben.
[Bearbeiten] Vorwort
Dieses Tutorial soll den Einstieg in die Programmierung von Atmel AVR-Mikrocontrollern in der Programmiersprache C mit dem freien C-Compiler AVR-GCC erleichtern.
Vorausgesetzt werden Grundkenntnisse der Progammiersprache C. Diese Kenntnisse kann man sich online erarbeiten, z. B. mit dem C Tutorial von Helmut Schellong oder dem Buch C-Programmierung. Nicht erforderlich sind Vorkenntnisse in der Programmierung von Mikrocontrollern, weder in Assembler noch in einer anderen Sprache.
In diesem Text wird häufig auf die Standardbibliothek avr-libc verwiesen, für die es eine Online-Dokumentation gibt, in der sich auch viele nützliche Informationen zum Compiler und zur Programmierung von AVR Controllern finden. Bei WinAVR gehört die avr-libc Dokumentation zum Lieferumfang und wird mitinstalliert.
Der Compiler und die Standardbibliothek avr-libc werden stetig weiterentwickelt. Erläuterungen und Beispiele beziehen sich auf den C-Compiler avr-gcc ab Version 3.4 und die avr-libc ab Version 1.4.3. Die Unterschiede zu älteren Versionen werden im Haupttext und Anhang zwar erläutert, Anfängern sei jedoch empfohlen, die aktuellen Versionen zu nutzen (für MS-Windows: aktuelle Version des WinAVR-Pakets).
Das ursprüngliche Tutorial stammt von Christian Schifferle, viele neue Abschnitte und aktuelle Anpassungen von Martin Thomas, Buchbearbeitung von Manuel Stahl.
[Bearbeiten] Inhalt
Vorbereitung
Grundlagen
[Bearbeiten] 6. Datentypen
[Bearbeiten] 7. Grundsätzlicher Aufbau eines µC-Programms
- Sequentieller Programmablauf
- Interruptgesteuerter Programmablauf
[Bearbeiten] 8. Warteschleifen (delay.h)
[Bearbeiten] 9. Register - Grundbaustein eines Microcontrollers
- Schreiben in Register
- Verändern von Registerinhalten
- Lesen aus Registern
- Warten auf einen bestimmten Zustand