Meadow.Foundation.Displays.Ssd1351
Ssd1351 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The SSD1351 is a display controller used to drive 16bpp (RGB565) color OLED displays over SPI. These displays are commonly found with a resolution of 128x128.
Code Example
MicroGraphics graphics;
public override Task Initialize()
{
Resolver.Log.Info("Initializing ...");
var spiBus = Device.CreateSpiBus();
var display = new Ssd1351(
spiBus: spiBus,
chipSelectPin: Device.Pins.D02,
dcPin: Device.Pins.D01,
resetPin: Device.Pins.D00,
width: 128, height: 128);
graphics = new MicroGraphics(display)
{
CurrentFont = new Font8x12(),
IgnoreOutOfBoundsPixels = true
};
return base.Initialize();
}
public override Task Run()
{
graphics.Clear();
graphics.DrawCircle(80, 80, 40, Color.Cyan, false);
int indent = 0;
int spacing = 10;
int y = indent;
graphics.DrawText(indent, y, "Meadow F7 (SSD1351)");
graphics.DrawText(indent, y += spacing, "Red", Color.Red);
graphics.DrawText(indent, y += spacing, "Purple", Color.Purple);
graphics.DrawText(indent, y += spacing, "BlueViolet", Color.BlueViolet);
graphics.DrawText(indent, y += spacing, "Blue", Color.Blue);
graphics.DrawText(indent, y += spacing, "Cyan", Color.Cyan);
graphics.DrawText(indent, y += spacing, "LawnGreen", Color.LawnGreen);
graphics.DrawText(indent, y += spacing, "GreenYellow", Color.GreenYellow);
graphics.DrawText(indent, y += spacing, "Yellow", Color.Yellow);
graphics.DrawText(indent, y += spacing, "Orange", Color.Orange);
graphics.DrawText(indent, y += spacing, "Brown", Color.Brown);
graphics.Show();
return base.Run();
}
Sample project(s) available on GitHub
Wiring Example
To wire a Ssd1351 to your Meadow board, connect the following:
Ssd1351 | Meadow Pin |
---|---|
LED- | 3V3 |
LED+ | GND |
MOSI | COPI |
SCK | SCK |
RESET | D15 |
A0 | D14 |
CS | D13 |
VCC | 3V3 |
GND | GND |
It should look like the following diagram:
Class Ssd1351
Represents a Ssd1351 TFT color display
Assembly: TftSpi.dll
View Source
Declaration
public class Ssd1351 : TftSpiBase, IPixelDisplay, IDisplay, ISpiPeripheral, IDisposable
Inheritance: System.Object
-> Meadow.Foundation.Displays.TftSpiBase
Implements:
Meadow.Peripherals.Displays.IPixelDisplay
, Meadow.Peripherals.Displays.IDisplay
, Meadow.Hardware.ISpiPeripheral
, System.IDisposable
Properties
DefaultColorMode
The default display color mode
View Source
Declaration
public override ColorMode DefaultColorMode { get; }
SupportedColorModes
The color modes supported by the display
View Source
Declaration
public override ColorMode SupportedColorModes { get; }
Methods
Initialize()
Initialize the display
View Source
Declaration
protected override void Initialize()
SetAddressWindow(int, int, int, int)
Set address window to update
View Source
Declaration
protected override void SetAddressWindow(int x0, int y0, int x1, int y1)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | x0 | Start x position in pixels |
System.Int32 | y0 | End x position in pixels |
System.Int32 | x1 | Start y position in pixels |
System.Int32 | y1 | End y position in pixels |
InvertDisplay(bool)
Invert the display
View Source
Declaration
public void InvertDisplay(bool invert)
Parameters
Type | Name |
---|---|
System.Boolean | invert |
Implements
Meadow.Peripherals.Displays.IPixelDisplay
Meadow.Peripherals.Displays.IDisplay
Meadow.Hardware.ISpiPeripheral
System.IDisposable