Raspberry Pi Pico: Summer-Lautstärke mit einem Potentiometer einstellen

Im Prinzip kennt ein GPIO nur zwei Zustände: „High“ und „Low“. Also „An“ und „Aus“ oder „1“ und „0“. Es handelt sich dabei um die binäre Logik. Werte dazwischen gibt es nicht. Demnach kann man einen Summer an einem GPIO-Ausgang auch nur ein- und ausschalten.

Trotzdem gibt es einen Trick mit dem Du die Lautstärke eines Summers einstellen kannst. Das geht, in dem Du zwischen den Zuständen „1“ und „0“, also „An“ und „Aus“, schnell hin- und herschaltest und die Lautstärke über die An-Zustand regelst. Je weniger An, desto geringer ist die Lautstärke. Den Zustandswechsel realisiert man über ein PWM-Signal.

Aufbau und Bauteile

Raspberry Pi Pico: Summer-Lautstärke mit einem Potentiometer einstellen

Ein aktiver Summer ist gepolt. Das lange Anschlussbein ist der positive Pol, der mit dem GPIO verbunden wird. Das kurze Anschlussbein ist der negative Pol, der mit Ground (GND) verbunden wird.

  • Potentiometer, 10K (103)
  • Summer

Programmcode

Im Programmcode wird ein GPIO als Ausgang mit PWM-Signal für den Summer und ein ADC-Eingang initialisiert. Der ADC-Eingang misst den Spannungsabfall am Potentiometer und liefert eine Ganzzahl zurück. Durch Drehen des Potentiometers ändert sich die Ganzzahl.
In einer Endlosschleife wird abhängig vom ADC-Eingang das PWM-Signal (Duty Cycle) gesetzt und auf diese Weise die Lautstärke des Summers eingestellt. Der Wert wird zusätzlich auf der Kommandozeile ausgegeben.

# Bibliotheken laden
from machine import Pin, ADC, PWM
from time import sleep

# Initialisierung des ADC0-Eingang (GPIO26)
adc0 = ADC(0)

# Initialisierung: GPIO16 als Ausgang mit PWM-Signal
pwm = PWM(Pin(16, Pin.OUT))
pwm.freq(1000)

# Wiederholung (Endlos-Schleife)
while True:
    # ADC0 lesen
    value = adc0.read_u16()
    # PWM-Duty-Cycle setzen
    pwm.duty_u16(value)
    print(value)
    sleep(0.5)

Weitere verwandte Themen:

Frag Elektronik-Kompendium.de

Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython

Elektronik-Set Pico Edition

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

Elektronik-Set jetzt bestellen Online-Workshop buchen

Online-Workshop: Programmieren mit dem Raspberry Pi Pico

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.

Online-Workshop buchen

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

Termine und Newsletter-Anmeldung

 

Elektronik-Sets für das Hardware-nahe Programmieren