Alle Rust-Kurse

Rust auf dem Raspberry Pi Pico – Grundlagenkurs

24 aufeinander aufbauende Lektionen Embedded Rust mit Pico 2/Pico 2 W: GPIO, PWM, ADC, I²C, Embassy und WLAN.

Rust auf dem Raspberry Pi Pico

Der zweite Teil des Rust-Selbstlernkurses führt vom PC auf den Mikrocontroller. 24 Lektionen mit Übungen und aufklappbaren Musterlösungen, zunächst mit externer LED und Taster, später mit ADC, I²C, asynchronen Tasks und optional WLAN.

Empfehlung: Zuerst Rust auf dem PC bearbeiten. Der Kurs setzt Funktionen, Datentypen, Ownership und Cargo voraus.

Wichtiger Hinweis: Die Beispiele sind bewusst als didaktische Ausschnitte gekennzeichnet, wenn sie nicht alleine kompilieren. Für die Firmware das offizielle Embassy-Projektgerüst sowie die dazugehörigen Versionen und Boardfeatures verwenden. Hardwarebeispiele wurden hier nicht auf einem realen Pico getestet.

Kurslektionen

Einstieg

  1. Teil 01: Rust auf dem Raspberry Pi Pico
  2. Teil 02: Hardware und sichere Beschaltung
  3. Teil 03: Rust und Entwicklungsumgebung
  4. Teil 04: Embassy-Projekt einrichten
  5. Teil 05: Firmware bauen und übertragen

GPIO

  1. Teil 06: Erste LED blinken lassen
  2. Teil 07: Taster als digitaler Eingang
  3. Teil 08: Taster entprellen
  4. Teil 09: Timer und asynchrones Programmieren

Signale

  1. Teil 10: PWM und LED-Helligkeit
  2. Teil 11: Analoge Messwerte mit ADC

Schnittstellen

  1. Teil 12: UART und Debug-Ausgaben
  2. Teil 13: I²C-Bus verstehen
  3. Teil 14: Text auf einem OLED anzeigen
  4. Teil 15: SPI und externe Module

Fortgeschritten

  1. Teil 16: Interrupts und Ereignisse
  2. Teil 17: Mehrere Aufgaben mit Embassy
  3. Teil 18: PIO und präzise Signale

Netzwerk

  1. Teil 19: WLAN mit Pico W und Pico 2 W
  2. Teil 20: TCP, HTTP und einfache Netzwerkdienste
  3. Teil 21: MQTT und Messwerte übertragen

Projektpraxis

  1. Teil 22: Debugging, Logging und Tests

Abschlussprojekt

  1. Teil 23: Abschlussprojekt: Sensorstation planen
  2. Teil 24: Abschlussprojekt: Sensorstation umsetzen

Hardware

  • Raspberry Pi Pico 2 W (empfohlen), alternativ Pico 2; RP2040 benötigt angepasste Targets/Features.
  • USB-Datenkabel, Breadboard, Jumperkabel, 330-Ω-Widerstände, LEDs, Taster, Potentiometer.
  • Optional: SSD1306-I²C-OLED (3,3-V-kompatibel), I²C-Sensor, USB-UART-Adapter mit 3,3-V-Pegeln oder SWD-Debugger.

Achtung: GPIO-Pins sind nicht 5-V-tolerant. Keine Motoren oder anderen leistungsstarken Verbraucher direkt anschließen.

Entwicklungsumgebung

  • Rust/rustup, Cargo, VS Code und rust-analyzer.
  • RP2350 ARM: rustup target add thumbv8m.main-none-eabihf.
  • RP2040: rustup target add thumbv6m-none-eabi.
  • Firmwareflash per UF2/BOOTSEL oder SWD je nach Beispielprojekt.

Technische Basis

Embassy / embassy-rp für Peripherie und Task-Ausführung; cyw43 und embassy-net für WLAN auf W-Modellen. Stets eine passende, zusammengehörige Release-/Commit-Kombination nutzen.