use setup_display.py instead of boot.py for display init

This commit is contained in:
foamyguy 2025-07-15 15:24:11 -05:00
parent e579992b2f
commit d1484a30b1
3 changed files with 27 additions and 22 deletions

View file

@ -1,21 +0,0 @@
# SPDX-FileCopyrightText: 2025 Tim Cocks for Adafruit Industries
#
# SPDX-License-Identifier: MIT
import supervisor
import displayio
import picodvi
import framebufferio
import board
displayio.release_displays()
fb = picodvi.Framebuffer(320, 240,
clk_dp=board.GP14, clk_dn=board.GP15,
red_dp=board.GP12, red_dn=board.GP13,
green_dp=board.GP18, green_dn=board.GP19,
blue_dp=board.GP16, blue_dn=board.GP17,
color_depth=8)
display = framebufferio.FramebufferDisplay(fb)
# set the display onto supervisor.runtime,
# so it will be available to code.py
supervisor.runtime.display = display

View file

@ -1,3 +1,4 @@
# SPDX-FileCopyrightText: 2025 Tim Cocks for Adafruit Industries
# SPDX-FileCopyrightText: 2023 Liz Clark for Adafruit Industries
# SPDX-FileCopyrightText: Adapted from Phil B.'s 16bit_hello Arduino Code
#
@ -12,6 +13,7 @@ import vectorio
import terminalio
import supervisor
import simpleio
from setup_display import setup_display
from adafruit_bitmap_font import bitmap_font
from adafruit_display_text import label, wrap_text_to_lines
from adafruit_display_shapes.rect import Rect
@ -20,7 +22,7 @@ from adafruit_display_shapes.roundrect import RoundRect
from adafruit_display_shapes.triangle import Triangle
from adafruit_display_shapes.line import Line
# see boot.py for display initialization
setup_display()
display = supervisor.runtime.display
bitmap = displayio.Bitmap(display.width, display.height, 3)

View file

@ -0,0 +1,24 @@
# SPDX-FileCopyrightText: 2025 Tim Cocks for Adafruit Industries
#
# SPDX-License-Identifier: MIT
import supervisor
import displayio
import picodvi
import framebufferio
import board
def setup_display():
# Skip if the display is already initialized
if supervisor.runtime.display is None:
displayio.release_displays()
fb = picodvi.Framebuffer(320, 240,
clk_dp=board.GP14, clk_dn=board.GP15,
red_dp=board.GP12, red_dn=board.GP13,
green_dp=board.GP18, green_dn=board.GP19,
blue_dp=board.GP16, blue_dn=board.GP17,
color_depth=8)
display = framebufferio.FramebufferDisplay(fb)
# set the display onto supervisor.runtime,
# so it will be available to code.py
supervisor.runtime.display = display