Raspberry Pi Pico: picozero-Programmier-Kurs

„picozero“ ist eine Einsteiger-freundliche Bibliothek für MicroPython. Sie stellt eine Software-Schnittstelle für Physical Computing bereit, um LEDs, Taster, Sensoren und vieles mehr einfacher zu programmieren und zu steuern.
Zusammen sind MicroPython und „picozero“ für Anfänger und Einsteiger einfach unschlagbar. Und auch Fortgeschrittene können von der Einfachheit profitieren.

Allerdings sind ein paar Dinge anders. Im folgenden Programmier-Kurs wird die Programmierung wichtiger Hardware-naher Komponenten gegenübergestellt. Wer MicroPython beherrscht kann so die entsprechende Lösung für „picozero“ vergleichen und adaptieren.

Um „picozero“ nutzen zu können, muss auf Deinem Raspberry Pi Pico die Bibliothek installiert sein.

Übersicht: MicroPython mit picozero

  1. Onboard-LED einschalten und ausschalten
  2. Onboard-LED blinken lassen
  3. Mit einem Taster die Onboard-LED einschalten und ausschalten
  4. GPIO-Eingang als ADC
  5. GPIO-Ausgang mit PWM-Signal

1. Onboard-LED einschalten und ausschalten

Programmcode für MicroPython

# Bibliotheken laden
from machine import Pin
from time import sleep

# Initialisierung von GPIO25 als Ausgang
led_onboard = Pin(25, Pin.OUT)

# LED einschalten
led_onboard.on()

# 5 Sekunden warten
sleep(5)

# LED ausschalten
led_onboard.off()

Programmcode für MicroPython mit picozero

# Bibliotheken laden
from picozero import pico_led
from time import sleep

# LED initialisieren und einschalten
pico_led.on()

# 5 Sekunden warten
sleep(5)

# LED ausschalten
pico_led.off()

2. Onboard-LED blinken lassen

Programmcode für MicroPython

# Bibliotheken laden
from machine import Pin
from time import sleep

# Initialisierung von GPIO25 als Ausgang
led_onboard = Pin(25, Pin.OUT)

# Wiederholung (Endlos-Schleife)
while True:
    # LED einschalten
    led_onboard.on()
    # halbe Sekunde warten
    sleep(0.5)
    # LED ausschalten
    led_onboard.off()
    # 1 Sekunde warten
    sleep(1)

Programmcode für MicroPython mit picozero

# Bibliotheken laden
from picozero import pico_led

# Onboard-LED initialisieren blinken lassen
pico_led.blink()

3. Mit einem Taster die Onboard-LED einschalten und ausschalten

Programmcode für MicroPython

# Bibliotheken laden
from machine import Pin

# Initialisierung von GPIO25 als Ausgang
led_onboard = Pin(25, Pin.OUT)

# Initialisierung von GPIO14 als Eingang mit internem PULLDOWN-Widerstand
btn = Pin(14, Pin.IN, Pin.PULL_DOWN)

# Funktion zur Taster-Auswertung
while True:
    if btn.value() == 1:
        led_onboard.on()
    else:
        led_onboard.off()

Programmcode für MicroPython mit picozero

# Bibliotheken laden
from picozero import Button, pico_led

# LED ausschalten (initialisieren)
pico_led.off()

# Button initialisieren
button = Button(14)

#Taster-Auswertung
button.when_pressed = pico_led.toggle

4. GPIO-Eingang als ADC

Programmcode für MicroPython

# Bibliotheken laden
from machine import ADC

# Initialisierung des ADC0 (GPIO26)
adc = ADC(0)

# ADC0 als Dezimalzahl lesen
read = adc.read_u16()

# Spannung berechnen
voltage = read * 3.3 / 65536

# Daten ausgeben
print('ADC:', read, '/', voltage, 'V')

Programmcode für MicroPython mit picozero

# Bibliotheken laden
from picozero import pico_temp_sensor
from time import sleep

# InternenTemperatur-Sensor auslesen
print(pico_temp_sensor.temp)

5. GPIO-Ausgang mit PWM-Signal

Hinweis: Die Ansteuerung der Onboard-LED funktioniert nur bei einem Raspberry Pi Pico ohne WLAN-Chip.

Programmcode für MicroPython

# Bibliotheken laden
from machine import Pin, PWM

# GPIO25 mit PWM initialisieren (Onboard-LED)
pwm = PWM(Pin(25))

# Frequenz in Hertz (Hz) einstellen
pwm.freq(8)

# Tastgrad (Duty Cycle) einstellen
pwm.duty_u16(1000)

Programmcode für MicroPython mit picozero

# Bibliotheken laden
from picozero import PWMLED

# GPIO25 mit PWM initialisieren (Onboard-LED)
pwm = PWMLED(25, freq=8, duty_factor=1000)
pwm.on()

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