C-Programmierung mit AVR-GCC
Inhaltsverzeichnis[Bearbeiten]
Vorwort[Bearbeiten]
Grundlagen[Bearbeiten]
- Quickstart Linux
- Arbeiten mit make
- Compiler und Standardbibliothek
- Tipps Tricks und kleine Helferlein
- Hardware und IO-Register
- Interrupts
Funktionseinheiten[Bearbeiten]
- GPIO Pins
- Timer und Counter
- Die asynchrone serielle Schnittstelle - UART
- Two Wire Interface
- Two Wire Interface2
Anhang[Bearbeiten]
- Codebeispiele zu den Kapiteln
Literatur[Bearbeiten]
Vorlagen[Bearbeiten]
Hier findet sich eine Liste bucheigener Vorlagen:
Druckversion[Bearbeiten]
Zusammenfassung des Projekts[Bearbeiten]
- Zielgruppe: Einsteiger in die Microcontroller-Programmierung
- nur minimale Grundkenntnisse der Programmiersprache C sind erforderlich
- auch ein Quereinstieg mit Kenntnis in einer Sprache der C-Sprachfamilie (Java / C++ / C#) ist möglich
- Lernziele: Die Grundlagen der Microcontroller-Programmierung auf Basis des AVR von Atmel zu erlernen.
- TODO: schwach! und viel zu allgemein gehalten ... dringend genauer aufschlüsseln / zerlegen
- Buchpatenschaft/Ansprechperson:
- letzte Lebenszeichen des ursprünglich als Ansprechperson genannten Nutzers: The todd stammen aus dem Jahr 2013
- zur Zeit werkelt hauptsächlich Benutzer:Mikyra ein wenig am Buch herum.
- Sind Co-Autoren gegenwärtig erwünscht? Und ob!
- Der ursprüngliche Buchpate The todd schrieb einst:
Schreibt, was ihr wollt, ich freu mich darüber! Kaputtmachen könnt ihr nichts!
- Der aktuelle Bearbeiter Benutzer:Mikyra sieht es ganz genau so.
- Der ursprüngliche Buchpate The todd schrieb einst:
- Richtlinien für Co-Autoren:
- Dem Wunsch des ursprünglichen Buchpaten The todd Anmerkungen für fortgeschrittene Leser als solche zu kennzeichnen sollte entsprochen werden. Über Möglichkeiten zu ihrer Umsetzung grübele ich zur Zeit selbst noch nach. Vorschläge jeder Art willkommen.
- Einheitlicher Stil (Anrede, Typographie, semantische Auszeichnung der Inhalte) und Aufbau der einzelnen Kapitel (Lernziele zu Beginn, Lernkontrolle am Ende, etc.) wäre wünschenswert.
- Projektumfang und Abgrenzung zu anderen Wikibooks:
- Aufbauend auf Grundwissen über die C-Programmierung sollen die Besonderheiten im Umgang mit der AVR-Familie behandelt werden.
- Dem Titel entsprechend soll hierbei das Werkzeug AVR-GCC zum Einsatz kommen.
- Aufbau des Buches: Aufteilung des Inhalts in Einführungsteil und Vertiefungsteil.
- Kapitel im Einführungsteil sollen alle Aspekte beleuchten, die für die Bearbeitung von Kapiteln des zweiten Teils benötigt werden.
Kapitel in diesem Teil bauen aufeinander auf und sollten daher sofern nicht anders angegeben sequentiell gelesen werden.
- Kapitel Vertiefungsteil sollten nach Möglichkeit voneinander unabhängig sein. Im Idealfall sollten sie sich in Sachen benötigtes Vorwissen ausschließlich auf Teile des Einführungsteils beziehen
Kapitel in diesem Teil des Buches können in beliebiger Reihenfolge bearbeitet und nach Lage des eigenen Interesses ausgewählt werden.
- Ob es irgendwann einmal einen weiteren Teil mit ausgewählten Themen für Fortgeschrittene geben wird, und ob es dafür überhaupt genug Material gibt, steht derzeit noch in den Sternen. Derzeit geplant ist in dieser Hinsicht nichts.
- Kapitel im Einführungsteil sollen alle Aspekte beleuchten, die für die Bearbeitung von Kapiteln des zweiten Teils benötigt werden.
Quarantänestation[Bearbeiten]
Kapitel in diesem Abschnitt basieren auf Texten, die vom mikrocontroller.net/articles/AVR-GCC-Tutorial übernommen wurden. Die Texte stehen unter der Creative Commons Lizenz BY-SA, die nur die Namensnennung erforderlich macht. Die Liste aller Autoren findet man in der Versionsgeschichte des AVR-GCC-Tutorials.
Der rechtliche Status ihrer Verwendung in diesem Buch konnte nicht zufriedenstellend geklärt werden. Siehe: Diskussion:C-Programmierung_mit_AVR-GCC#Lizenzverletzung. Nicht zuletzt aus diesem Grund standen Teile des Buchs wegen Urheberrechtsverletzungen bereits kurz vor ihrer Löschung. Langfristiges Ziel dieses Buches ist es, die betroffenen Kapitel inhaltlich soweit mit neue verfasstem Text abzudecken, das sie schließlich endgültig aus dem Buch entfernt werden können. Die Krankheit der Patienten in der Quarantänestation ist leider nicht nur unheilbar, sondern auch so ansteckend, dass Du für den Fall, dass Du Dich als Autor an diesem Buchen beteiligen möchtest unbedingt dafür Sorge tragen musst, dass keine Keime auf Kapitel außerhalb der Quarantänestation übertragen werden. Konkret bedeutet das, dass Du unter keinen Umständen Kapitel in der Quarantänestation inhaltlich oder in Teilen in den restlichen Teil des Buchs übernehmen darfst! Einer Transplantation in umgekehrter Richtung, das heißt von den restlichen Teilen des Buchs zu Patienten in der Quarantänestation, hingegen steht nichts im Wege. |
Patienten, die außer bereits abgedeckten Inhalten keine relevanten oder gar irreführende Informationen enthalten sind in der Übersicht als ersetzt ausgezeichnet.
Vorbereitung[Bearbeiten]
Grundlagen[Bearbeiten]
Datentypen- Grundsätzlicher Aufbau eines µC-Programms
Warteschleifen (delay.h)Register - Grundbaustein eines Microcontrollers