epaper2in13v2: implement deep sleep

This commits defines sleep and wakeup methods to enter deep sleep
and wake from sleep mode. Only the feature has been tested, meaning,
calling sleep and wakeup in SLEEP_MODE_1.

During SLEEP_MODE1, RAM is still accessible and thus it is possible to
write new data but they won't show.
After wakeup, updating display will show the operations done during sleep
mode.

Signed-off-by: Pierre-Yves Kerbrat <pykerbrat@gmail.com>
pull/13/head
Pierre-Yves Kerbrat 2020-08-29 19:59:28 +02:00
rodzic df5f4a2b11
commit e0f33d9b98
1 zmienionych plików z 10 dodań i 2 usunięć

Wyświetl plik

@ -285,14 +285,22 @@ class EPD:
self.send_data(bytearray([color]))
self.update_display()
def sleep(self, mode):
def set_sleep_mode(self, mode):
self.sleep_mode = mode
def sleep(self):
print("Going into sleep %d" % self.sleep_mode)
self.wait_display()
self.send_command(DISPLAY_UPDATE_CONTROL_2, b'\xc3') #POWER OFF
self.send_command(MASTER_ACTIVATION)
self.send_command(DEEP_SLEEP_MODE, bytearray([mode])) #enter deep sleep
self.send_command(DEEP_SLEEP_MODE, bytearray([self.sleep_mode]))
sleep_ms(100)
self.rst(0)
def wakeup(self):
print("wakeup")
self.init()
### END OF FILE ###