Jump to content

Component: RGB LED LP5030 LP5036 (LEDs)

From Flowcode Help
Revision as of 21:07, 16 November 2021 by Wiki bot (talk | contribs) (Created page with "{| style="width:50%" |- | width="20%" style="color:gray;" | Author | Matrix TSL |- | width="20%" style="color:gray;" | Version | 1.0 |- | width="20%" style="color:gray...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
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