Table of Contents

Class Ssd1680

Namespace
Iot.Device.EPaper.Drivers.Ssd168x.Ssd1680
Assembly
Iot.Device.ePaper.dll

A driver class for the SSD1680 display controller.

public sealed class Ssd1680 : Ssd168x, IEPaperDisplay
Inheritance
Ssd1680
Implements
Inherited Members

Constructors

Ssd1680(SpiDevice, int, int, int, int, int, GpioController, bool, bool)

Initializes a new instance of the Ssd1680 class.

public Ssd1680(SpiDevice spiDevice, int resetPin, int busyPin, int dataCommandPin, int width, int height, GpioController gpioController = null, bool enableFramePaging = true, bool shouldDispose = true)

Parameters

spiDevice SpiDevice

The communication channel to the SSD1680-based dispay.

resetPin int

The reset GPIO pin. Passing an invalid pin number such as -1 will prevent this driver from opening the pin. Caller should handle hardware resets.

busyPin int

The busy GPIO pin.

dataCommandPin int

The data/command GPIO pin.

width int

The width of the display.

height int

The height of the display.

gpioController GpioController

The GpioController to use when initializing the pins.

enableFramePaging bool

Page the frame buffer and all operations to use less memory.

shouldDispose bool

true to dispose of the GpioController.

Remarks

For a 176x296 SSD1680 display, a full Frame requires about 6KB of RAM ((176 * 296) / 8). SSD1680 has 2 RAMs for B/W and Red pixel. This means to have a full frame in memory, you need about 12KB of RAM. If you can't guarantee 12KB to be available to the driver then enable paging by setting enableFramePaging to true. A page uses about 3KB (1.5KB for B/W and 1.5KB for Red).

Exceptions

ArgumentNullException

spiDevice is null.

ArgumentOutOfRangeException

Display width and height can't be less than 0 or greater than 176 and 296 respectively.

Properties

PagesPerFrame

Gets the number of pages in every frame buffer.

protected override int PagesPerFrame { get; }

Property Value

int