Raspberry Pi Pico: Mehrere Taster mit einem ADC-Eingang auswerten
Ein ADC-Eingang am Raspberry Pi Pico dient im Prinzip zur Auswertung bzw. Messung eines analogen Signals bis maximal 3,3 Volt. Oft wird an einem ADC-Eingang, der Spannungsabfall an einem Widerstand oder Sensor gemessen, um daraus eine andere Einheit zu ermitteln oder umzurechnen.
Mit dem Wissen, dass der Spannungsabfall an unterschiedlichen Widerständen unterschiedliche Messwerte ergeben, eignet sich das für mehrere Taster, die an einem ADC-Eingang ausgewertet werden.
Dazu verbindet man die Taster über unterschiedliche Widerstände mit dem ADC-Eingang und wertet anschließend den Spannungsabfall über diesen Widerstand aus, der durch Drücken eines Tasters entsteht. Da bei jedem Widerstand eine unterschiedliche Spannung abfällt, lässt sich der gedrückte Taster in der Software identifizieren. Theoretisch lassen sich so beliebig viele Taster parallel an einem ADC-Eingang auswerten.
Schaltung
Hinweis: Parallel geschaltete Widerstände verringert den Gesamtwiderstand der Parallelschaltung.
Aufbau und Bauteile
Widerstände: 10 kOhm (Braun-Schwarz-Orange-Gold)
Programmcode
Im Programmcode wird ein ADC-Eingang initialisiert, mit dem alle Taster an einer Seite verbunden sind. Anschließend wird in mehreren Bedingungen geprüft welcher Wert zum Taster passt und die Betätigung angezeigt.
# Bibliotheken laden from machine import ADC from utime import sleep # Initialisierung des ADC0 btn = ADC(0) # Wiederholung (Endlos-Schleife) while True: value = btn.read_u16() if (value > 27500 and value < 28500): print('Taster 1') elif (value > 19000 and value < 20000): print('Taster 2') elif (value > 14500 and value < 15500): print('Taster 3') #print(value) sleep(0.3)
Grundsätzlich kannst Du beliebige Widerstandswerte verwenden. Allerdings sind dann die Messwerte, die der ADC-Eingang ermittelt, andere. Die Werte in den Bedingungen müssen dann entsprechend geändert werden.
Weitere verwandte Themen:
- Raspberry Pi Pico: GPIO-Eingang mit Taster beschalten und auswerten
- Raspberry Pi Pico: GPIO-Eingang - Taster entprellen
- Raspberry Pi Pico: LED mit Taster ein- und ausschalten
- Raspberry Pi Pico: Taster-Zustand auswerten und mit einer LED anzeigen
- Raspberry Pi Pico: Taster-Zustand invertieren (Inverter/NICHT-Funktion)
Teilen:
Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython
Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.
- LED: Einschalten, ausschalten, blinken und Helligkeit steuern
- Taster: Entprellen und Zustände anzeigen
- LED mit Taster einschalten und ausschalten
- Ampel- und Lauflicht-Steuerung
- Elektronischer Würfel
- Eigene Steuerungen programmieren
Online-Workshop
Hardware-nahes Programmieren mit dem Raspberry Pi Pico
Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.
Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)
Elektronik-Set Pico Edition
Raspberry Pi Pico: Hardware-nahes Programmieren mit MicroPython
Leichter Einstieg mit All-in-one-Set zum sofort Loslegen, um eigene Steuerungen programmieren.
Elektronik-Set Pico WLAN Edition
Raspberry Pi Pico W: IoT und Smart Home mit WLAN und MQTT
Betreibe Deinen Raspberry Pi Pico W als drahtloser Sensor in Deinem WLAN, versende E-Mails mit Daten und kommuniziere per MQTT im Internet of Things oder Smart Home.
Elektronik-Set Sensor Edition
Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition
Elektronik-Set mit den beliebtesten Sensoren zum Messen von Temperatur, Helligkeit, Bewegung, Lautstärke und Entfernung.
Elektronik-Set Eingabe Ausgabe Edition
Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition
Damit kannst Du MP3-Dateien abspielen, eine Stoppuhr bauen, einen Servo-Motor mit Drehschalter oder Joystick steuern, Lichteffekte mit einem WS2812-LED-Lichtstreifen erzeugen, Schalten mit einem Relais und Signalisieren mit einem Vibrationsmotor.