Dieser Kurs soll als praktischer Einblick in die Welt der Mikrocontrollertechnik dienen. Er erläutert die Programmierung von Mikrocontrollern (µC) mit Hilfe von Anwendungsbeispielen. Der Kurs befindet sich in der Entwicklung und wird fortlaufend erweitert.

Um einen einfachen Einstieg zu finden, wird als Hardware vornehmlich das Arduino Uno-Board verwendet. Dieses stellt ein kostengünstiges Entwicklungsboard dar und hat weltweit eine hohe Verbreitung gefunden. Kernstück ist ein µC der Firma Microchip (ATmega328P). Zusätzlich gibt es jedoch auch Beispiele für die Programmierung weiterer Boards aus derselben Board-Familie wie dem Arduino Nano sowie auf dem µC ESP8266 basierende Boards.

Zu den Arduino-Boards ist eine Entwicklungsumgebung (Arduino IDE) erhältlich, die eine Vielzahl spezieller Funktionen enthält, die eine vergleichsweise einfache Programmierung von Anwendungen ermöglichen. Zur Programmierung der Arduino-Boards mit Hilfe dieser IDE existieren eine Vielzahl von Büchern und Informationen im Internet. Auch technisch weniger versierten Personen ist es möglich, mikrocontrollerbasierte Projekte zu verwirklichen, indem die Boards mit der jeweiligen Peripherie verbunden werden und entsprechende Code-Zeilen aus den Vorlagen (Bücher, Internet-Quellen) übernommen und angepasst werden. Auch der vorliegende Kurs wird auf die Programmierung mit der Arduino IDE eingehen.

Darüberhinaus soll ein Ziel für Lernende der Elektrotechnik darin bestehen, die Nutzungsmöglichkeiten (und -beschränkungen) und Vorgänge im Mikrocontroller besser zu verstehen, um die Kenntnisse auch auf andere Mikrocontroller und Programmierumgebungen anwenden zu können. Fragestellungen dazu sind beispielsweise: wie kommuniziert der µC mit seinen digitalen Ein- und Ausgängen, wie erfolgt eine Analog-Umsetzung, was ist ein Interrupt, welche Einsatz- und Konfigurationsmöglichkeiten habe ich mit den Timer-Modulen der µC, etc. Die Antworten auf diese Fragen bleiben bei der Programmierung mit Hilfe der mächtigen Bibliotheken der Arduino IDE im Allgemeinen weitestgehend verborgen. Zur Beantwortung dieser Fragestellungen muss man sich insbesondere mit dem Aufbau des jeweiligen µC und seinen Registern auseinandersetzen. Letzteres wird ein bedeutender Teil des vorliegenden Kurses sein. Die Umsetzung dazu erfolgt mit der Entwicklungsumgebung Atmel Studio. Ein Vorteil bei der direkten Ansprache der µC-internen Register mit der Programmiersprache C besteht darin, dass der Programmierer in der Lage ist, zeit- und ressourceneffizientere Programme zu schreiben, da die Umsetzung näher an der Hardware erfolgt und weniger stark von der Effizienz des Compilers (im Vergleich zur Arduino IDE) abhängt.


Zuletzt geändert: Montag, 21. Oktober 2019, 09:37