diff --git a/examples/ssd1325_gamma.py b/examples/ssd1325_gamma.py index cece7e1..cbdec89 100644 --- a/examples/ssd1325_gamma.py +++ b/examples/ssd1325_gamma.py @@ -1,18 +1,16 @@ import time import board -import busio import displayio import adafruit_ssd1325 displayio.release_displays() -# This pinout works on a Metro and may need to be altered for other boards. -spi = busio.SPI(board.SCL, board.SDA) -tft_cs = board.D9 -tft_dc = board.D8 -tft_reset = board.D7 +spi = board.SPI() +oled_cs = board.D5 +oled_dc = board.D6 +oled_reset = board.D9 -display_bus = displayio.FourWire(spi, command=tft_dc, chip_select=tft_cs, reset=tft_reset, +display_bus = displayio.FourWire(spi, command=oled_dc, chip_select=oled_cs, reset=oled_reset, baudrate=1000000) time.sleep(1) display = adafruit_ssd1325.SSD1325(display_bus, width=128, height=64) diff --git a/examples/ssd1325_simpletest.py b/examples/ssd1325_simpletest.py index 0f13072..60fe00a 100644 --- a/examples/ssd1325_simpletest.py +++ b/examples/ssd1325_simpletest.py @@ -1,18 +1,64 @@ -import time +""" +This test will initialize the display using displayio and draw a solid white +background, a smaller black rectangle, and some white text. +""" + import board -import busio import displayio +import terminalio +from adafruit_display_text import label import adafruit_ssd1325 displayio.release_displays() -# This pinout works on a Metro and may need to be altered for other boards. -spi = busio.SPI(board.SCL, board.SDA) -tft_cs = board.D9 -tft_dc = board.D8 -tft_reset = board.D7 +# Use for SPI +spi = board.SPI() +oled_cs = board.D5 +oled_dc = board.D6 +display_bus = displayio.FourWire(spi, command=oled_dc, chip_select=oled_cs, + baudrate=1000000, reset=board.D9) + +# Use for I2C +# i2c = board.I2C() +# display_bus = displayio.I2CDisplay(i2c, device_address=0x3c) + +WIDTH = 128 +HEIGHT = 64 +BORDER = 8 +FONTSCALE = 1 + +display = adafruit_ssd1325.SSD1325(display_bus, width=WIDTH, height=HEIGHT) + +# Make the display context +splash = displayio.Group(max_size=10) +display.show(splash) + +color_bitmap = displayio.Bitmap(display.width, display.height, 1) +color_palette = displayio.Palette(1) +color_palette[0] = 0x888888 # White + +bg_sprite = displayio.TileGrid(color_bitmap, + pixel_shader=color_palette, + x=0, y=0) +splash.append(bg_sprite) + +# Draw a smaller inner rectangle +inner_bitmap = displayio.Bitmap(display.width - BORDER * 2, display.height - BORDER * 2, 1) +inner_palette = displayio.Palette(1) +inner_palette[0] = 0x000000 # Black +inner_sprite = displayio.TileGrid(inner_bitmap, + pixel_shader=inner_palette, + x=BORDER, y=BORDER) +splash.append(inner_sprite) + +# Draw a label +text = "Hello World!" +text_area = label.Label(terminalio.FONT, text=text, color=0xFFFFFF) +text_width = text_area.bounding_box[2] * FONTSCALE +text_group = displayio.Group(max_size=10, scale=FONTSCALE, x=display.width // 2 - text_width // 2, + y=display.height // 2) +text_group.append(text_area) # Subgroup for text scaling +splash.append(text_group) -display_bus = displayio.FourWire(spi, command=tft_dc, chip_select=tft_cs, reset=tft_reset, - baudrate=1000000) -time.sleep(1) -display = adafruit_ssd1325.SSD1325(display_bus, width=128, height=64) +while True: + pass