diff options
| author | Daniel Thompson <daniel@redfelineninja.org.uk> | 2020-01-29 17:30:57 (GMT) |
|---|---|---|
| committer | Daniel Thompson <daniel@redfelineninja.org.uk> | 2020-01-29 17:30:57 (GMT) |
| commit | d3d98c8ffb1feded5b77c34f67aa1f2b4ae19a2e (patch) | |
| tree | 369153700d5a304366180844c5a1eff13a20521e /wasp | |
| parent | 564200757cce485ba9cb7b12d25c5c98b3fe6e26 (diff) | |
wasp: Re-enable REPL by default
The demo is still there but it needs to be activated by hand
(or the manifest can be updated to include main.py by default.
Diffstat (limited to 'wasp')
| -rw-r--r-- | wasp/boot.py | 6 | ||||
| -rw-r--r-- | wasp/demo.py | 8 | ||||
| -rw-r--r-- | wasp/pinetime.py | 54 |
3 files changed, 48 insertions, 20 deletions
diff --git a/wasp/boot.py b/wasp/boot.py new file mode 100644 index 0000000..79601e7 --- /dev/null +++ b/wasp/boot.py @@ -0,0 +1,6 @@ +import logo +import pinetime + +pinetime.display.rleblit(logo.pine64, fg=0xffff) + + diff --git a/wasp/demo.py b/wasp/demo.py index 1470ff5..b74d3e6 100644 --- a/wasp/demo.py +++ b/wasp/demo.py @@ -24,10 +24,6 @@ colors = ( 0xf81f, # magenta ) -# Let's keep this where we can find it if someone delivers ^C to the -# demo -tft = pinetime.st7789() - def run(): l = logo.pine64 i = 0 @@ -42,8 +38,8 @@ def run(): l = logo.micropython else: l = logo.pine64 - tft.fill(0) + pinetime.display.fill(0) - tft.rleblit(l, fg=c) + pinetime.display.rleblit(l, fg=c) time.sleep(2) gc.collect() diff --git a/wasp/pinetime.py b/wasp/pinetime.py index cdbb230..1a771aa 100644 --- a/wasp/pinetime.py +++ b/wasp/pinetime.py @@ -3,18 +3,44 @@ from machine import SPI from drivers.st7789 import ST7789_SPI -def st7789(): - spi = SPI(0) - # Mode 3, maximum clock speed! - spi.init(polarity=1, phase=1, baudrate=8000000) +class Display(ST7789_SPI): + def __init__(self): + spi = SPI(0) + # Mode 3, maximum clock speed! + spi.init(polarity=1, phase=1, baudrate=8000000) - # Configure the display - cs = Pin("SPI_SS2", Pin.OUT) - dc = Pin("P18", Pin.OUT) - rst = Pin("P26", Pin.OUT) - tft = ST7789_SPI(240, 240, spi, cs=cs, dc=dc, res=rst) - - # Bring up the backlight - bl = Pin("P22", Pin.OUT) - bl.off() # active low - return tft + # Configure the display + cs = Pin("DISP_CS", Pin.OUT) + dc = Pin("DISP_DC", Pin.OUT) + rst = Pin("DISP_RST", Pin.OUT) + + super().__init__(240, 240, spi, cs=cs, dc=dc, res=rst) + +class Backlight(object): + lo = Pin("BL_LO", Pin.OUT, value=0) + mid = Pin("BL_MID", Pin.OUT, value=1) + hi = Pin("BL_HI", Pin.OUT, value=1) + + def __init__(self, level=1): + self.set(level) + + def set(self, level): + hi = 1 + mid = 1 + lo = 1 + + if level >= 3: + hi = 0 + elif level == 2: + mid = 0 + elif level == 1: + lo = 0 + + self.hi(hi) + self.mid(mid) + self.lo(lo) + +backlight = Backlight(0) +display = Display() + +backlight.set(1) |
