Wer ohne Bibliothek programmieren will, kann den PBC+ wie einen Raspberry Pi Pico 2 behandeln, an den die folgenden Bauteile angeschlossen sind. Neben MicroPython und Arduino eignen sich deshalb auch das Pico SDK, PlatformIO, CircuitPython oder Rust.
Pinbelegung
| GPIO | Anschluss | Hinweis |
|---|---|---|
GP0 | Joystick Mitte | aktiv LOW, Pull-up |
GP1 | Joystick rechts | aktiv LOW, Pull-up |
GP2 | Joystick runter | aktiv LOW, Pull-up |
GP3 | Joystick links | aktiv LOW, Pull-up |
GP4 | Joystick hoch | aktiv LOW, Pull-up |
GP27 | Taste A | aktiv LOW, Pull-up |
GP28 | Taste B | aktiv LOW, Pull-up |
GP12 | LED grün | aktiv HIGH |
GP13 | LED gelb | aktiv HIGH |
GP14 | LED rot | aktiv HIGH |
GP11 | RGB-LED (SK6805) | WS2812-Protokoll, z. B. über PIO |
GP15 | Lautsprecher | PWM über Tiefpass (Slice 7, Kanal B) |
GP8 | Display DC | LOW = Befehl, HIGH = Daten |
GP9 | Display RST | LOW = Reset |
GP10 | Display CS | normaler GPIO, LOW = ausgewählt |
GP18 | Display SCK | SPI0 |
GP19 | Display MOSI | SPI0 |
GP26 | Hintergrundlicht | PWM |
GP20 | Sensor SDA | I2C0, Beschleunigungssensor STK8BA58 |
GP21 | Sensor SCL | I2C0 |
GP22 | Sensor INT | Interrupt-Ausgang des Sensors |
GP29 | Batteriespannung | ADC-Eingang 3, Teiler 1 : 3 |
Achtung: Die Pins des Pico 2 sind nicht die des PBC+. Die Standard-Pins des Pico 2 passen hier nicht: UART an GP0/GP1 sind zwei Joystick-Richtungen, I2C an GP4/GP5 träfe „Joystick hoch“, und an GP25 hängt keine LED. Immer die Nummern aus dieser Tabelle benutzen.
Display
ST7789 an SPI0, Modus 0 (CPOL = 0, CPHA = 0). Der Controller hat Speicher für 240 × 320 Pixel; sichtbar sind 240 × 280. Gut geeignet sind die Adafruit-Bibliothek für ST7789 oder TFT_eSPI – oder die fertige Buchbibliothek aus dem C-Handbuch.
Ton
Der Lautsprecher hängt über einen Tiefpass an GP15, Töne entstehen per PWM. Den Pin nicht lange auf HIGH lassen – es gibt keinen Hochpass.
I²C-Buchse
Die vierpolige JST-SH-Buchse (Rastermaß 1 mm, passend für STEMMA QT und Qwiic) hängt am selben I²C-Bus wie der Beschleunigungssensor.
| Pin | Signal | Hinweis |
|---|---|---|
| 1 | GND | |
| 2 | 3,3 V | Module müssen mit 3,3 V arbeiten |
| 3 | SDA | GP20, I2C0 |
| 4 | SCL | GP21, I2C0 |
Adresse 0x18 ist belegt: Dort sitzt der eingebaute Beschleunigungssensor. Ein Modul mit derselben I²C-Adresse funktioniert nur, wenn es sich umstellen lässt. Pull-up-Widerstände sind auf der Platine schon vorhanden.
USB
USB-C mit Full Speed (12 Mbit/s). Zwei Geräte lassen sich über D+, D− und GND koppeln; VBUS bleibt dabei getrennt, jedes Gerät versorgt sich selbst.
Mehr Details
- Hardware- und Portierungsreferenz – Display-Initialisierung, Ton, Flash-Aufteilung, die vier Verbindungsarten und alle bekannten Fallstricke
- Handbuch „Programmieren in C“ – Anhang D erklärt jedes Bauteil im Detail