Author
|
Matrix TSL
|
Version
|
1.0
|
Category
|
LEDs
|
RGB LED LP5030 LP5036 component
An I2C Based RGB LED driver with 30 or 36 individual constant-current sinks. Used to drive 10 or 12 RGB LEDs with a wide range of applications.
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Downloadable macro reference
|
GetRGB
|
Gets the RGB colour of a single LED.
|
- BYTE
|
Address
|
Range: 0-11
|
- BYTE
|
RGB
|
Byte array containing at least 3 bytes to store Red, Green and Blue
|
- VOID
|
Return
|
|
SetBrightness
|
Allows the brightness of a single LED to be specified as a byte from 0 to 255. Default on reset is 255.
|
- BYTE
|
Address
|
Range: 0-11
|
- BYTE
|
Brightness
|
Brightness value: Range 0-255
|
- VOID
|
Return
|
|
ReadReg
|
Reads the data from one or more sequential registers
|
- BYTE
|
Address
|
|
- BYTE
|
Data
|
|
- BYTE
|
Count
|
|
- VOID
|
Return
|
|
WriteReg
|
Writes data to one or more sequential registers
|
- BYTE
|
Address
|
|
- BYTE
|
Data
|
|
- BYTE
|
Count
|
|
- VOID
|
Return
|
|
SetRGB
|
Allows the colour of a single LED to be specified in RGB.
|
- BYTE
|
Address
|
Range: 0-11
|
- BYTE
|
RGB
|
Byte array containing at least 3 bytes to set Red, Green and Blue
|
- VOID
|
Return
|
|
GetBrightness
|
Gets the brightness of a single LED.
|
- BYTE
|
Address
|
Range: 0-11
|
- BYTE
|
RGB
|
Byte array containing at least 3 bytes to store Red, Green and Blue
|
- BYTE
|
Return
|
|
SetUnitAddress
|
Allows the component to taklk to more then one IC or broadcast to all connected ICs.
|
- BYTE
|
Address
|
Range: 0-3 = Individual / 4 = Broadcast
|
- VOID
|
Return
|
|
Initialise
|
Starts up the I2C comms ready for communicating with the LP503x module. Must be called before any of the other component macros are called.
|
- VOID
|
Return
|
|
Refresh
|
Clocks out the current colour data to the LEDs from the values stored in RAM
|
- VOID
|
Return
|
|
ShiftLEDs1D
|
Shifts the LED colours in 1D and wraps
|
- BYTE
|
Direction
|
0 = Forwards, 1 = Backwards
|
- BYTE
|
DataMode
|
0=ResetToZero, 1=WrapAroundDisplay, 2=Smear
|
- VOID
|
Return
|
|
DrawLine3D
|
Draws a line on a 3D array of LEDs
|
- UINT
|
X1
|
Start X Coordinate
|
- UINT
|
Y1
|
Start Y Coordinate
|
- UINT
|
Z1
|
Start Z Coordinate
|
- UINT
|
X2
|
End X Coordinate
|
- UINT
|
Y2
|
End Y Coordinate
|
- UINT
|
Z2
|
End Z Coordinate
|
- BYTE
|
R
|
Red Colour Channel
|
- BYTE
|
G
|
Green Colour Channel
|
- BYTE
|
B
|
Blue Colour Channel
|
- VOID
|
Return
|
|
Delay_T1H
|
|
- VOID
|
Return
|
|
GetLEDIndex2D
|
Sets the index of a single LED in RAM as a 2D array.
|
- UINT
|
X
|
LED Column to change the colour / Range: 0 to (LED Column - 1)
|
- UINT
|
Y
|
LED Row to change the colour / Range: 0 to (LED Row - 1)
|
- UINT
|
Return
|
|
DrawRectangle2D
|
Draws a basic 2D rectangle onto the LEDs
|
- BYTE
|
X1
|
|
- BYTE
|
Y1
|
|
- BYTE
|
X2
|
|
- BYTE
|
Y2
|
|
- BYTE
|
DrawStyle
|
Sets the draw style - 0=Soild, 1=Edge, 2=Corners
|
- BYTE
|
R
|
|
- BYTE
|
G
|
|
- BYTE
|
B
|
|
- VOID
|
Return
|
|
ShiftLEDs2D
|
Shifts the contents of the display by the number of vertices specified ***Please Note that Wrap mode is currently unavailable***
|
[[File:]] -
|
X
|
Number of pixels to shift the display -1 to 1 / 0 = No Shift
|
[[File:]] -
|
Y
|
Number of pixels to shift the display -1 to 1 / 0 = No Shift
|
- BYTE
|
DataMode
|
0=ResetToZero, 1=WrapAroundDisplay, 2=Smear
|
- VOID
|
Return
|
|
GetLEDIndex3D
|
Gets the index of a single LED in RAM as a 3D array.
|
- UINT
|
X
|
LED Column to change the colour / Range: 0 to (LED Column - 1)
|
- UINT
|
Y
|
LED Row to change the colour / Range: 0 to (LED Row - 1)
|
- UINT
|
Z
|
LED Layer to change the colour / Range: 0 to (LED Layer - 1)
|
- UINT
|
Return
|
|
DrawCuboid3D
|
Draws a basic 3D cuboid onto the LEDs
|
- BYTE
|
X1
|
Start X pixel coordinate
|
- BYTE
|
Y1
|
Start Y pixel coordinate
|
- BYTE
|
Z1
|
Start Z pixel coordinate
|
- BYTE
|
X2
|
End X pixel coordinate
|
- BYTE
|
Y2
|
End Y pixel coordinate
|
- BYTE
|
Z2
|
End Z pixel coordinate
|
- BYTE
|
DrawStyle
|
Sets the draw style - 0=Soild, 1=Edge, 2=Corners
|
- BYTE
|
R
|
Red Colour Channel
|
- BYTE
|
G
|
Green Colour Channel
|
- BYTE
|
B
|
White Colour Channel
|
- VOID
|
Return
|
|
Initialise
|
Inisialises the RGB colour RAM to 0,0,0 = LED Off and clocks out the data to initialise all the LED ICs in the chain.
|
- VOID
|
Return
|
|
ShiftLEDs3D
|
Shifts the contents of the display by the number of vertices specified ***Please Note that Wrap mode is currently unavailable***
|
[[File:]] -
|
X
|
Number of pixels to shift the display -1 to 1 / 0 = No Shift
|
[[File:]] -
|
Y
|
Number of pixels to shift the display -1 to 1 / 0 = No Shift
|
[[File:]] -
|
Z
|
Number of pixels to shift the display -1 to 1 / 0 = No Shift
|
- BYTE
|
DataMode
|
0=ResetToZero, 1=WrapAroundDisplay, 2=Smear
|
- VOID
|
Return
|
|
Initialise
|
Sets up the data memory and draws the simulated LED cube on the panel.
|
- VOID
|
Return
|
Property reference
|
Properties
|
|
Driver IC
|
|
|
Address Pins
|
|
|
Scope Traces
|
Selects if the component pin connections are automatically generated on the data recorder window or not. Yes: Automatically add the component pins to a group on the data recorder which will reflect the sim data during simultion. No: Do not show the pin signals on the data recorder window.
|
|
Console Data
|
Selects if the console data is automatically generated or not
|
|
API
|
Specifies the API component on the panel to interact with to provide comms simulation.
|
|
Connections
|
|
Channel
|
Channel selection
|
|
Baud Select
|
Baud rate option selector
|
|
Baud Rate
|
Baud rate to be used
|
|
SDA
|
Pin used for SDA (data signal)
|
|
SDA Remap Pin
|
|
|
SCL
|
Pin used for SCL (clock signal)
|
|
SCL Remap Pin
|
|
|
Stop Delay
|
On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not a 10ms delay between an I2C stop event and the next I2C start event. Most modern microcontrollers will not have a problem so this property can be disabled to speed up the I2C communications.
|
|
Simulations
|
|
Simulate Comms
|
|