Seeed Studio XIAO RP2040 – programmieren & Beispiele

In diesem Beitrag möchte ich dir den Mikrocontroller XIAO RP2040 vorstellen. Dieser kleine Mikrocontroller kommt mit dem Mikrochip RP2040 daher, welcher von der Raspberry Foundation veröffentlicht wurde.

Seeed Studio XIAO RP2040 - programmieren & Beispiele
Seeed Studio XIAO RP2040 – programmieren & Beispiele

Den Raspberry Pi Pico & Raspberry Pi Pico W habe ich dir bereits in separaten Beiträgen vorgestellt.

Im letzten Beitrag Seeed Studio XIAO RP2040 – ein Zwerg mit großer Leistung habe ich dir bereits einiges zu der Technik und dem Pinout gezeigt, hier möchte ich dir nun ein paar kleine Beispiele zeigen.

Vorbereiten des Mikrocontrollers

Bevor wir den Mikrocontroller auf einem Steckbrett verwenden können, müssen wir noch die Stiftleisten anlöten.

Dem Mikrocontroller liegen leider keine bei, jedoch bekommst du diese recht günstig auf ebay.de schon ab 1,35 € zzgl. Versandkosten und sogar in diversen Farben.

Alternativ kannst du auch Buchsenleisten mit langen Stiften verwenden, hier hast du dann den Vorteil, dass du von oben Breadboardkabel einstecken kannst und trotzdem diesen auf einem Steckbrett stecken kannst.

Anschluss an den Computer

Für den Anschluss an den Computer, benötigst du ein USB-Typ-C Datenkabel, dieses ist wiederum bedauerlicherweise auch nicht enthalten, aber dieser Anschluss ist ja bei Handys, Tablets sehr verbreitet und somit sollte man ggf. eines bereits zu Hause haben.

Wenn du den Mikrocontroller mit dem Computer verbunden hast, dann wird dieser zunächst eingerichtet, unter Microsoft Windows 10 erhältst du nachfolgende Push-Benachrichtigungen vom System.

Der Mikrocontroller wird als PicoArduino erkannt, aber dazu etwas mehr, wenn wir im nächsten Kapitel zur Programmierung kommen.

Auf dem Mikrocontroller ist bereits ein kleines Programm installiert, welches die verbaute RGB LED in diversen Farben aufleuchten lässt.

Programmieren des Seeed Studio XIAO RP2040

Den Mikrocontroller kannst du in diversen IDEs programmieren, im Nachfolgenden möchte ich dir gerne zeigen, wie du diesen in der Thonny IDE programmierst.

Thonny IDE

Die Thonny IDE kannst du kostenfrei für macOS,Linux und auch Microsoft Windows herunterladen. Wie du diese IDE auf einem Linux System installierst, habe ich dir im Beitrag Thonny IDE auf Linux einrichten für den Raspberry Pi Pico W anhand des Raspberry Pi Pico W gezeigt.

Damit du diesen Mikrocontroller in der Thonny IDE mit Micropython programmieren kannst, muss zunächst die passende Firmware installiert werden, damit dieses wiederum geschehen kann, musst du die Taste „Boot“ gedrückt halten und den Stecker des Mikrocontrollers in die Buchse stecken. Im Anschluss sollte sich nun ein neues Laufwerk einbinden.

installieren der Firmware für Micropython über Thonny IDE
installieren der Firmware für Micropython über Thonny IDE

Wenn der Installationsvorgang abgeschlossen ist, dann wird der Mikrocontroller als „Raspberry Pi Pico“ erkannt. Das ist auch nicht sehr verwunderlich, denn immerhin ist auf diesem der Chip RP2040 verbaut.

MicroPython v1.19.1 on 2022-06-18; Raspberry Pi Pico with RP2040

Type "help()" for more information.
>>> 

Programmieren des NeoPixel

Der verbaute NeoPixel liegt zwischen den beiden Tasten „RESET“ und „Boot“ und kann über den Pin 11 erreicht werden. Damit wir diese jedoch programmieren können, benötigen wir eine kleine Bibliothek, welche wir unter https://files.seeedstudio.com/wiki/XIAO-RP2040/img/micropython/ws2812.py herunterladen können.

Wenn diese Datei heruntergeladen wurde, dann öffnen wir diese in der Thonny IDE und speichern diese auf dem Mikrocontroller.

#importieren der benötigten Bibliotheken
#für den NeoPixel
from ws2812 import WS2812
#zum einlegen einer kleinen Pause
import time

#definieren der Farben im RGB Format
#Rot
RED = (255, 0, 0)
#Gelb
YELLOW = (255, 150, 0)
#Grün
GREEN = (0, 255, 0)
#Weiß
WHITE = (255, 255, 255)
#Tupel mit den Farben und den dazugehörigen Namen
COLORS = ((RED,"rot"), (YELLOW,"gelb"), (GREEN,"grün"), (WHITE,"weiß"))
 
#WS2812(pinNum, ledCount)
led = WS2812(12,1)
 
#Endlosschleife
while True:
    #Loop über das Tupel
    for color in COLORS:
        #erster Wert ist die RGB Farbe
        led.pixels_fill(color[0])
        led.pixels_show()
        #zweiter Wert ist der Name
        print(color[1])
        #eine kleine Pause einlegen
        time.sleep(1)
Seeed Studio XIAO RP2040 - NeoPixel Beispiel

LED per Taster EIN/AUS schalten

Im nächsten Schritt zeige ich dir, wie du eine kleine LED per Taster EIN/AUS schalten kannst.

Hier nun der Code inkl. dem entprellen des Tasters.

#importieren der benötigten Module
#zum steuern der GPIOs
from machine import Pin
#zum einlegen von Pausen oder
#dem auslesen von Zeit
import time

#die LED ist am Pin 3 (D10) angeschlossen
led = Pin(3, Pin.OUT)
#der Taster ist am Pin 7 (D5) angeschlossen
button = Pin(7, Pin.IN)

#Feld zum speichern des Zeitstempels der
#letzten Ausführung
last_action = 0

#Zeit welche zwischen zwei Ausführungen liegen soll
#dient quasi dem entprellen des Tasters
delay = 500

#Endlosschleife
while True:
    #lesen der vergangenen Millisekunden
    #seitdem der Mikrocontroller gestartet wurde
    currentMillis = time.ticks_ms()
    #Wenn der Taster betätig wurde, dann...
    if button.value():
        #Wenn der Zeitpunkt der letzten Ausführung kleiner
        #als der aktuelle Zeitpunkt - dem Delay liegt, dann...
        if(last_action < (currentMillis - delay)):
            #überschreiben des Wertes für die letzte Ausführung
            #mit dem aktuellen Wert
            last_action = currentMillis
            #Umkehren des Signales am Pin der LED
            led.toggle()

Seeed Studio - XIAO RP2040 - LED & Taster

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert