Class Ssd1680
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
spiDeviceSpiDeviceThe communication channel to the SSD1680-based dispay.
resetPinintThe reset GPIO pin. Passing an invalid pin number such as -1 will prevent this driver from opening the pin. Caller should handle hardware resets.
busyPinintThe busy GPIO pin.
dataCommandPinintThe data/command GPIO pin.
widthintThe width of the display.
heightintThe height of the display.
gpioControllerGpioControllerThe GpioController to use when initializing the pins.
enableFramePagingboolPage the frame buffer and all operations to use less memory.
shouldDisposebooltrue 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
spiDeviceis 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; }