Class Ssd1681
A driver class for the SSD1681 display controller.
public sealed class Ssd1681 : Ssd168x, IEPaperDisplay
- Inheritance
-
Ssd1681
- Implements
- Inherited Members
Constructors
Ssd1681(SpiDevice, int, int, int, int, int, GpioController, bool, bool)
Initializes a new instance of the Ssd1681 class.
public Ssd1681(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 SSD1681-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 200x200 SSD1681 display, a full Frame requires about 5KB of RAM ((200 * 200) / 8). SSD1681 has 2 RAMs for B/W and Red pixel.
This means to have a full frame in memory, you need about 10KB of RAM. If you can't guarantee 10KB to be available to the driver
then enable paging by setting enableFramePaging to true. A page uses about 2KB (1KB for B/W and 1KB for Red).
Exceptions
- ArgumentNullException
spiDeviceis null.- ArgumentOutOfRangeException
Display width and height can't be less than 0 or greater than 200.
Properties
PagesPerFrame
Gets the number of pages in every frame buffer.
protected override int PagesPerFrame { get; }