Added initial display implementation
This commit is contained in:
parent
e47c2babe1
commit
06df87ee19
|
@ -5,7 +5,13 @@ import adafruit_datetime as datetime
|
|||
from adafruit_seesaw import seesaw, rotaryio, digitalio
|
||||
from adafruit_debouncer import Button
|
||||
import busio
|
||||
import displayio
|
||||
import terminalio
|
||||
import adafruit_displayio_ssd1306
|
||||
from adafruit_display_text import label
|
||||
|
||||
# Release displays so thonny doesn't block the i2c setup
|
||||
displayio.release_displays()
|
||||
|
||||
####
|
||||
# i2c bus setup
|
||||
|
@ -34,6 +40,32 @@ last_position = -1
|
|||
####
|
||||
|
||||
|
||||
####
|
||||
# Display setup
|
||||
try:
|
||||
display_bus = displayio.I2CDisplay(i2c, device_address=60)
|
||||
display = adafruit_displayio_ssd1306.SSD1306(display_bus, width=128, height=32)
|
||||
except:
|
||||
print("Unable to initialize display.")
|
||||
|
||||
text = "HELLO WORLD"
|
||||
font = terminalio.FONT
|
||||
color = 0xFFFFFF
|
||||
|
||||
text_area = label.Label(font, text=text, color=color)
|
||||
|
||||
text_area.x = 1
|
||||
text_area.y = 12
|
||||
|
||||
try:
|
||||
display.show(text_area)
|
||||
except:
|
||||
pass
|
||||
|
||||
# END Display setup
|
||||
####
|
||||
|
||||
|
||||
####
|
||||
# Neopixel setup
|
||||
|
||||
|
@ -231,8 +263,7 @@ def countdown(
|
|||
current_time -= update_interval
|
||||
|
||||
# Give the user feedback
|
||||
# (this string will eventually go to a ssd1306 OLED display via
|
||||
# displayio, but just put it on the terminal output for now)
|
||||
text_area.text = prettytime(current_time)
|
||||
print("current time: " + prettytime(current_time))
|
||||
|
||||
# Update the debouncer
|
||||
|
@ -277,6 +308,7 @@ while True:
|
|||
# Update the position tracker
|
||||
last_position = position
|
||||
# User feedback
|
||||
text_area.text = prettytime(set_time)
|
||||
print("Current set time: " + prettytime(set_time))
|
||||
|
||||
# Reset timer to config value on long press
|
||||
|
|
Loading…
Reference in New Issue