Mikrocontroller Grundlagen
Ein winziger Computer auf einem einzigen Chip, der in unzähligen Alltagsgeräten unbemerkt seine Arbeit macht.
Zuletzt aktualisiert: 23. September 2026
Was ist ein Mikrocontroller
MikrocontrollerEin kompletter kleiner Computer auf einem einzigen Chip, Prozessor, Arbeitsspeicher und oft auch Ein- und Ausgänge zusammenAbkürzungHäufig auch µC oder MCU genanntUnterschied zum PCEin Mikrocontroller übernimmt meist genau eine feste Aufgabe, statt viele verschiedene Programme gleichzeitig auszuführenWo Mikrocontroller stecken
HaushaltWaschmaschine, Mikrowelle, KaffeemaschineFahrzeugeAirbag, ABS, MotorsteuerungKleingeräteFernbedienung, Tastatur, DigitaluhrSmart HomeSteckdosen, Thermostate und Sensoren mit eigenem kleinen ChipSpeichertypen
ROMSpeicher, der nach der Herstellung nicht mehr verändert werden kannEPROMEin Vorläufer von Flash, ließ sich mit UV Licht löschen und neu beschreiben, heute kaum noch im EinsatzOTPOne Time Programmable, kann genau einmal beschrieben werden, danach nicht mehr veränderbarFlashElektrisch wiederbeschreibbarer Speicher, heute bei den meisten Mikrocontrollern StandardRAMArbeitsspeicher für laufende Berechnungen, Inhalt geht beim Ausschalten verlorenChip Architekturen
4 BitSehr einfach und günstig, reicht zum Beispiel für einfache Uhren8 BitDie mit Abstand am weitesten verbreitete Architektur bei Mikrocontrollern16 BitMehr Leistung bei noch überschaubarem Stromverbrauch32 BitHeute für anspruchsvollere Aufgaben Standard, unter anderem beim ESP32Speichergrößen im Vergleich
Ein Mikrocontroller hat deutlich weniger Speicher als ein normaler Computer, deshalb muss der Code so sparsam wie möglich sein.
ProgrammspeicherTypisch zwischen 1 Kilobyte und 2 MegabyteArbeitsspeicher (RAM)Typisch zwischen 32 Byte und 48 KilobyteZum VergleichEin normaler PC hat oft 16.000 Megabyte RAM oder mehrProgrammiersprachen
CDie mit Abstand häufigste Sprache für Mikrocontroller in der IndustrieAssemblerSehr hardwarenahe Sprache, vor allem bei kleinen, einfachen Chips im EinsatzMicroPythonEine vereinfachte Python Variante speziell für Mikrocontroller, beliebt bei Einsteigern und HobbyprojektenBekannte Einsteiger Plattformen
ArduinoSehr einsteigerfreundliches Board mit großer Community und vielen fertigen BeispielenESP32Günstiger Mikrocontroller mit eingebautem WLAN und Bluetooth, oft mit MicroPython programmiertRaspberry Pi PicoKleines, preiswertes Board, ebenfalls häufig mit MicroPython genutztEinen ESP32 mit MicroPython programmieren
Wie ein Mikrocontroller im Hobbybereich tatsächlich zum Einsatz kommt, am Beispiel ESP32.
Was ist MicroPython
Eine eigene, schlanke Programmiersprache, die auf Python basiert, aber gezielt für Mikrocontroller mit wenig Speicher entwickelt wurde.
VorteilDeutlich einfacher zu lernen als die sonst übliche Sprache CUnterschied zu PythonEnthält nur einen kleinen Teil der normalen Python Bibliotheken, weil auf dem Chip wenig Platz istREPLEine interaktive Befehlszeile, in der einzelne Python Befehle sofort ausgeführt werdenFirmware und Software
Bevor ein Mikrocontroller eigenen Code ausführen kann, braucht er eine Grundausstattung an Software.
FirmwareDie Basis Software, die zuerst auf den leeren Chip übertragen wird, erst danach versteht er zum Beispiel Python CodeIDEEin Programm auf dem PC, in dem der Code geschrieben und anschließend auf den Mikrocontroller übertragen wirdTreiberEin zusätzliches Programm auf dem PC, das die USB Verbindung zum Mikrocontroller erst ermöglichtGPIO Pins
Die Anschlüsse eines Mikrocontrollers, über die er mit der Außenwelt verbunden wird.
GPIOGeneral Purpose Input Output, ein frei nutzbarer Anschluss für Eingabe oder AusgabeHIGH und LOWEin Pin kennt nur zwei Zustände, Spannung an oder aus, ähnlich wie eine 1 oder 01 (HIGH)Beim ESP32 üblicherweise 3,3 Volt, eine daran angeschlossene LED leuchtet0 (LOW)0 Volt, eine daran angeschlossene LED bleibt dunkelTypisches BeispielEine LED über einen Ausgang anschalten oder einen Taster über einen Eingang auslesenI2C Bus
Ein Verfahren, um mehrere Bauteile über nur zwei Leitungen mit dem Mikrocontroller zu verbinden.
SDA und SCLDie zwei Leitungen des I2C Busses, eine für Daten, eine für den TaktAdresseJedes angeschlossene Bauteil hat eine eigene feste Adresse, darüber spricht der Mikrocontroller es gezielt anVorteilMehrere Sensoren und Displays gleichzeitig, ohne für jedes einzelne eigene Leitungen zu brauchenSPI Bus
Ein zweites, schnelleres Verfahren, um Bauteile mit dem Mikrocontroller zu verbinden, etwa als Alternative zu I2C.
MOSI, MISO, SCKGetrennte Leitungen zum Senden, Empfangen und für den Takt, dadurch schneller als I2CChip SelectEine eigene Leitung pro Bauteil, statt einer Adresse wie bei I2C, wählt aus, welches Bauteil gerade angesprochen wirdTypischer EinsatzDisplays und Speicherkarten, wenn es auf hohe Geschwindigkeit ankommtPWM
Pulsweitenmodulation, ein Trick, um mit einem einfachen An/Aus Pin trotzdem feine Abstufungen zu erzeugen.
FunktionsweiseDer Pin schaltet sehr schnell zwischen an und aus, das Verhältnis der beiden Zeiten bestimmt den effektiven WertTypischer EinsatzDie Helligkeit einer LED dimmen oder die Geschwindigkeit eines kleinen Motors steuernADC, Analog Digital Umsetzer
Wandelt eine analoge Spannung in eine Zahl um, die der Mikrocontroller weiterverarbeiten kann.
Analoges SignalEine Spannung, die stufenlos zwischen zwei Werten liegen kann, zum Beispiel von einem TemperatursensorDigitalisierungDer ADC wandelt diese Spannung in eine feste Zahl um, mit der sich im Code weiterrechnen lässtTypischer EinsatzEin Poti auslesen oder einen analogen Sensor wie einen Lichtsensor abfragenBeispiel: Sensor und Display
Zwei typische Bauteile, die per I2C an einen ESP32 angeschlossen werden, jeweils über eine fertige Treiber Bibliothek angesprochen.
BME280Ein Sensor, der Temperatur, Luftfeuchtigkeit und Luftdruck misstSSD1306Ein kleines OLED Display, auf dem sich zum Beispiel die gemessenen Sensorwerte anzeigen lassenTreiber BibliothekFertiger Code, der die Kommunikation über I2C übernimmt, sodass man selbst nur wenige einfache Befehle aufrufen muss