Mikrocontroller programmieren: Arduino, ESP32, STM32 und RP2040
Mikrocontroller-Programmierung ist das Herzstück moderner Embedded-Softwareentwicklung. Ob IoT-Gerät, Industriesteuerung oder Smart-Home-Produkt, ohne Mikrocontroller läuft nichts. Dieser Guide zeigt, welche Plattform zu welchem Projekt passt und worauf es bei Arduino, ESP32, STM32 und RP2040 ankommt.
Was Mikrocontroller-Programmierung bedeutet
Bei der Mikrocontroller-Programmierung entwickelt man Software direkt für Hardware-Chips. Anders als Computer oder Smartphones haben Mikrocontroller begrenzte Ressourcen bei RAM, Flash und Rechenleistung und arbeiten oft ohne Betriebssystem. Programmiert wird typischerweise in C oder C++, mit einem guten Verständnis für die Hardware.
Wann Mikrocontroller, wann Raspberry Pi?
Mikrocontroller eignen sich für:
- Anwendungen mit geringem Stromverbrauch, etwa im Batteriebetrieb
- Echtzeit-Anforderungen ohne Betriebssystem-Latenz
- Kostensensitive Projekte
- Einfache Steuerung von Sensoren und Aktoren
Ein Raspberry Pi ist besser für:
- Komplexe Software mit Linux und Python
- Netzwerkintensive Anwendungen
- Machine Learning und Computer Vision
Die wichtigsten Plattformen
Arduino
Arduino ist die ideale Einstiegsplattform. Die IDE vereinfacht die Entwicklung stark. Klassische Boards nutzen 8-Bit-ATmega-Chips, neuere wie das Nano 33 BLE setzen auf 32-Bit-ARM-Cortex-M. Vorteile sind die riesige Community, viele fertige Libraries und die einfache Programmierung. Typische Anwendungen sind Datenlogger, LED-Steuerungen, Robotik und Prototypen für die Hausautomation.
ESP32 und ESP8266
Der ESP32 ist der Favorit für IoT-Projekte. Mit integriertem WLAN und Bluetooth ist er perfekt für vernetzte Anwendungen, dazu sehr günstig (etwa CHF 5 bis 10) und Arduino-kompatibel. Der Vorgänger ESP8266 kann nur WLAN, ist aber noch preiswerter. Typische Anwendungen sind IoT-Sensoren, Smart-Home-Geräte, WLAN-Wetterstationen und MQTT-Clients.
STM32
STM32 von STMicroelectronics ist die Wahl für professionelle Anwendungen. Mit ARM-Cortex-M-Kernen bieten die Chips hohe Leistung und eine enorme Produktpalette mit über tausend Varianten, eine Hardware-Fliesskommaeinheit und professionelle Werkzeuge wie STM32CubeIDE. Typische Anwendungen sind Industriesteuerungen, Motor-Controller, Audio-Verarbeitung, Medizingeräte und schnelle Datenerfassung.
RP2040 (Raspberry Pi Pico)
Der RP2040 im Raspberry Pi Pico ist der Newcomer. Zwei ARM-Cortex-M0+-Kerne mit 133 MHz, viel RAM und sehr günstig. Eine Besonderheit ist die programmierbare IO für eigene Protokolle. Programmiert wird in C, C++ oder MicroPython. Typische Anwendungen sind USB-Geräte, LED-Matrix-Steuerungen, eigene Protokolle und Audio-Synthesizer.
Vergleich
| Plattform | CPU | RAM | WLAN/BLE | Ideal für |
|---|---|---|---|---|
| Arduino Uno | 8-Bit, 16 MHz | 2 KB | nein | Einstieg, Prototypen |
| ESP32 | Dual, 240 MHz | 520 KB | ja | IoT, Smart Home |
| STM32F4 | ARM, 168 MHz | 192 KB | nein | Industrie, Performance |
| RP2040 | Dual, 133 MHz | 264 KB | nein | USB-Geräte, eigene Protokolle |
Welcher passt zu Ihrem Projekt?
Für den Einstieg und schnelle Prototypen ist Arduino die richtige Wahl. Für vernetzte Geräte führt kaum ein Weg am ESP32 vorbei. Wenn es um Leistung, Zuverlässigkeit und industrielle Anforderungen geht, ist STM32 gesetzt. Und der RP2040 spielt seine Stärken überall dort aus, wo eigene Protokolle und echte Parallelverarbeitung gefragt sind.
Wenn Sie unsicher sind, welche Plattform und welcher Aufbau für Ihr Gerät sinnvoll sind, unterstütze ich Sie gern von der Auswahl über den Prototyp bis zur Serie.