single repo
This commit is contained in:
79
Pico_ePaper_Code/pythonNanoGui/demos/ePaper2in9_test_sync.py
Normal file
79
Pico_ePaper_Code/pythonNanoGui/demos/ePaper2in9_test_sync.py
Normal file
@@ -0,0 +1,79 @@
|
||||
# ePaper2in9_test_sync.py Demo of synchronous code on 2.9" EPD display
|
||||
|
||||
# Released under the MIT License (MIT). See LICENSE.
|
||||
# Copyright (c) 2020 Peter Hinch
|
||||
|
||||
# color_setup must set landcsape True, asyn False and must not set demo_mode
|
||||
|
||||
from math import pi, sin
|
||||
from color_setup import ssd
|
||||
from gui.core.writer import Writer
|
||||
from gui.core.nanogui import refresh
|
||||
from gui.core.fplot import CartesianGraph, Curve
|
||||
from gui.widgets.meter import Meter
|
||||
from gui.widgets.label import Label
|
||||
from gui.widgets.dial import Dial, Pointer
|
||||
|
||||
# Fonts
|
||||
import gui.fonts.arial10 as arial10
|
||||
import gui.fonts.freesans20 as large
|
||||
|
||||
wri = Writer(ssd, arial10, verbose=False)
|
||||
wri.set_clip(False, False, False)
|
||||
|
||||
wri_large = Writer(ssd, large, verbose=False)
|
||||
wri_large.set_clip(False, False, False)
|
||||
|
||||
# 296*128
|
||||
def graph():
|
||||
row, col, ht, wd = 5, 140, 75, 150
|
||||
def populate():
|
||||
x = -0.998
|
||||
while x < 1.01:
|
||||
z = 6 * pi * x
|
||||
y = sin(z) / z
|
||||
yield x, y
|
||||
x += 0.05
|
||||
|
||||
g = CartesianGraph(wri, row, col, height = ht, width = wd, bdcolor=False)
|
||||
curve2 = Curve(g, None, populate())
|
||||
Label(wri, row + ht + 5, col - 10, '-2.0 t: secs')
|
||||
Label(wri, row + ht + 5, col - 8 + int(wd//2), '0.0')
|
||||
Label(wri, row + ht + 5, col - 10 + wd, '2.0')
|
||||
|
||||
def compass():
|
||||
dial = Dial(wri, 5, 5, height = 75, ticks = 12, bdcolor=None,
|
||||
label='Direction', style = Dial.COMPASS)
|
||||
ptr = Pointer(dial)
|
||||
ptr.value(1 + 1j)
|
||||
|
||||
def meter():
|
||||
m = Meter(wri, 5, 100, height = 75, divisions = 4,
|
||||
label='Peak', style=Meter.BAR, legends=('0', '50', '100'))
|
||||
m.value(0.72)
|
||||
|
||||
def labels():
|
||||
row = 100
|
||||
col = 0
|
||||
Label(wri_large, row, col, 'Seismograph')
|
||||
col = 140
|
||||
Label(wri, row, col + 0, 'Event time')
|
||||
Label(wri, row, col + 60, '01:35', bdcolor=None)
|
||||
Label(wri, row, col + 95, 'UTC')
|
||||
row = 115
|
||||
Label(wri, row, col + 0, 'Event date')
|
||||
Label(wri, row, col + 60, '6th Jan 2021', bdcolor=None)
|
||||
|
||||
def main():
|
||||
refresh(ssd, True)
|
||||
graph()
|
||||
compass()
|
||||
meter()
|
||||
labels()
|
||||
ssd.wait_until_ready()
|
||||
refresh(ssd)
|
||||
print('Waiting for display update')
|
||||
ssd.wait_until_ready()
|
||||
|
||||
main()
|
||||
|
||||
Reference in New Issue
Block a user