Remarks
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, Meadow.Foundation.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", Meadow.Foundation.Color.Red);
graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.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 | MOSI |
SCK | SCK |
RESET | D15 |
A0 | D14 |
CS | D13 |
VCC | 3V3 |
GND | GND |
It should look like the following diagram:
Syntax
public class Ssd1351 : TftSpiBase, IGraphicsDisplay, ISpiPeripheral, IDisposable
Constructors
Ssd1351(ISpiBus, IDigitalOutputPort, IDigitalOutputPort, IDigitalOutputPort, int, int)
Create a new Ssd1351 color display object
Declaration
public Ssd1351(ISpiBus spiBus, IDigitalOutputPort chipSelectPort, IDigitalOutputPort dataCommandPort, IDigitalOutputPort resetPort, int width, int height)
Parameters
Type | Name | Description |
---|---|---|
ISpiBus | spiBus | SPI bus connected to display |
IDigitalOutputPort | chipSelectPort | Chip select output port |
IDigitalOutputPort | dataCommandPort | Data command output port |
IDigitalOutputPort | resetPort | Reset output port |
int | width | Width of display in pixels |
int | height | Height of display in pixels |
Remarks
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, Meadow.Foundation.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", Meadow.Foundation.Color.Red);
graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.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 | MOSI |
SCK | SCK |
RESET | D15 |
A0 | D14 |
CS | D13 |
VCC | 3V3 |
GND | GND |
It should look like the following diagram:
Ssd1351(ISpiBus, IPin, IPin, IPin, int, int)
Create a new Ssd1351 color display object
Declaration
public Ssd1351(ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin, int width, int height)
Parameters
Type | Name | Description |
---|---|---|
ISpiBus | spiBus | SPI bus connected to display |
IPin | chipSelectPin | Chip select pin |
IPin | dcPin | Data command pin |
IPin | resetPin | Reset pin |
int | width | Width of display in pixels |
int | height | Height of display in pixels |
Remarks
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, Meadow.Foundation.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", Meadow.Foundation.Color.Red);
graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.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 | MOSI |
SCK | SCK |
RESET | D15 |
A0 | D14 |
CS | D13 |
VCC | 3V3 |
GND | GND |
It should look like the following diagram:
Properties
DefaultColorMode
The default display color mode
Declaration
public override ColorMode DefaultColorMode { get; }
Property Value
Type | Description |
---|---|
ColorMode |
Overrides
Remarks
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, Meadow.Foundation.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", Meadow.Foundation.Color.Red);
graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.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 | MOSI |
SCK | SCK |
RESET | D15 |
A0 | D14 |
CS | D13 |
VCC | 3V3 |
GND | GND |
It should look like the following diagram:
SupportedColorModes
The color modes supported by the display
Declaration
public override ColorMode SupportedColorModes { get; }
Property Value
Type | Description |
---|---|
ColorMode |
Overrides
Remarks
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, Meadow.Foundation.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", Meadow.Foundation.Color.Red);
graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.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 | MOSI |
SCK | SCK |
RESET | D15 |
A0 | D14 |
CS | D13 |
VCC | 3V3 |
GND | GND |
It should look like the following diagram:
Methods
Initialize()
Initialize the display
Declaration
protected override void Initialize()
Overrides
Remarks
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, Meadow.Foundation.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", Meadow.Foundation.Color.Red);
graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.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 | MOSI |
SCK | SCK |
RESET | D15 |
A0 | D14 |
CS | D13 |
VCC | 3V3 |
GND | GND |
It should look like the following diagram:
InvertDisplay(bool)
Invert the display
Declaration
public void InvertDisplay(bool invert)
Parameters
Type | Name | Description |
---|---|---|
bool | invert |
Remarks
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, Meadow.Foundation.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", Meadow.Foundation.Color.Red);
graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.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 | MOSI |
SCK | SCK |
RESET | D15 |
A0 | D14 |
CS | D13 |
VCC | 3V3 |
GND | GND |
It should look like the following diagram:
SetAddressWindow(int, int, int, int)
Set address window to update
Declaration
protected override void SetAddressWindow(int x0, int y0, int x1, int y1)
Parameters
Type | Name | Description |
---|---|---|
int | x0 | Start x position in pixels |
int | y0 | End x position in pixels |
int | x1 | Start y position in pixels |
int | y1 | End y position in pixels |
Overrides
Remarks
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, Meadow.Foundation.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", Meadow.Foundation.Color.Red);
graphics.DrawText(indent, y += spacing, "Purple", Meadow.Foundation.Color.Purple);
graphics.DrawText(indent, y += spacing, "BlueViolet", Meadow.Foundation.Color.BlueViolet);
graphics.DrawText(indent, y += spacing, "Blue", Meadow.Foundation.Color.Blue);
graphics.DrawText(indent, y += spacing, "Cyan", Meadow.Foundation.Color.Cyan);
graphics.DrawText(indent, y += spacing, "LawnGreen", Meadow.Foundation.Color.LawnGreen);
graphics.DrawText(indent, y += spacing, "GreenYellow", Meadow.Foundation.Color.GreenYellow);
graphics.DrawText(indent, y += spacing, "Yellow", Meadow.Foundation.Color.Yellow);
graphics.DrawText(indent, y += spacing, "Orange", Meadow.Foundation.Color.Orange);
graphics.DrawText(indent, y += spacing, "Brown", Meadow.Foundation.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 | MOSI |
SCK | SCK |
RESET | D15 |
A0 | D14 |
CS | D13 |
VCC | 3V3 |
GND | GND |
It should look like the following diagram: