Meadow.Foundation.Displays.Il0373
Il0373 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The IL0373 is a tri-color display controller for ePaper displays. Data is sent to the controller via SPI and supports partial screen updates.
The IL0373 is commonly paired with 1.54", 2.13" or 2.9" dual or tri-color ePaper displays of various resolutions.
Code Example
MicroGraphics graphics;
public override Task Initialize()
{
Resolver.Log.Info("Initialize ...");
var display = new Il0373(
spiBus: Device.CreateSpiBus(),
chipSelectPin: Device.Pins.D03,
dcPin: Device.Pins.D02,
resetPin: Device.Pins.D01,
busyPin: Device.Pins.D00,
width: 400,
height: 300);
graphics = new MicroGraphics(display);
return Task.CompletedTask;
}
public override Task Run()
{
//any color but black will show the ePaper alternate color
graphics.DrawRectangle(1, 1, 126, 32, Color.Black, false);
graphics.CurrentFont = new Font12x16();
graphics.DrawText(2, 2, "IL0373", Color.Black);
graphics.DrawText(2, 30, "Meadow F7", Color.Black);
graphics.Show();
return Task.CompletedTask;
}
Sample project(s) available on GitHub
Wiring Example
To control a ILI0373 from Meadow, connect the following:
IL0373 | Meadow Pin |
---|---|
BUSY | D15 |
RST | D14 |
DC | D13 |
CS | D12 |
CLK | SCK |
DIN | MOSI |
GND | GND |
3V3 | 3V3 |
If your display does not include any of the above pins, they can be omitted. Pass NULL
into the constructor for the missing pin(s).
Class Il0373
Represents an Il0373 ePaper color display 104x212, 2.13inch E-Ink three-color display, SPI interface
Assembly: EPaper.dll
View Source
public class Il0373 : EPaperTriColorBase, ISpiPeripheral, IDisposable, IPixelDisplay, IDisplay
Inheritance: System.Object
-> Meadow.Foundation.Displays.EPaperBase
Derived:
Meadow.Foundation.Displays.Epd2in13b
Implements:
Meadow.Hardware.ISpiPeripheral
, System.IDisposable
, Meadow.Peripherals.Displays.IPixelDisplay
, Meadow.Peripherals.Displays.IDisplay
Properties
IsBlackInverted
Is black inverted on this display
View Source
protected override bool IsBlackInverted { get; }
IsColorInverted
Is color inverted on this display
View Source
protected override bool IsColorInverted { get; }
Methods
Initialize()
Initialize the display
View Source
protected override void Initialize()
SetPartialWindow(byte[], byte[], int, int, int, int)
Set partial window for display updates
View Source
protected void SetPartialWindow(byte[] bufferBlack, byte[] bufferColor, int x, int y, int width, int height)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | bufferBlack | The buffer with black pixel data |
System.Byte[] | bufferColor | The buffer with color pixel data |
System.Int32 | x | The x start position in pixels |
System.Int32 | y | The y start position in pixels |
System.Int32 | width | The width to update in pixels |
System.Int32 | height | The height to update in pixels |
SetPartialWindowBlack(byte[], int, int, int, int)
Set partial window for display updates
View Source
protected void SetPartialWindowBlack(byte[] bufferBlack, int x, int y, int width, int height)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | bufferBlack | The buffer with black pixel data |
System.Int32 | x | The x start position in pixels |
System.Int32 | y | The y start position in pixels |
System.Int32 | width | The width to update in pixels |
System.Int32 | height | The height to update in pixels |
SetPartialWindowColor(byte[], int, int, int, int)
Set partial window for display updates
View Source
protected void SetPartialWindowColor(byte[] bufferColor, int x, int y, int width, int height)
Parameters
Type | Name | Description |
---|---|---|
System.Byte[] | bufferColor | The buffer with color pixel data |
System.Int32 | x | The x start position in pixels |
System.Int32 | y | The y start position in pixels |
System.Int32 | width | The width to update in pixels |
System.Int32 | height | The height to update in pixels |
Show(int, int, int, int)
Update a region of the display from the offscreen buffer
View Source
public override void Show(int left, int top, int right, int bottom)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | left | Left bounds in pixels |
System.Int32 | top | Top bounds in pixels |
System.Int32 | right | Right bounds in pixels |
System.Int32 | bottom | Bottom bounds in pixels |
Show()
Update the display from the offscreen buffer
View Source
public override void Show()
ClearFrame()
Clears the SRAM on the display controller Doesn't update the display
View Source
protected void ClearFrame()
DisplayFrame()
Display data from the display controller SRAM
View Source
public void DisplayFrame()
Sleep()
Set the display to sleep state
View Source
protected virtual void Sleep()
Implements
Meadow.Hardware.ISpiPeripheral
System.IDisposable
Meadow.Peripherals.Displays.IPixelDisplay
Meadow.Peripherals.Displays.IDisplay