diff options
| author | Daniel Thompson <daniel@redfelineninja.org.uk> | 2020-01-30 22:11:31 (GMT) |
|---|---|---|
| committer | Daniel Thompson <daniel@redfelineninja.org.uk> | 2020-01-30 22:11:31 (GMT) |
| commit | 0acbcc415bbc3ab5b80aeee23ce4258052d9ac2e (patch) | |
| tree | ca05741b92067b158965a49288b5c1920a1a9979 /wasp/boards | |
| parent | a34d65d7fdfbbaaa3e6484dfebe914378f478ca2 (diff) | |
wasp: Reorganise the board support
Diffstat (limited to 'wasp/boards')
| -rw-r--r-- | wasp/boards/dsd6/manifest.py | 0 | ||||
| -rw-r--r-- | wasp/boards/nitrogen/manifest.py | 0 | ||||
| -rw-r--r-- | wasp/boards/pinetime/manifest.py | 12 | ||||
| -rw-r--r-- | wasp/boards/pinetime/watch.py | 53 |
4 files changed, 65 insertions, 0 deletions
diff --git a/wasp/boards/dsd6/manifest.py b/wasp/boards/dsd6/manifest.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/wasp/boards/dsd6/manifest.py diff --git a/wasp/boards/nitrogen/manifest.py b/wasp/boards/nitrogen/manifest.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/wasp/boards/nitrogen/manifest.py diff --git a/wasp/boards/pinetime/manifest.py b/wasp/boards/pinetime/manifest.py new file mode 100644 index 0000000..22fd135 --- /dev/null +++ b/wasp/boards/pinetime/manifest.py @@ -0,0 +1,12 @@ +freeze('../..', + ( + 'boot.py', + 'demo.py', + 'drivers/battery.py', + 'drivers/signal.py', + 'drivers/st7789.py', + 'logo.py', + ), + opt=3 +) +freeze('.', 'watch.py', opt=3) diff --git a/wasp/boards/pinetime/watch.py b/wasp/boards/pinetime/watch.py new file mode 100644 index 0000000..730eebc --- /dev/null +++ b/wasp/boards/pinetime/watch.py @@ -0,0 +1,53 @@ +from machine import Pin +#from machine import Signal +from machine import SPI + +from drivers.battery import Battery +from drivers.signal import Signal +from drivers.st7789 import ST7789_SPI + +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("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) + +battery = Battery( + Pin('BATTERY', Pin.IN), + Signal(Pin('CHARGING', Pin.IN), invert=True), + Signal(Pin('USB_PWR', Pin.IN), invert=True)) |
