st7789_240x240_pitft_simpletest.py
1 """ 2 This test will initialize the display using displayio and draw a solid green 3 background, a smaller purple rectangle, and some yellow text. 4 5 Pinouts are for the 1.3" PiTFT and should be run in CPython. 6 """ 7 import board 8 import terminalio 9 import displayio 10 from adafruit_display_text import label 11 from adafruit_st7789 import ST7789 12 13 # Release any resources currently in use for the displays 14 displayio.release_displays() 15 16 spi = board.SPI() 17 tft_cs = board.CE0 18 tft_dc = board.D25 19 20 display_bus = displayio.FourWire(spi, command=tft_dc, chip_select=tft_cs) 21 22 display = ST7789(display_bus, width=240, height=240, rowstart=80, rotation=180) 23 24 # Make the display context 25 splash = displayio.Group(max_size=10) 26 display.show(splash) 27 28 color_bitmap = displayio.Bitmap(240, 240, 1) 29 color_palette = displayio.Palette(1) 30 color_palette[0] = 0x00FF00 # Bright Green 31 32 bg_sprite = displayio.TileGrid(color_bitmap, pixel_shader=color_palette, x=0, y=0) 33 splash.append(bg_sprite) 34 35 # Draw a smaller inner rectangle 36 inner_bitmap = displayio.Bitmap(200, 200, 1) 37 inner_palette = displayio.Palette(1) 38 inner_palette[0] = 0xAA0088 # Purple 39 inner_sprite = displayio.TileGrid(inner_bitmap, pixel_shader=inner_palette, x=20, y=20) 40 splash.append(inner_sprite) 41 42 # Draw a label 43 text_group = displayio.Group(max_size=10, scale=2, x=50, y=120) 44 text = "Hello World!" 45 text_area = label.Label(terminalio.FONT, text=text, color=0xFFFF00) 46 text_group.append(text_area) # Subgroup for text scaling 47 splash.append(text_group) 48 49 while True: 50 pass