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

Schaltung: Raspberry Pi Pico: Mehrere Taster mit ADC auswerten

Hinweis: Parallel geschaltete Widerstände verringert den Gesamtwiderstand der Parallelschaltung.

Aufbau und Bauteile

Widerstände: 10 kOhm (Braun-Schwarz-Orange-Gold)

Schnell und einfach alle Bauteile zusammen bestellen

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 time import sleep

# Initialisierung des ADC0 (GPIO26)
btn = ADC(26)

# 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:

Elektronik-Sets für das Hardware-nahe Programmieren

Elektronik-Sets für das Hardware-nahe Programmieren

Programmieren mit dem Raspberry Pi Pico
Online-Meeting

Programmieren mit dem Raspberry Pi Pico

Besuchen Sie unser fast monatlich stattfindendes Online-Meeting PicoTalk und lernen Sie uns kennen. Die Teilnahme ist kostenfrei.

Termine und Newsletter-Anmeldung

Frag Elektronik-Kompendium.de