Display - PicoBoy Color
technische Daten wie beim RPi Pico
MC RP2040 - 1,69 Zoll Farbdisplay mit 240 x 280 Pixeln
Projekte und Anleitung in CircuitPython 9.x.x
Bildbox 1 (klick hier)
Display - PicoBoy Color
technische Daten wie beim RPi Pico
MC RP2040 - 1,69 Zoll Farbdisplay mit 240 x 280 Pixeln
Projekte und Anleitung in CircuitPython 9.x.x
Bildbox 1 (klick hier)
Als Erstes nehme ich das Display im Querformat (d.h. Breite 280, Höhe 240 Pixel) in Betrieb.
Los gehts
Display:
Das 1,69 Zoll Farbdisplay mit 240 x 280 Pixeln bei einer Farbtiefe von 16 Bit arbeitet mit einem ST7789 Treiber. Folgende GPIO's werden genutzt:
DC - GPIO 8
Reset - GPIO 9
CS - GPIO 10
SCK - GPIO 18
MOSI - GPIO 19
Backlight - GPIO 26
In CircuitPython kann dann das Display so initialisiert werden:
Zunächst installieren Sie die aktuelle Firmware von 'CircuitPython' auf dem PicoBoy. Für Anfänger gibt es
hier eine Anleitung dazu (ab Los gehts).
Außerdem downloaden Sie das
adafruit-libraries-bundle (passend zur
Firmware-Version! z.Z. 9.x.x) und entpacken es auf Ihrem Rechner. Aus dem Ordner 'lib' kopieren Sie 'adafruit_display_text
' und den Treiber 'adafruit_st7789_mpy' (ziemlich weit unten) in den 'lib-Ordner' auf dem
PicoBoy Board.
Das müssen Sie nur beim ersten Mal tun und später ggf. nur neu hinzukommende Treiber ergänzen. Im Programm unten sehen Sie, dass die Bibliotheken
in den Zeilen 5 und 6 importiert werden. Sie können den Quellcode aus dem unteren Kasten jetzt in die Thonny IDE kopieren, speichern und starten. Wenn alles passt,
'sagt' das Display "it works".
1 import board 2 import busio 3 import displayio 4 import terminalio 5 from adafruit_st7789 import ST7789 6 from adafruit_display_text import label 7 8 # 1,69 Zoll 240x280 Pixel ST7789 Display 9 dc=board.GP8 10 reset=board.GP9 11 cs=board.GP10 12 sck=board.GP18 13 mosi=board.GP19 14 bl=board.GP26 15 # Release any resources currently in use for the displays 16 displayio.release_displays() 17 spi = busio.SPI(sck, mosi) 18 display_bus = displayio.FourWire(spi, command=dc, chip_select=cs, reset=reset) 19 display = ST7789(display_bus, rotation=270, width=280, height=240, backlight_pin=bl, rowstart=20, colstart=0) 20 display.brightness = 1 21 # set the Group class root 22 root = displayio.Group() 23 24 ## Draw a label 25 updating_label1 = label.Label(font=terminalio.FONT, scale=3, color=0xffff00, line_spacing=1) 26 updating_label1.anchor_point = (0, 0) 27 updating_label1.anchored_position = (45, 100) 28 updating_label1.text ="it works" 29 # append the label to the Group class 30 root.append(updating_label1) 31 32 # Switches to displaying the given group of layers 33 display.root_group = root