Teil 11: Analoge Messwerte mit ADC
Lernziel: Ein Potentiometer als Spannungsteiler verwenden.
Voraussetzungen: Der Rust-PC-Grundlagenkurs bzw. Grundkenntnisse in Rust; außerdem die vorangegangenen Pico-Lektionen. Zielboard: Pico 2 / Pico 2 W (ARM); Hinweise für RP2040 in der Kursübersicht.
Worum geht es?
Der ADC wandelt eine analoge Eingangsspannung in einen Zahlenwert. Verbinde ein 10-kΩ-Potentiometer zwischen 3V3 und GND, den Schleifer mit einem ADC-fähigen Pin, etwa GPIO26/ADC0. Wandle den Rohwert in eine Spannung um, abhängig von Auflösung und Referenzspannung.
Schritt für Schritt
// Rechenbeispiel für einen 12-Bit-Wert:
let raw: u16 = 2048;
let spannung = raw as f32 * 3.3 / 4095.0;
// Ergebnis ungefähr 1,65 V
Einordnung: ADC-Toleranz und Referenzspannung begrenzen die tatsächliche Genauigkeit.
Hintergrund und häufige Fehler
- Board prüfen: Pico/Pico W (RP2040) und Pico 2/Pico 2 W (RP2350) brauchen unterschiedliche Compilerziele und Boardkonfigurationen.
- Hardware zuerst: Vor dem Flashen Pinbelegung, gemeinsame Masse und 3,3-V-Pegel prüfen.
- Versionsstand: Übernehme die passenden Embassy-Beispiele und Abhängigkeiten aus demselben Repository-Stand; APIs ändern sich zwischen Releases.
- Schrittweise testen: Erst ein kleines funktionsfähiges Beispiel, danach jeweils genau eine Änderung vornehmen.
Selbst ausprobieren
Berechne die Spannung für Rohwert 1024, wenn 0–4095 auf 0–3,3 V abgebildet werden.
Musterlösung anzeigen
1024.0 * 3.3 / 4095.0 ergibt ungefähr 0,825 V.
Dokumentation für deine Versuche
Notiere verwendetes Board, Verdrahtung, Git-Commit oder Bibliotheksversion, Build-Befehl, Ergebnis und aufgetretene Fehlermeldungen. Halte dazu ein Foto oder einen Screenshot fest, der später in den Website-Beitrag übernommen werden kann.
Weiterführende Informationen
- Embassy – offizielles Repository und RP-Beispiele
- Embassy-Dokumentation
- RP-HAL mit RP2040-/RP235x-Hinweisen
