Remarks
St7735 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The ST7735 is a display controller used to drive color displays over SPI using 12, 16 or 18 bbp. These displays require a backlight. These displays are commonly found with a resolution of 128x160.
The Meadow.Foundation ST7735 driver currently only supports 16bpp RGB565.
Code Example
MicroGraphics graphics;
public override Task Initialize()
{
Resolver.Log.Info("Initializing ...");
var spiBus = Device.CreateSpiBus(St7735.DefaultSpiBusSpeed);
//note - you may need to adjust the DisplayType for your specific St7735
var display = new St7735(
spiBus: spiBus,
chipSelectPin: Device.Pins.D02,
dcPin: Device.Pins.D01,
resetPin: Device.Pins.D00,
width: 128,
height: 160,
St7735.DisplayType.ST7735R);
graphics = new MicroGraphics(display);
return base.Initialize();
}
public override Task Run()
{
graphics.Clear();
graphics.DrawCircle(60, 60, 20, Color.Purple);
graphics.DrawRectangle(10, 10, 30, 60, Color.Red);
graphics.DrawTriangle(20, 20, 10, 70, 60, 60, Color.Green);
graphics.DrawCircle(90, 60, 20, Color.Cyan, true);
graphics.DrawRectangle(100, 100, 30, 10, Color.Yellow, true);
graphics.DrawTriangle(120, 20, 110, 70, 160, 60, Color.Pink, true);
graphics.DrawLine(10, 120, 110, 130, Color.SlateGray);
graphics.Show();
return base.Run();
}
Sample project(s) available on GitHub
Wiring Example
To wire a ST7735 to your Meadow board, connect the following:
ST7735 | 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 St7735 : TftSpiBase, IGraphicsDisplay
Constructors
St7735(ISpiBus, IDigitalOutputPort, IDigitalOutputPort, IDigitalOutputPort, Int32, Int32, St7735.DisplayType, ColorMode)
Create a new St7735 color display object
Declaration
public St7735(ISpiBus spiBus, IDigitalOutputPort chipSelectPort, IDigitalOutputPort dataCommandPort, IDigitalOutputPort resetPort, int width, int height, St7735.DisplayType displayType = St7735.DisplayType.ST7735R, ColorMode colorMode = default(ColorMode))
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 |
System.Int32 | width | Width of display in pixels |
System.Int32 | height | Height of display in pixels |
St7735.DisplayType | displayType | The St7735 display types (displays vary from manufacturer and screen size) |
ColorMode | colorMode | The color mode to use for the display buffer |
St7735(ISpiBus, IPin, IPin, IPin, Int32, Int32, St7735.DisplayType, ColorMode)
Create a new St7735 color display object
Declaration
public St7735(ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin, int width, int height, St7735.DisplayType displayType = St7735.DisplayType.ST7735R, ColorMode colorMode = default(ColorMode))
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 |
System.Int32 | width | Width of display in pixels |
System.Int32 | height | Height of display in pixels |
St7735.DisplayType | displayType | The St7735 display types (displays vary from manufacturer and screen size) |
ColorMode | colorMode | The color mode to use for the display buffer |
Fields
DefaultSpiBusSpeed
The default SPI bus frequency
Declaration
public static Frequency DefaultSpiBusSpeed
Field Value
Type | Description |
---|---|
Frequency |
Properties
DefautColorMode
The default display color mode
Declaration
public override ColorMode DefautColorMode { get; }
Property Value
Type | Description |
---|---|
ColorMode |
Overrides
SupportedColorModes
The color modes supported by the display
Declaration
public override ColorMode SupportedColorModes { get; }
Property Value
Type | Description |
---|---|
ColorMode |
Overrides
Methods
Initialize()
Initalize the display
Declaration
protected override void Initialize()
Overrides
SetAddressWindow(Int32, Int32, Int32, Int32)
Set addrees window for display updates
Declaration
protected override void SetAddressWindow(int x0, int y0, int x1, int y1)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | x0 | X start in pixels |
System.Int32 | y0 | Y start in pixels |
System.Int32 | x1 | X end in pixels |
System.Int32 | y1 | Y end in pixels |