waveshare2in13v2: Add function to put controller to sleep

pull/42/head
Michael Hanselmann 4 years ago
parent 41b26497a9
commit f0dd1cdeab

@ -25,6 +25,7 @@ const (
driverOutputControl byte = 0x01
gateDrivingVoltageControl byte = 0x03
sourceDrivingVoltageControl byte = 0x04
deepSleepMode byte = 0x10
dataEntryModeSetting byte = 0x11
swReset byte = 0x12
masterActivation byte = 0x20
@ -301,6 +302,19 @@ func (d *Dev) String() string {
return fmt.Sprintf("epd.Dev{%s, %s, Height: %d, Width: %d}", d.c, d.dc, d.opts.Height, d.opts.Width)
}
// Sleep makes the controller enter deep sleep mode. It can be woken up by
// calling Init again.
func (d *Dev) Sleep() error {
eh := errorHandler{d: *d}
// Turn off DC/DC converter, clock, output load and MCU. RAM content is
// retained.
eh.sendCommand(deepSleepMode)
eh.sendData([]byte{0x01})
return eh.err
}
// Reset the hardware
func (d *Dev) reset() error {
eh := errorHandler{d: *d}

Loading…
Cancel
Save