Difference between revisions of "Component: LED WS2801 (Outputs: LEDs)"
Line 23: | Line 23: | ||
===1D Configuration=== | ===1D Configuration=== | ||
− | [[File:LED_1D. | + | [[File:LED_1D.png]] |
===2D Configuration=== | ===2D Configuration=== | ||
− | [[File:LED_2D. | + | [[File:LED_2D.png]] |
Revision as of 09:27, 25 August 2016
Author | Matrix TSL |
Version | 1.0 (Release) |
Category | Outputs: LEDs |
Contents
LED WS2801 component
A simple chained RGB LED controller IC allowing multiple LEDs to be controlled using a serial data stream. Allows RGB LEDs to be driven with full 24-bit colour depth. Allows single chains, 2D arrays and 3D cube formations to be simulated. Supports Bit Banged or SPI peripheral based data modes.
Detailed description
1D Configuration
2D Configuration
Examples
RGB Mood Light
A simple example using three potentiometers to set the individual Red, Green and Blue channels of the LED colour.
Animated Light
A simple example which picks a random colour assigns it to the first LED, then shifts and repeats.
Downloadable macro reference
DrawLine2D
Draws a line on a 2D array of LEDs
Parameters
- UINT X1
- UINT Y1
- UINT X2
- UINT Y2
- BYTE R
- BYTE G
- BYTE B
Return value
- This call does not return a value
SetAllLEDColour
Sets the colour of all the LEDs in RAM
Parameters
- BYTE R
- BYTE G
- BYTE B
Return value
- This call does not return a value
SetLEDColour
Sets the colour of a single LED in RAM as a 1D array.
Parameters
- UINT LED
- LED to change the colour / Range: 0 to (LED Count - 1)
- BYTE R
- BYTE G
- BYTE B
Return value
- This call does not return a value
Refresh
Clocks out the current colour data to the LEDs from the values stored in RAM
Parameters
- This macro has no parameters
Return value
- This call does not return a value
DrawLine3D
Draws a line on a 3D array of LEDs
Parameters
- UINT X1
- UINT Y1
- UINT Z1
- UINT X2
- UINT Y2
- UINT Z2
- BYTE R
- BYTE G
- BYTE B
Return value
- This call does not return a value
SetLEDColour2D
Sets the colour of a single LED in RAM as a 2D array.
Parameters
- UINT LED_Column
- LED Column to change the colour / Range: 0 to (LED Column - 1)
- UINT LED_Row
- LED Row to change the colour / Range: 0 to (LED Row - 1)
- BYTE R
- BYTE G
- BYTE B
Return value
- This call does not return a value
SetLEDColour3D
Sets the colour of a single LED in RAM as a 3D array.
Parameters
- UINT LED_Column
- LED Column to change the colour / Range: 0 to (LED Column - 1)
- UINT LED_Row
- LED Row to change the colour / Range: 0 to (LED Row - 1)
- UINT LED_Layer
- LED Layer to change the colour / Range: 0 to (LED Layer - 1)
- BYTE R
- BYTE G
- BYTE B
Return value
- This call does not return a value
Initialise
Inisialises the RGB colour RAM to 0,0,0 = LED Off and clocks out the data to
initialise all the WS2801 ICs in the chain.
Parameters
- This macro has no parameters
Return value
- This call does not return a value
Simulation macro reference
This component does not contain any simulation macros
Property reference
LED Arrangement
This property is of type Fixed list of ints and can be referenced with the variable name LED_Arrangement.
Controls the arrangement of the LEDs on the panel.
1D - Creates a straight line of LEDs
2D - Creates an X by Y Array of LEDs
3D - Creates an X by Y by Z Array of LEDs
LED Count
This property is of type Unsigned integer and can be referenced with the variable name LED_Count.
Total number of LEDs in the design
LED Columns
This property is of type Unsigned integer and can be referenced with the variable name LED_Cols.
Number of horizontal LEDs - X axis
LED Rows
This property is of type Unsigned integer and can be referenced with the variable name LED_Rows.
Number of vertical LEDs - Y axis
LED Layers
This property is of type Unsigned integer and can be referenced with the variable name LED_Layers.
Number of LED layers - Z axis
Output Mode
This property is of type Fixed list of ints and can be referenced with the variable name Output_Mode.
Sets the output mode used to drive the data to the LEDs
Bit Banged Mode = Allows Any I/O Pin but may be slower
SPI Mode = Fixed SPI Peripheral Pins but may be faster - Note that the SPI MISO pin will not be available for general I/O
Data Pin
This property is of type Single digital pin and can be referenced with the variable name MOSI.
LED Data Pin - Connected to the Data In pin of the first WS8201 IC.
Clock Pin
This property is of type Single digital pin and can be referenced with the variable name CLK.
LED Clock Pin - Connected to the Clock In pin of the first WS8201 IC.