Remarks
DotstarWing | |
---|---|
Status | |
Source code | GitHub |
Datasheet(s) | GitHub |
NuGet package |
Code Example
DotstarWing dotStarWing;
MicroGraphics graphics;
public override Task Initialize()
{
Console.WriteLine("Initialize...");
var spiBus = Device.CreateSpiBus();
dotStarWing = new DotstarWing(spiBus)
{
Brightness = 0.1f
};
graphics = new MicroGraphics(dotStarWing)
{
CurrentFont = new Font4x6()
};
return Task.CompletedTask;
}
public override Task Run()
{
graphics.Clear();
graphics.DrawRectangle(0, 0, 8, 4, Color.LawnGreen, true);
graphics.DrawRectangle(2, 2, 8, 4, Color.Cyan, true);
graphics.DrawText(0, 0, "F7", Color.White);
graphics.Show();
return Task.CompletedTask;
}
Sample project(s) available on GitHub
Characteristic | Locus |
---|---|
Inheritance | System.Object > DotstarWing |
Namespace | Meadow.Foundation.FeatherWings |
Assembly | DotstarWing.dll |
Syntax
public class DotstarWing : IGraphicsDisplay
Constructors
DotstarWing(ISpiBus)
Creates a DotstarWing driver
Declaration
public DotstarWing(ISpiBus spiBus)
Parameters
Type | Name | Description |
---|---|---|
ISpiBus | spiBus | The SPI bus used by the Dotstar Wing |
Properties
Brightness
Get/Sets the RGB LED Matrix brightness
Declaration
public float Brightness { get; set; }
Property Value
Type | Description |
---|---|
System.Single |
ColorMode
Returns the color mode
Declaration
public ColorMode ColorMode { get; }
Property Value
Type | Description |
---|---|
ColorMode |
Height
Returns the height of the RGB LED matrix
Declaration
public int Height { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
PixelBuffer
Get the offscreen pixel buffer
Declaration
public IPixelBuffer PixelBuffer { get; }
Property Value
Type | Description |
---|---|
IPixelBuffer |
SupportedColorModes
Color modes supported by the device
Declaration
public ColorMode SupportedColorModes { get; }
Property Value
Type | Description |
---|---|
ColorMode |
Width
Returns the width of the RGB LED matrix
Declaration
public int Width { get; }
Property Value
Type | Description |
---|---|
System.Int32 |
Methods
Clear(Boolean)
Clear the RGB LED Matrix buffer
Declaration
public void Clear(bool updateDisplay = false)
Parameters
Type | Name | Description |
---|---|---|
System.Boolean | updateDisplay | If true, update the display, if false, only clear the buffer |
DrawPixel(Int32, Int32, Color)
Turn on an RGB LED with the specified color on (x,y) coordinates
Declaration
public void DrawPixel(int x, int y, Color color)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | x | The x position in pixels 0 indexed from the left |
System.Int32 | y | The y position in pixels 0 indexed from the top |
Color | color | The color to draw normalized to black/off or white/on |
DrawPixel(Int32, Int32, Boolean)
Turn on a LED on (x,y) coordinates
Declaration
public void DrawPixel(int x, int y, bool colored)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | x | The x position in pixels 0 indexed from the left |
System.Int32 | y | The y position in pixels 0 indexed from the top |
System.Boolean | colored | Led is on if true, off if false |
Fill(Color, Boolean)
Fill the display buffer to a normalized color
Declaration
public void Fill(Color fillColor, bool updateDisplay = false)
Parameters
Type | Name | Description |
---|---|---|
Color | fillColor | The clear color which will be normalized to black/off or white/on |
System.Boolean | updateDisplay | Force a display update if true, false to clear the buffer |
Fill(Int32, Int32, Int32, Int32, Color)
Fill the display
Declaration
public void Fill(int x, int y, int width, int height, Color fillColor)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | x | The x position in pixels 0 indexed from the left |
System.Int32 | y | The y position in pixels 0 indexed from the top |
System.Int32 | width | The width to fill in pixels |
System.Int32 | height | The height to fill in pixels |
Color | fillColor | The fillColor color which will be normalized to black/off or white/on |
InvertPixel(Int32, Int32)
Invert the color of the pixel at the given location
Declaration
public void InvertPixel(int x, int y)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | x | The x position in pixels 0 indexed from the left |
System.Int32 | y | The y position in pixels 0 indexed from the top |
Show()
Update the display from the offscreen buffer
Declaration
public void Show()
Show(Int32, Int32, Int32, Int32)
Update a region of the display from the offscreen buffer
Declaration
public void Show(int left, int top, int right, int bottom)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | left | The left bounding position in pixels |
System.Int32 | top | The top bounding position in pixels |
System.Int32 | right | The right bounding position in pixels |
System.Int32 | bottom | The bottom bounding position in pixels |
WriteBuffer(Int32, Int32, IPixelBuffer)
Draw a buffer to the display
Declaration
public void WriteBuffer(int x, int y, IPixelBuffer displayBuffer)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | x | The x position in pixels 0 indexed from the left |
System.Int32 | y | The y position in pixels 0 indexed from the top |
IPixelBuffer | displayBuffer | The display buffer to draw to the CharlieWing |