Remarks
Ili9341 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The ILI9341 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 320x240.
The Meadow.Foundation ILI9341 driver currently only supports 16bpp RGB565.
Code Example
MicroGraphics graphics;
Ili9341 display;
public override Task Initialize()
{
Resolver.Log.Info("Initializing ...");
Resolver.Log.Info("Create display driver instance");
display = new Ili9341
(
spiBus: Device.CreateSpiBus(),
chipSelectPin: Device.Pins.D13,
dcPin: Device.Pins.D14,
resetPin: Device.Pins.D15,
width: 240, height: 320
);
graphics = new MicroGraphics(display)
{
IgnoreOutOfBoundsPixels = true,
CurrentFont = new Font12x16()
};
return base.Initialize();
}
public override Task Run()
{
graphics.Clear();
graphics.DrawTriangle(10, 30, 50, 50, 10, 50, Meadow.Foundation.Color.Red);
graphics.DrawRectangle(20, 45, 40, 20, Meadow.Foundation.Color.Yellow, false);
graphics.DrawCircle(50, 50, 40, Meadow.Foundation.Color.Blue, false);
graphics.DrawText(5, 5, "Meadow F7", Meadow.Foundation.Color.White);
graphics.Show();
DisplayTest();
return base.Run();
}
Sample project(s) available on GitHub
Wiring Example
To wire a ILI9341 to your Meadow board, connect the following:
ILI9341 | 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 Ili9341 : TftSpiBase, IGraphicsDisplay, ISpiPeripheral, IDisposable, IRotatableDisplay
Constructors
Ili9341(ISpiBus, IDigitalOutputPort, IDigitalOutputPort, IDigitalOutputPort, int, int, ColorMode)
Create a new Ili9341 color display object
Declaration
public Ili9341(ISpiBus spiBus, IDigitalOutputPort chipSelectPort, IDigitalOutputPort dataCommandPort, IDigitalOutputPort resetPort, int width, int height, ColorMode colorMode = ColorMode.Format12bppRgb444)
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 |
ColorMode | colorMode | The color mode to use for the display buffer |
Remarks
Ili9341 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The ILI9341 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 320x240.
The Meadow.Foundation ILI9341 driver currently only supports 16bpp RGB565.
Code Example
MicroGraphics graphics;
Ili9341 display;
public override Task Initialize()
{
Resolver.Log.Info("Initializing ...");
Resolver.Log.Info("Create display driver instance");
display = new Ili9341
(
spiBus: Device.CreateSpiBus(),
chipSelectPin: Device.Pins.D13,
dcPin: Device.Pins.D14,
resetPin: Device.Pins.D15,
width: 240, height: 320
);
graphics = new MicroGraphics(display)
{
IgnoreOutOfBoundsPixels = true,
CurrentFont = new Font12x16()
};
return base.Initialize();
}
public override Task Run()
{
graphics.Clear();
graphics.DrawTriangle(10, 30, 50, 50, 10, 50, Meadow.Foundation.Color.Red);
graphics.DrawRectangle(20, 45, 40, 20, Meadow.Foundation.Color.Yellow, false);
graphics.DrawCircle(50, 50, 40, Meadow.Foundation.Color.Blue, false);
graphics.DrawText(5, 5, "Meadow F7", Meadow.Foundation.Color.White);
graphics.Show();
DisplayTest();
return base.Run();
}
Sample project(s) available on GitHub
Wiring Example
To wire a ILI9341 to your Meadow board, connect the following:
ILI9341 | 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:
Ili9341(ISpiBus, IPin, IPin, IPin, int, int, ColorMode)
Create a new Ili9341 color display object
Declaration
public Ili9341(ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin, int width, int height, ColorMode colorMode = ColorMode.Format12bppRgb444)
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 |
ColorMode | colorMode | The color mode to use for the display buffer |
Remarks
Ili9341 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The ILI9341 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 320x240.
The Meadow.Foundation ILI9341 driver currently only supports 16bpp RGB565.
Code Example
MicroGraphics graphics;
Ili9341 display;
public override Task Initialize()
{
Resolver.Log.Info("Initializing ...");
Resolver.Log.Info("Create display driver instance");
display = new Ili9341
(
spiBus: Device.CreateSpiBus(),
chipSelectPin: Device.Pins.D13,
dcPin: Device.Pins.D14,
resetPin: Device.Pins.D15,
width: 240, height: 320
);
graphics = new MicroGraphics(display)
{
IgnoreOutOfBoundsPixels = true,
CurrentFont = new Font12x16()
};
return base.Initialize();
}
public override Task Run()
{
graphics.Clear();
graphics.DrawTriangle(10, 30, 50, 50, 10, 50, Meadow.Foundation.Color.Red);
graphics.DrawRectangle(20, 45, 40, 20, Meadow.Foundation.Color.Yellow, false);
graphics.DrawCircle(50, 50, 40, Meadow.Foundation.Color.Blue, false);
graphics.DrawText(5, 5, "Meadow F7", Meadow.Foundation.Color.White);
graphics.Show();
DisplayTest();
return base.Run();
}
Sample project(s) available on GitHub
Wiring Example
To wire a ILI9341 to your Meadow board, connect the following:
ILI9341 | 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
Ili9341 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The ILI9341 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 320x240.
The Meadow.Foundation ILI9341 driver currently only supports 16bpp RGB565.
Code Example
MicroGraphics graphics;
Ili9341 display;
public override Task Initialize()
{
Resolver.Log.Info("Initializing ...");
Resolver.Log.Info("Create display driver instance");
display = new Ili9341
(
spiBus: Device.CreateSpiBus(),
chipSelectPin: Device.Pins.D13,
dcPin: Device.Pins.D14,
resetPin: Device.Pins.D15,
width: 240, height: 320
);
graphics = new MicroGraphics(display)
{
IgnoreOutOfBoundsPixels = true,
CurrentFont = new Font12x16()
};
return base.Initialize();
}
public override Task Run()
{
graphics.Clear();
graphics.DrawTriangle(10, 30, 50, 50, 10, 50, Meadow.Foundation.Color.Red);
graphics.DrawRectangle(20, 45, 40, 20, Meadow.Foundation.Color.Yellow, false);
graphics.DrawCircle(50, 50, 40, Meadow.Foundation.Color.Blue, false);
graphics.DrawText(5, 5, "Meadow F7", Meadow.Foundation.Color.White);
graphics.Show();
DisplayTest();
return base.Run();
}
Sample project(s) available on GitHub
Wiring Example
To wire a ILI9341 to your Meadow board, connect the following:
ILI9341 | 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:
DefaultSpiBusSpeed
SPI bus speed
Declaration
public override Frequency DefaultSpiBusSpeed { get; }
Property Value
Type | Description |
---|---|
Frequency |
Overrides
Remarks
Ili9341 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The ILI9341 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 320x240.
The Meadow.Foundation ILI9341 driver currently only supports 16bpp RGB565.
Code Example
MicroGraphics graphics;
Ili9341 display;
public override Task Initialize()
{
Resolver.Log.Info("Initializing ...");
Resolver.Log.Info("Create display driver instance");
display = new Ili9341
(
spiBus: Device.CreateSpiBus(),
chipSelectPin: Device.Pins.D13,
dcPin: Device.Pins.D14,
resetPin: Device.Pins.D15,
width: 240, height: 320
);
graphics = new MicroGraphics(display)
{
IgnoreOutOfBoundsPixels = true,
CurrentFont = new Font12x16()
};
return base.Initialize();
}
public override Task Run()
{
graphics.Clear();
graphics.DrawTriangle(10, 30, 50, 50, 10, 50, Meadow.Foundation.Color.Red);
graphics.DrawRectangle(20, 45, 40, 20, Meadow.Foundation.Color.Yellow, false);
graphics.DrawCircle(50, 50, 40, Meadow.Foundation.Color.Blue, false);
graphics.DrawText(5, 5, "Meadow F7", Meadow.Foundation.Color.White);
graphics.Show();
DisplayTest();
return base.Run();
}
Sample project(s) available on GitHub
Wiring Example
To wire a ILI9341 to your Meadow board, connect the following:
ILI9341 | 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
Ili9341 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The ILI9341 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 320x240.
The Meadow.Foundation ILI9341 driver currently only supports 16bpp RGB565.
Code Example
MicroGraphics graphics;
Ili9341 display;
public override Task Initialize()
{
Resolver.Log.Info("Initializing ...");
Resolver.Log.Info("Create display driver instance");
display = new Ili9341
(
spiBus: Device.CreateSpiBus(),
chipSelectPin: Device.Pins.D13,
dcPin: Device.Pins.D14,
resetPin: Device.Pins.D15,
width: 240, height: 320
);
graphics = new MicroGraphics(display)
{
IgnoreOutOfBoundsPixels = true,
CurrentFont = new Font12x16()
};
return base.Initialize();
}
public override Task Run()
{
graphics.Clear();
graphics.DrawTriangle(10, 30, 50, 50, 10, 50, Meadow.Foundation.Color.Red);
graphics.DrawRectangle(20, 45, 40, 20, Meadow.Foundation.Color.Yellow, false);
graphics.DrawCircle(50, 50, 40, Meadow.Foundation.Color.Blue, false);
graphics.DrawText(5, 5, "Meadow F7", Meadow.Foundation.Color.White);
graphics.Show();
DisplayTest();
return base.Run();
}
Sample project(s) available on GitHub
Wiring Example
To wire a ILI9341 to your Meadow board, connect the following:
ILI9341 | 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
Ili9341 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The ILI9341 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 320x240.
The Meadow.Foundation ILI9341 driver currently only supports 16bpp RGB565.
Code Example
MicroGraphics graphics;
Ili9341 display;
public override Task Initialize()
{
Resolver.Log.Info("Initializing ...");
Resolver.Log.Info("Create display driver instance");
display = new Ili9341
(
spiBus: Device.CreateSpiBus(),
chipSelectPin: Device.Pins.D13,
dcPin: Device.Pins.D14,
resetPin: Device.Pins.D15,
width: 240, height: 320
);
graphics = new MicroGraphics(display)
{
IgnoreOutOfBoundsPixels = true,
CurrentFont = new Font12x16()
};
return base.Initialize();
}
public override Task Run()
{
graphics.Clear();
graphics.DrawTriangle(10, 30, 50, 50, 10, 50, Meadow.Foundation.Color.Red);
graphics.DrawRectangle(20, 45, 40, 20, Meadow.Foundation.Color.Yellow, false);
graphics.DrawCircle(50, 50, 40, Meadow.Foundation.Color.Blue, false);
graphics.DrawText(5, 5, "Meadow F7", Meadow.Foundation.Color.White);
graphics.Show();
DisplayTest();
return base.Run();
}
Sample project(s) available on GitHub
Wiring Example
To wire a ILI9341 to your Meadow board, connect the following:
ILI9341 | 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:
SetRotation(RotationType)
Set the display rotation
Declaration
public void SetRotation(RotationType rotation)
Parameters
Type | Name | Description |
---|---|---|
RotationType | rotation | The rotation value |
Remarks
Ili9341 | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
The ILI9341 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 320x240.
The Meadow.Foundation ILI9341 driver currently only supports 16bpp RGB565.
Code Example
MicroGraphics graphics;
Ili9341 display;
public override Task Initialize()
{
Resolver.Log.Info("Initializing ...");
Resolver.Log.Info("Create display driver instance");
display = new Ili9341
(
spiBus: Device.CreateSpiBus(),
chipSelectPin: Device.Pins.D13,
dcPin: Device.Pins.D14,
resetPin: Device.Pins.D15,
width: 240, height: 320
);
graphics = new MicroGraphics(display)
{
IgnoreOutOfBoundsPixels = true,
CurrentFont = new Font12x16()
};
return base.Initialize();
}
public override Task Run()
{
graphics.Clear();
graphics.DrawTriangle(10, 30, 50, 50, 10, 50, Meadow.Foundation.Color.Red);
graphics.DrawRectangle(20, 45, 40, 20, Meadow.Foundation.Color.Yellow, false);
graphics.DrawCircle(50, 50, 40, Meadow.Foundation.Color.Blue, false);
graphics.DrawText(5, 5, "Meadow F7", Meadow.Foundation.Color.White);
graphics.Show();
DisplayTest();
return base.Run();
}
Sample project(s) available on GitHub
Wiring Example
To wire a ILI9341 to your Meadow board, connect the following:
ILI9341 | 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: