TI1 LP5523TM Programmable 9-output led driver Datasheet

LP5523
Programmable 9-Output LED Driver
General Description
Features
The LP5523 is a 9-channel LED driver designed to produce
lighting effects for mobile devices. A high-efficiency charge
pump enables LED driving over full Li-Ion battery voltage
range. The device is equipped with an internal program memory, which allows operation without processor control.
The LP5523 maintains excellent efficiency over a wide operating range by autonomously selecting the best charge pump
gain based on LED forward voltage requirements. LP5523 is
able to automatically enter power-save mode when LED outputs are not active, thus lowering idle current consumption
down to 10 µA (typ).
The LP5523 has an I2C-compatible control interface with four
pin selectable addresses. The device has a flexible General
Purpose Output (GPO), which can be used as a digital control
pin for other devices. INT pin can be used to notify processor
when a lighting sequence has ended (interrupt -function). Also, the device has a trigger input interface, which allows
synchronization, for example, between multiple LP5523 devices.
The device requires only four small and low-cost ceramic capacitors. The LP5523 is available in a tiny 25-bump 2.27 mm
x 2.27 mm x 0.60 mm micro SMD package (0.4 mm pitch).
■ Three independent program execution engines, 9
■
■
■
■
■
■
■
■
■
■
■
■
programmable outputs with 25.5 mA full-scale current, 8bit current setting resolution and 12-bit PWM control
resolution
Adaptive high-efficiency 1x/1.5x fractional charge pump efficiency up to 94%
LED drive efficiency up to 93%
Charge pump with soft start and over-current/short-circuit
protection
Built-in LED test
200 nA typical standby current
Automatic power save mode; IVDD = 10 µA (typ.)
Two-wire I2C-compatible control interface
Flexible instruction set
Large SRAM program memory
Small application circuit
Source (high-side) drivers
Architecture supports color control
Applications
■
■
■
■
Fun lights and indicator lights
LED backlighting
Haptic feedback
Programmable current source
Typical Application
30043601
© 2012 Texas Instruments Incorporated
300436 SNVS550C
www.ti.com
LP5523 9-Output Programmable LED Driver
March 1, 2012
LP5523
Connection Diagrams and Package Mark Information
CONNECTION DIAGRAM
Thin micro SMD 25-bump package, 2.27 x 2.27 x 0.60 mm body size, 0.4 mm pitch NS Package Number TMD25LLA
30043603
Bottom View
30043602
Top View
PACKAGE MARKING
30043699
Top View: XY — Date Code TT — Die Traceability ZZZZ — Product Identification
ORDERING INFORMATION
www.ti.com
Order Number
Product Identification
Supplied As
Spec/Flow
LP5523TM
5523
Tape-and-reel, 250 units
NOPB
LP5523TMX
5523
Tape-and-reel, 3000 units
NOPB
2
LP5523
Pin Descriptions
Pin
Name
Type
Description
A1
D1
A
Current source output 1
A2
D2
A
Current source output 2
A3
VOUT
A
Charge pump output
A4
C2−
A
Flying capacitor 2 negative terminal
A5
C2+
A
Flying capacitor 2 positive terminal
B1
D3
A
Current source output 3
B2
D4
A
Current source output 4
B3
ASEL1
I
Serial interface address select input
B4
C1−
A
Flying capacitor 1 negative terminal
B5
C1+
A
Flying capacitor 1 positive terminal
C1
D5
A
Current source output 5
C2
D6
A
Current source output 6
C3
ASEL0
I
Serial interface address select input
C4
EN
I
Enable
C5
VDD
P
Input power supply
D1
D7
A
Current source output 7.
Note: powered from VDD
D2
D8
A
Current source output 8.
Note: powered from VDD
D3
INT
OD/O
Interrupt for microcontroller unit. Leave unconnected if not used
32 kHz clock input. Connect to ground if not used
D4
CLK
I
D5
GND
G
Ground
E1
D9
A
Current source output 9.
Note: powered from VDD
E2
GPO
O
General purpose output. Leave unconnected if not used
E3
TRIG
I/OD
Trigger. Connect to ground if not used
E4
SDA
I/OD
Serial interface data
E5
SCL
I
Serial interface clock
A: Analog Pin
G: Ground Pin
P: Power Pin
I: Input Pin
I/O Input/Output Pin
O: Output Pin
OD: Open Drain Pin
3
www.ti.com
LP5523
Recommended Operating
Conditions (Note 1, Note 3)
Absolute Maximum Ratings (Note 1, Note
3)
VDD Input Voltage Range
Voltage on Logic Pins
(Input or Output Pins)
Recommended Charge Pump
Load Current
Junction Temperature (TJ) Range
Ambient Temperature (TA) Range
(Note 9)
If Military/Aerospace specified devices are required,
please contact the Texas Instruments Sales Office/
Distributors for availability and specifications.
VDD
Voltage on D1 to D9, C1−, C1+,
C2−, C2+, VOUT
Continuous Power Dissipation
(Note 4)
Junction Temperature (TJ-MAX)
Storage Temperature Range
Maximum Lead Temperature
(Soldering)
ESD Rating
Human Body Model: D1 to D9
Human Body Model: All Other Pins
Machine Model: All Pins
Charge Device Model: All Pins
−0.3V to +6.0V
−0.3V to VDD +0.3V
with 6.0V max
Internally Limited
2.7V to 5.5V
0 to VDD
0 mA to 100 mA
−30°C to +125°C
−30°C to +85°C
Thermal Properties
125°C
−65°C to +150°C
(Note 5)
Junction-to-Ambient Thermal
Resistance (θJA),
TMD25LLA Package (Note 10)
87°C/W
8kV (Note 6)
2.5kV (Note 6)
250V (Note 7)
1000V (Note 8)
Electrical Characteristics
(Note 2, Note 3, Note 11) Limits in standard typeface are for TA = 25°C. Limits in
boldface type apply over the operating ambient temperature range (−30°C < TA < +85°C). Unless otherwise noted, specifications
apply to the LP5523 Block Diagram with: VDD = 3.6V, VEN = 1.65V, COUT = 1.0 µF, CIN = 1.0 µF, C1–2 = 0.47 µF. (Note 12)
Symbol
Parameter
Standby supply current
IVDD
Normal Mode Supply Current
Power Save Mode Supply Current
fOSC
Typ
Max
Units
VEN = 0V, CHIP_EN=0 (bit), external 32
kHz clock running or not running
Condition
Min
0.2
1
µA
CHIP_EN=0 (bit), external 32 kHz clock
not running
1.0
1.7
µA
CHIP_EN=0 (bit), external 32 kHz clock
running
1.4
2.3
µA
External 32 kHz clock running, charge
pump and current source outputs disabled
0.6
0.75
mA
Charge pump in 1x mode, no load, current
source outputs disabled
0.8
0.95
mA
Charge pump in 1.5x mode, no load,
current source outputs disabled
1.8
External 32 kHz clock running
10
15
µA
0.6
0.75
mA
+4
+7
%
Internal oscillator running
−4
−7
Internal Oscillator Frequency Accuracy
mA
Charge Pump Electrical Characteristics
Symbol
Parameter
ROUT
Charge Pump Output Resistance
fSW
Switching Frequency
Condition
Gain = 1.5x
Gain = 1x
IGND
Ground Current
Gain = 1.5x
Gain = 1x
tON
VOUT Turn-On Time (Note 13)
VDD = 3.6V, IOUT = 60 mA
www.ti.com
4
Min
Typ
Max
Units
3.5
1
Ω
1.25
MHz
1.2
0.3
mA
100
µs
Symbol
Parameter
Condition
Min
Typ
Max
1
ILEAKAGE
Leakage Current (outputs D1 to D9) PWM = 0%
0.1
IMAX
Maximum Source Current
25.5
IOUT
Output Current Accuracy (Note 14) Output current set to 17.5 mA
IMATCH
Matching (Note 14)
fLED
LED Switching Frequency
VSAT
Saturation Voltage (Note 15)
Outputs D1 to D9
−4
−5
1
2.5
312
Output current set to 17.5 mA
µA
mA
+4
+5
Output current set to 17.5 mA
Units
%
%
Hz
45
100
mV
Typ
Max
Units
±4
LSB
LED Test Electrical Characteristics
Symbol
Parameter
LSB
Least Significant Bit
EABS
Total Unadjusted Error (Note 16)
tCONV
Conversion Time
VIN_TEST
DC Voltage Range
Condition
Min
30
VIN_TEST = 0V to VDD
<±3
mV
2.7
ms
0
5
V
Logic Interface Characteristics
Symbol
Parameter
Condition
Min
Typ
Max
Units
0.5
V
1.0
µA
Logic input EN
VIL
Input Low Level
VIH
Input High Level
1.2
II
Input Current
−1.0
tDELAY
Input Delay (Note 18)
V
2
µs
Logic input SCL, SDA, TRIG, CLK, ASEL0, ASEL1
VIL
Input Low Level
VIH
Input High Level
II
Input Current
0.2xVEN
V
1.0
µA
0.5
V
1.0
µA
0.8xVEN
V
−1.0
Logic output SDA, TRIG, INT
VOL
Output Low Level
IOUT = 3 mA (pullup current)
IL
Output Leakage Current
VOUT = 2.8V
0.3
Logic output GPO
VOL
Output Low Level
IOUT = 3 mA
0.3
VOH
Output High Level
IOUT = −2 mA
IL
Output Leakage Current
VOUT = 2.8V
5
0.5
V
1.0
µA
V
VDD −0.5 DD
−0.3
www.ti.com
LP5523
LED Driver Electrical Characteristics
LP5523
Recommended External Clock Source Conditions
Symbol
Parameter
(Note 17, Note 19)
Condition
Min
Typ
Max
Units
Logic input CLK
fCLK
Clock Frequency
tCLKH
High Time
tCLKL
Low Time
tr
Clock Rise Time
10% to 90%
2
µs
tf
Clock Fall Time
90% to 10%
2
µs
32.7
kHz
6
µs
6
µs
300436300
FIGURE 1. External Clock Signal
Serial Bus Timing Parameters (SDA, SCL)
Symbol
(Note 17)
Parameter
Limit
Min
fSCL
Clock Frequency
1
Hold Time (repeated) START Condition
2
3
Units
Max
400
kHz
0.6
µs
Clock Low Time
1.3
µs
Clock High Time
600
ns
4
Setup Time for a Repeated START Condition
600
ns
5
Data Hold Time
50
ns
6
Data Setup Time
100
7
Rise Time of SDA and SCL
20+0.1 Cb
300
ns
8
Fall Time of SDA and SCL
15+0.1 Cb
300
ns
9
Set-up Time for STOP condition
600
ns
10
Bus Free Time between a STOP and a START Condition
1.3
µs
Cb
Capacitive Load Parameter for Each Bus Line.
Load of One Picofarad Corresponds to One Nanosecond.
10
ns
200
ns
30043600
FIGURE 2. Timing Parameters
www.ti.com
6
Note 2: The Electrical characteristics tables list guaranteed specifications under the listed Recommended Conditions except as otherwise modified or specified
by the Electrical Characteristics Conditions and/or Notes. Typical specifications are estimations only and are not guaranteed.
Note 3: All voltages are with respect to the potential at the GND pin.
Note 4: Internal thermal shutdown circuitry protects the device from permanent damage. Thermal shutdown engages at TJ = 150°C (typ.) and disengages at TJ
= 130°C (typ.).
Note 5: For detailed soldering specifications and information, please refer to Texas Instruments Application Note AN1112 : Micro SMD Wafer Level Chip Scale
Package.
Note 6: Human Body Model, applicable standard JESD22-A114C
Note 7: Machine Model, applicable standard JESD22- A115-A
Note 8: Charge Device Model, applicable standard JESD22A-C101
Note 9: In applications where high power dissipation and/or poor package thermal resistance is present, the maximum ambient temperature may have to be
derated. Maximum ambient temperature (TA-MAX) is dependent on the maximum operating junction temperature (TJ-MAX-OP = 125°C), the maximum power
dissipation of the device in the application (PD-MAX), and the junction-to ambient thermal resistance of the part/package in the application (θJA), as given by the
following equation: TA-MAX = TJ-MAX-OP – (θJA × PD-MAX).
Note 10: Junction-to-ambient thermal resistance is highly application and board-layout dependent. In applications where high maximum power dissipation exists,
special care must be paid to thermal dissipation issues in board design.
Note 11: Min and Max limits are guaranteed by design, test, or statistical analysis.
Note 12: Low-ESR Surface-Mount Ceramic Capacitors (MLCCs) used in setting electrical characteristics.
Note 13: Turn-on time is measured from the moment the charge pump is activated until the VOUT crosses 90% of its target value.
Note 14: Output Current Accuracy is the difference between the actual value of the output current and programmed value of this current. Matching is the maximum
difference from the average. For the constant current outputs on the part (D1 to D9), the following are determined: the maximum output current (MAX), the minimum
output current (MIN), and the average output current of all outputs (AVG). Two matching numbers are calculated: (MAX-AVG)/AVG and (AVG-MIN)/AVG. The
largest number of the two (worst case) is considered the matching figure. Note that some manufacturers have different definitions in use.
Note 15: Saturation voltage is defined as the voltage when the LED current has dropped 10% from the value measured at VOUT – 1V.
Note 16: Total unadjusted error includes offset, full-scale, and linearity errors.
Note 17: Specification is guaranteed by design and is not tested in production. VEN = 1.65V to VDD.
Note 18: The I2C host should allow at least 500 µs before sending data to the LP5523 after the rising edge of the enable line.
Note 19: The ideal external clock signal for the LP5523 is a 0V to VEN 25% to 75% duty-cycle square wave. At frequencies above 32.7 kHz, program execution
will be faster, and at frequencies below 32.7 kHz program execution will be slower.
Note 20: CIN, COUT, C1, C2: Low-ESR Surface-Mount Ceramic Capacitors (MLCCs) used in setting electrical characteristics.
Note 21: If the charge pump is OFF the supply current is even lower.
Note 22: Output Current Accuracy is the difference between the actual value of the output current and programmed value of this current. Matching is the maximum
difference from the average. For the constant current outputs on the part (D1 to D9), the following are determined: the maximum output current (MAX), the minimum
output current (MIN), and the average output current of all outputs (AVG). Two matching numbers are calculated: (MAX-AVG)/AVG and (AVG-MIN)/AVG. The
largest number of the two (worst case) is considered the matching figure. Note that some manufacturers have different definitions in use.
7
www.ti.com
LP5523
Note 1: “Absolute Maximum Ratings” indicate limits beyond which damage to the device may occur, including inoperability and degradation of device reliability
and/or performance. Functional operation of the device and/or non-degradation at the Absolute Maximum Ratings or other conditions beyond those indicated in
the Recommended Operating Conditions is not implied. The recommended Operating Conditions indicate conditions at which the device is functional and the
device should not be operated beyond such conditions.
LP5523
Typical Performance Characteristics
Unless otherwise specified: VDD = 3.6V, CIN = COUT = 1.0 µF, C1 = C2 = 0.47 µF, TA = 25°C. (Note 20)
Charge Pump 1.5x Efficiency vs Load Current
Output Voltage of the Charge Pump (1.5x) as a Function of
Load Current at Four Input Voltage Levels
300436301
300436303
Gain Change Hysteresis Loop at Factory Settings;
Effect of Adaptive Hysteresis on the Widht of the
6 x 1,0 mA Load (6 Nichia NSCW100 WLEDs on D1 to D6) Hysteresis Loop; Load = 6 x Nichia NSCW100 WLEDs on D1
to D6 @ 100% PWM
300436305
300436302
LED Current Matching Distribution
@ 17.5mA Current (Note 22)
LED Current Accuracy Distribution
@ 17.5mA Current (Note 22)
300436306
www.ti.com
300436304
8
Serial Bus Write (51h to Addr 36h) and Charge Pump
startup Waveform. ILOAD= 60mA; VDD=3.6V
30043679
30043677
Line Transient and Charge Pump Automatic Gain
Change (1.5x to 1x) with 6 LEDs at 1mA / 100% PWM
Line Transient and Charge Pump Automatic Gain
Change (1x to 1.5x) with 6 LEDs at 1mA / 100% PWM
30043682
30043681
100% PWM RGB LED Efficiency vs. VDD
100% PWM WLED Efficiency vs. VDD
30043649
30043650
9
www.ti.com
LP5523
Power Save Mode Supply Current vs VDD .
Charge pump in 1x mode. (Note 21)
LP5523
pump. LP5523 is able to automatically enter power-save
mode when LED outputs are not active, thus lowering idle
current consumption down to 10 µA (typ.). Also, during the
"down time" of the PWM cycle (constant current output status
is low), additional power savings can be achieved when the
PWM Powersave feature is enabled.
Functional Overview
The LP5523 is a fully integrated lighting management unit for
producing lighting effects for mobile devices. The LP5523 includes all necessary power management, high-side current
sources, temperature compensation, two-wire control interface and programmable pattern generators. The overall maximum current for each driver is set by an 8-bit register.
The LP5523 controls LED luminance with a pulse width modulation (PWM) scheme with a resolution of 12 bits. Also, the
temperature compensation is done by PWM.
TEMPERATURE COMPENSATION
The luminance of an LED is typically a function of its temperature even though the current flowing through the LED remains constant. Since luminance is temperature dependent,
many LED applications require some form of temperature
compensation to decrease luminance and color purity variations due to temperature changes. The LP5523 has a built-in
temperature-sensing element, and PWM duty cycle of the
LED drivers changes linearly in relationship to changes in
temperature. User can select the slope of the graph (31
slopes) based on the LED characteristics (see Figure 3 ). This
compensation can be done either constantly, or only right after the device wakes up from powersave mode, to avoid error
due to self-heating of the device. Linear compensation is considered to be practical and accurate enough for most LED
applications.
PROGRAMMING
The LP5523 provides flexibility and programmability for dimming and sequencing control. Each LED can be controlled
directly and independently through the serial bus, or LED
drivers can be grouped together for pre-programmed flashing
patterns.
The LP5523 has three independent program execution engines, so it is possible to form three independently programmable LED banks. LED drivers can be grouped based
on their function so that, for example, the first bank of drivers
can be assigned to the keypad illumination, the second bank
to the “funlights”, and the third group to the indicator LED(s).
Each bank can contain 1 to 9 LED driver outputs. Instructions
for program execution engines are stored in the program
memory. The total amount of the program memory is 96 instructions, and the user can allocate the memory as required
by the engines.
LED ERROR DETECTION
The LP5523 has built-in LED error detection. Error detection
does not only detect open and short circuit, but provides an
opportunity to measure the VFs of the LEDs. The test event
is activated by a serial interface write, and the result can be
read through the serial interface during the next cycle. This
feature can also be addressed to measure the voltage on
VDD, VOUT and INT pins. Typical example usage includes
monitoring battery voltage or using INT pin as a light sensor
interface.
ENERGY EFFICIENCY
When charge-pump automatic mode selection is enabled, the
LP5523 monitors the voltage over the drivers of D1 to D6 so
that the device can select the best charge-pump gain and
maintain good efficiency over the whole operating voltage
range. The red LED element of an RGB LED typically has a
forward voltage of about 2V. For that reason, the outputs D7,
D8 and D9 are internally powered by VDD, since battery voltage is high enough to drive red LEDs over the whole operating
voltage range. This allows the driving of three RGB LEDs with
good efficiency because the red LEDs don't load the charge
www.ti.com
30043698
FIGURE 3. Temperature Compensation Principle
Compensation is effective over the temperature range −40°C
to 90°C.
10
LP5523
LP5523 Block Diagram
30043605
11
www.ti.com
LP5523
Modes of Operation
In the RESET mode all the internal registers are reset to the default values. Reset is always entered if Reset
Register (3DH) is written FFH or internal Power-On Reset is active. Power-On Reset (POR) will activate during
the chip startup or when the supply voltage VDD fall below 1.5V (typ.). Once VDD rises above 1.5V (typ.), POR
will deactivate, and the chip will continue to the STANDBY mode. CHIP_EN control bit is low after POR by default.
STANDBY:
The STANDBY mode is entered if the register bit CHIP_EN or EN pin is LOW and Reset is not active. This is the
low-power consumption mode, when all circuit functions are disabled. Most registers can be written in this mode
if EN pin is risen to high so that control bits will be effective right after the startup (see Control Register Details).
STARTUP:
When CHIP_EN bit is written high and EN pin is high, the INTERNAL STARTUP SEQUENCE powers up all the
needed internal blocks (VREF, Bias, Oscillator etc.). Startup delay is 500 μs. If the chip temperature rises too
high, the Thermal Shutdown (TSD) disables the chip operation, and the chip waits in STARTUP mode until no
thermal shutdown event is present.
NORMAL:
During NORMAL mode the user controls the chip using the Control Registers.
POWER SAVE: In POWER-SAVE mode analog blocks are disabled to minimize power consumption. See chapter Automatic
Power Save Mode for further information.
RESET
30043612
www.ti.com
12
OVERVIEW
The LP5523 includes a pre-regulated switched-capacitor
charge pump with a programmable voltage multiplication of 1
and 1.5x. In 1.5x mode, by combining the principles of a
switched-capacitor charge pump and a linear regulator, a
regulated 4.5V output is generated from the Li-Ion input voltage range. A two-phase non-overlapping clock generated
internally controls the operation of the charge pump. During
the charge phase, both flying capacitors (C1 and C2) are
charged from input voltage. In the pump phase that follows,
the flying capacitors are discharged to output. A traditional
switched-capacitor charge pump operating in this manner will
use switches with very low on-resistance, ideally 0Ω, to generate an output voltage that is 1.5x the input voltage. The
LP5523 regulates the output voltage by controlling the resistance of the input-connected pass-transistor switches in the
charge pump.
CONTROLLING THE CHARGE PUMP
The charge pump is controlled with two CP_MODE bits in
MISC register (address 36H). When both of the bits are low,
the charge pump is disabled, and output voltage is pulled
down with an internal 300 kΩ (typ.) resistor. The charge pump
can be forced to bypass mode, so the battery voltage is connected directly to the current sources; in 1.5x mode output
voltage is boosted to 4.5V. In automatic mode, charge-pump
operation mode is determined by saturation of constant current drivers, as described in LED Forward Voltage Monitoring
below.
OUTPUT RESISTANCE
At lower input voltages, the charge pump output voltage may
degrade due to effective output resistance (ROUT) of the
charge pump. The expected voltage drop can be calculated
by using a simple model for the charge pump illustrated in
Figure 4 below.
LED FORWARD VOLTAGE MONITORING
When the charge-pump automatic mode selection is enabled,
voltages over LED drivers D1 to D6 are monitored. (Note:
Power input for current source outputs D7, D8 and D9 are
internally connected to the VDD pin.) If the D1 to D6 drivers
do not have enough headroom, charge-pump gain is set to
1.5x. Driver saturation monitor does not have a fixed voltage
limit, since saturation voltage is a function of temperature and
current. Charge pump gain is set to 1x, when battery voltage
is high enough to supply all LEDs.
In automatic gain change mode, the charge pump is switched
to bypass mode (1x), when LEDs are inactive for over 50 ms.
30043606
GAIN CHANGE HYSTERESIS
Charge pump gain control utilizes digital filtering to prevent
supply voltage disturbances (for example, the transient voltage on the power supply during the GSM burst) from triggering unnecessary gain changes. Hysteresis is provided to
prevent periodic gain changes (which could occur due to LED
driver) and charge-pump voltage drop in 1x mode. The hysteresis of the gain change is user-configurable; default setting
is factory-programmable. Flexible configuration ensures that
hysteresis can be minimized or set to desired level in each
application.
LED forward voltage monitoring and gain control block diagram is shown in Figure 5.
FIGURE 4. Charge Pump Output Resistance Model
The model shows a linear pre-regulation block (REG), a voltage multiplier (1.5x), and an output resistance (ROUT). Output
resistance models the output voltage drop that is inherent to
switched capacitor converters. The output resistance is 3.5Ω
(typ.), and it is a function of switching frequency, input voltage,
flying capacitors’ capacitance value, internal resistances of
the switches and ESR of the flying capacitors. When the output voltage is in regulation, the regulator in the model controls
the voltage V’ to keep the output voltage equal to 4.5V (typ.).
With increased output current, the voltage drop across ROUT
increases. To prevent drop in output voltage, the voltage drop
13
www.ti.com
LP5523
across the regulator is reduced, V’ increases, and VOUT remains at 4.5V. When the output current increases to the point
that there is zero voltage drop across the regulator, V’ equals
the input voltage, and the output voltage is “on the edge” of
regulation. Additional output current causes the output voltage to fall out of regulation, so that the operation is similar to
a basic open-loop 1.5x charge pump. In this mode, output
current results in output voltage drop proportional to the output resistance of the charge pump. The out-of-regulation
output voltage can be approximated by: VOUT = 1.5 x VIN –
IOUT x ROUT.
Charge Pump Operational
Description
LP5523
30043607
FIGURE 5. Forward Voltage Monitoring and Gain Control Block
LED dimming is controlled according to a logarithmic or linear
scale, see Figure 7. A logarithmic or linear scheme can be set
for both the program execution engine control and direct
PWM control. Note: if the temperature compensation is active, the maximum PWM duty cycle is limited to 50% at +25°
C. This is required to allow enough headroom for temperature
compensation over the whole temperature range −40 °C to
90°C.
LED Driver Operational Description
OVERVIEW
LP5523'd LED drivers are constant current sources. Output
current can be programmed by control registers up to 25.5
mA. The overall maximum current is set by 8-bit output current
control registers with 100 μA step size. Each of the 9 LED
drivers has a separate output current control register.
The LED luminance pattern (dimming) is controlled with PWM
(pulse width modulation) technique, which has internal resolution of 12 bits (8-bit control can be seen by user). PWM
frequency is 312 Hz. See Figure 6 below.
30043608
FIGURE 6. LED Pattern and Current Control Principle
30043621
FIGURE 7. Logarithmic vs Linear Dimming
www.ti.com
14
LP5523
POWERING LEDs
The LP5523 is very suitable for white LED and general purpose applications, and it is particularly well suited to use with
RGB LEDs. The LP5523’s architecture is optimized for use
with three RGB LEDs. Typically, the red LEDs have forward
voltages below 2 volts, thus red LEDs can be powered directly
from VDD. In the LP5523 D7, D8 and D9 drivers are powered
from the battery voltage (VDD), not from the charge-pump output. D1 to D6 drivers are internally connected to the chargepump output, and these outputs can be used for driving green
and blue (VF = 2.7V to 3.7V typ.) or white LEDs. Of course,
D7, D8 and D9 outputs can be used for green, blue or white
LEDs if the VDD voltage is high enough.
An RGB LED configuration example is given in the Typical
Applications section at the end of this document.
30043614
FIGURE 8. Data Validity Diagram
START AND STOP CONDITIONS
START and STOP conditions classify the beginning and the
end of the data transfer session. A START condition is defined
as the SDA signal transitioning from HIGH to LOW while SCL
line is HIGH. A STOP condition is defined as the SDA transitioning from LOW to HIGH while SCL is HIGH. The bus master
always generates START and STOP conditions. The bus is
considered to be busy after a START condition and free after
a STOP condition. During data transmission, the bus master
can generate repeated START conditions. First START and
repeated START conditions are equivalent, function-wise.
CONTROLLING THE HIGH-SIDE LED DRIVERS
1. Direct PWM Control
All LP5523 LED drivers, D1 to D9, can be controlled independently through the two-wire serial I2C-compatible interface. For each high-side driver there is a PWM control
register. Direct PWM control is active by default.
2. Controlling by Program Execution Engines
Engine control is used when the user wants to create programmed sequences. The program execution engine has a
higher priority than direct control registers. Therefore, if the
user has set the PWM register to a certain value, it will be
automatically overridden when the program execution engine
controls the driver. LED control and program execution engine operation is described in the section Control Register
Details.
3. Master Fader Control
In addition to LED-by-LED PWM register control, the LP5523
is equipped with so-called master fader control, which allows
the user to fade in or fade out multiple LEDs by writing to only
one register. This is a useful function to minimize serial bus
traffic between the MCU and the LP5523. The LP5523 has
three master fader registers, so it is possible to form three
master fader groups.
TRANSFERRING DATA
Every byte put on the SDA line must be eight bits long, with
the most significant bit (MSB) being transferred first. Each
byte of data has to be followed by an acknowledge bit. The
acknowledge related clock pulse is generated by the master.
The master releases the SDA line (HIGH) during the acknowledge clock pulse. The LP5523 pulls down the SDA line during
the 9th clock pulse, signifying an acknowledge. The LP5523
generates an acknowledge after each byte has been received.
There is one exception to the “acknowledge after every byte”
rule. When the master is the receiver, it must indicate to the
transmitter an end of data by not acknowledging (“negative
acknowledge”) the last byte clocked out of the slave. This
“negative acknowledge” still includes the acknowledge clock
pulse (generated by the master), but the SDA line is not pulled
down.
After the START condition, the bus master sends a chip address. This address is seven bits long followed by an eighth
bit which is a data direction bit (READ or WRITE). The LP5523
address is defined with ASEL0 and ASEL1 pins, and it is 32h
when ASEL1 and ASEL0 are connected to GND. For the
eighth bit, a “0” indicates a WRITE and a “1” indicates a
READ. The second byte selects the register to which the data
will be written. The third byte contains data to write to the selected register.
I2C-Compatible Control Interface
The I2C-compatible synchronous serial interface provides access to the programmable functions and registers on the
device. This protocol uses a two-wire interface for bidirectional communications between the IC's connected to the bus.
The two interface lines are the Serial Data Line (SDA), and
the Serial Clock Line (SCL). Every device on the bus is assigned a unique address and acts as either a Master or a
Slave depending on whether it generates or receives the serial clock SCL. The SCL and SDA lines should each have a
pullup resistor placed somewhere on the line and remain
HIGH even when the bus is idle. Note: CLK pin is not used for
serial bus data transfer.
DATA VALIDITY
The data on SDA line must be stable during the HIGH period
of the clock signal (SCL). In other words, state of the data line
can only be changed when clock signal is LOW.
15
www.ti.com
LP5523
I2C-Compatible Chip Address
ASEL0 and ASEL1 pins configure the chip address for the LP5523 as shown in Table 1.
TABLE 1. LP5523 Chip Address Configuration
ASEL1
ASEL0
ADDRESS
8-BIT HEX ADDRESS
GND
GND
(HEX)
WRITE/READ
32
GND
64/65
VEN
33
66/67
VEN
GND
34
68/69
VEN
VEN
35
6A/6B
30043615
FIGURE 9. LP5523 Chip Address
30043613
FIGURE 10. Write cycle (w = write; SDA = "0"), id = chip address = 32h for LP5523.
This data pattern writes temperature information to the TEMPERATURE WRITE register (40h).
www.ti.com
16
LP5523
30043616
FIGURE 11. Read cycle (r = read; SDA = "1"), id = chip address = 32h for LP5523. This data pattern reads temperature
information from the TEMPERATURE READ register (3Fh). When a READ function is to be accomplished, a WRITE
function must precede the READ function, as show above.
•
CONTROL REGISTER WRITE CYCLE
• Master device generates start condition.
• Master device sends slave address (7 bits) and the data
direction bit (r/w = 0).
• Slave device sends acknowledge signal if the slave
address is correct
• Master sends control register address (8 bits).
• Slave sends acknowledge signal.
• Master sends data byte to be written to the addressed
register.
• Slave sends acknowledge signal.
CONTROL REGISTER READ CYCLE
•
•
•
•
•
•
•
•
•
•
•
•
If master sends further data bytes, the slave’s control
register address will be incremented by one after
acknowledge signal. In order to reduce program load time,
the LP5523 supports address auto incrementation.
Register address is incremented after each 8 data bits. For
example, the whole program memory page can be written
in one serial bus write sequence. Note: serial bus address
auto increment is not supported for register addresses
from 16 to 1E.
Write cycle ends when the master creates stop condition.
Master device generates a start condition.
Master device sends slave address (7 bits) and the data direction bit (r/w = 0).
Slave device sends acknowledge signal if the slave address is correct
Master sends control register address (8 bits).
Slave sends acknowledge signal.
Master device generates repeated start condition.
Master sends the slave address (7 bits) and the data direction bit (r/w = 1).
Slave sends acknowledge signal if the slave address is correct.
Slave sends data byte from addressed register.
If the master device sends an acknowledge signal, the control register address will be incremented by one. Slave device sends
data byte from addressed register.
Read cycle ends when the master does not generate acknowledge signal after data byte and generates stop condition
AUTO-INCREMENT FEATURE
The auto-increment feature allows writing several consecutive registers within one transmission. Every time an 8-bit word is sent
to the LP5523, the internal address index counter will be incremented by one, and the next register will be written. Example below
() shows writing sequence to two consecutive registers. Auto-increment feature is enabled by writing EN_AUTO_INCR bit high in
the MISC register (addr 36h). Note: serial bus address auto increment is not supported for register addresses from 16 to 1E.
TABLE 2. Auto Increment Example.
MASTER
LP5523
START
CHIP
ADDR
=32H
REG
ADDR
WRITE
ACK
DATA
ACK
17
DATA
ACK
STOP
ACK
www.ti.com
LP5523
Register Set
The LP5523 is controlled by a set of registers through the two-wire serial interface port. Some register bits are reserved for future
use. Table 3 below lists device registers, their addresses and their abbreviations. A more detailed description is given in chapter
Control Register Details.
TABLE 3. Control Register Map
Hex
Address
00
01
02
03
04
www.ti.com
Register Name
ENABLE / ENGINE
CNTRL1
ENGINE CNTRL2
OUTPUT DIRECT/
RATIOMETRIC MSB
OUTPUT DIRECT/
RATIOMETRIC LSB
OUTPUT ON/OFF
CONTROL MSB
Bit(s)
Read/
Write
Default Value
After Reset
[6]
R/W
x0xxxxxx
CHIP_EN
0 = LP5523 not enabled
1 = LP5523 enabled
[5:4]
R/W
xx00xxxx
ENGINE1_EXEC
Engine 1 program execution control
[3:2]
R/W
xxxx00xx
ENGINE2_EXEC
Engine 2 program execution control
[1:0]
R/W
xxxxxx00
ENGINE3_EXEC
Engine 3 program execution control
[5:4]
R/W
xx00xxxx
ENGINE1_MODE
ENGINE 1 mode control
[3:2]
R/W
xxxx00xx
ENGINE2_MODE
ENGINE 2 mode control
[1:0]
R/W
xxxxxx00
ENGINE3_MODE
ENGINE 3 mode control
[0]
R/W
xxxxxxx0
D9_RATIO_EN
Enables ratiometric dimming for D9 output.
[7]
R/W
0xxxxxxx
D8_RATIO_EN
Enables ratiometric dimming for D8 output.
[6]
R/W
x0xxxxxx
D7_RATIO_EN
Enables ratiometric dimming for D7 output.
[5]
R/W
xx0xxxxx
D6_RATIO_EN
Enables ratiometric dimming for D6 output.
[4]
R/W
xxx0xxxx
D5_RATIO_EN
Enables ratiometric dimming for D5 output.
[3]
R/W
xxxx0xxx
D4_RATIO_EN
Enables ratiometric dimming for D4 output.
[2]
R/W
xxxxx0xx
D3_RATIO_EN
Enables ratiometric dimming for D3 output.
[1]
R/W
xxxxxx0x
D2_RATIO_EN
Enables ratiometric dimming for D2 output.
[0]
R/W
xxxxxxx0
D1_RATIO_EN
Enables ratiometric dimming for D1 output.
[0]
R/W
xxxxxxx1
D9_ON
ON/OFF Control for D9 output
18
Bit Mnemonic and Description
05
06
07
08
09
0A
0B
0C
Register Name
OUTPUT ON/OFF
CONTROL LSB
D1 CONTROL
D2 CONTROL
D3 CONTROL
D4 CONTROL
D5 CONTROL
D6 CONTROL
D7 CONTROL
LP5523
Hex
Address
Bit(s)
Read/
Write
Default Value
After Reset
[7]
R/W
1xxxxxxx
D8_ON
ON/OFF Control for D8 output
[6]
R/W
x1xxxxxx
D7_ON
ON/OFF Control for D7 output
[5]
R/W
xx1xxxxx
D6_ON
ON/OFF Control for D6 output
[4]
R/W
xxx1xxxx
D5_ON
ON/OFF Control for D5 output
[3]
R/W
xxxx1xxx
D4_ON
ON/OFF Control for D4 output
[2]
R/W
xxxxx1xx
D3_ON
ON/OFF Control for D3 output
[1]
R/W
xxxxxx1x
D2_ON
ON/OFF Control for D2 output
[0]
R/W
xxxxxxx1
D1_ON
ON/OFF Control for D1 output
[7:6]
R/W
00xxxxxx
MAPPING
Mapping for D1 output
[5]
R/W
xx0xxxxx
LOG_EN
Logarithmic dimming control for D1
[4:0]
R/W
xxx00000
TEMP COMP
Temperature compensation control for D1 output
[7:6]
R/W
00xxxxxx
MAPPING Mapping for D2 output
[5]
R/W
xx0xxxxx
LOG_EN
Logarithmic dimming control for D2 output
[4:0]
R/W
xxx00000
TEMP COMP
Temperature compensation control for D2 output
[7:6]
R/W
00xxxxxx
MAPPING Mapping for D3 output
[5]
R/W
xx0xxxxx
LOG_EN
Logarithmic dimming control for D3 output
[4:0]
R/W
xxx00000
TEMP COMP
Temperature compensation control for D3 output
[7:6]
R/W
00xxxxxx
MAPPING Mapping for D4 output
[5]
R/W
xx0xxxxx
LOG_EN
Logarithmic dimming control for D4 output
[4:0]
R/W
xxx00000
TEMP COMP
Temperature compensation control for D4 output
[7:6]
R/W
00xxxxxx
MAPPING Mapping for D5 ouput
[5]
R/W
xx0xxxxx
LOG_EN
Logarithmic dimming control for D5 output
[4:0]
R/W
xxx00000
TEMP COMP
Temperature compensation control for D5
[7:6]
R/W
00xxxxxx
MAPPING Mapping for D6 output
[5]
R/W
xx0xxxxx
LOG_EN
Logarithmic dimming control for D6 output
[4:0]
R/W
xxx00000
TEMP COMP
Temperature compensation control for D6 output
[7:6]
R/W
00xxxxxx
MAPPING Mapping for D7 output
[5]
R/W
xx0xxxxx
LOG_EN
Logarithmic dimming control for D7 output
[4:0]
R/W
xxx00000
TEMP COMP
Temperature compensation control for D7 output
19
Bit Mnemonic and Description
www.ti.com
LP5523
Hex
Address
0D
0E
0F TO 15
Register Name
D8 CONTROL
D9 CONTROL
Bit(s)
Read/
Write
Default Value
After Reset
[7:6]
R/W
00xxxxxx
MAPPING Mapping for D8 output
[5]
R/W
xx0xxxxx
LOG_EN
Logarithmic dimming control for D8 output
[4:0]
R/W
xxx00000
TEMP COMP
Temperature compensation control for D8 output
[7:6]
R/W
00xxxxxx
MAPPING Mapping for D9 output
[5]
R/W
xx0xxxxx
LOG_EN
Logarithmic dimming control for D9 output
[4:0]
R/W
xxx00000
TEMP COMP
Temperature compensation control for D9 output
Bit Mnemonic and Description
RESERVED
[7:0]
16
D1 PWM
[7:0]
R/W
00000000
PWM
PWM duty cycle control for D1
17
D2 PWM
[7:0]
R/W
00000000
PWM
PWM duty cycle control for D2
18
D3 PWM
[7:0]
R/W
00000000
PWM
PWM duty cycle control for D3
19
D4 PWM
[7:0]
R/W
00000000
PWM
PWM duty cycle control for D4
1A
D5 PWM
[7:0]
R/W
00000000
PWM
PWM duty cycle control for D5
1B
D6 PWM
[7:0]
R/W
00000000
PWM
PWM duty cycle control for D6
1C
D7 PWM
[7:0]
R/W
00000000
PWM
PWM duty cycle control for D7
1D
D8 PWM
[7:0]
R/W
00000000
PWM
PWM duty cycle control for D8
1E
D9 PWM
[7:0]
R/W
00000000
PWM
PWM duty cycle control for D9
RESERVED
[7:0]
26
D1 CURRENT
CONTROL
[7:0]
R/W
10101111
CURRENT
D1 output current control register. Default 17.5
mA (typ.)
27
D2 CURRENT
CONTROL
[7:0]
R/W
10101111
CURRENT
D2 output current control register. Default 17.5
mA (typ.)
28
D3 CURRENT
CONTROL
[7:0]
R/W
10101111
CURRENT
D3 output current control register. Default 17.5
mA (typ.)
29
D4 CURRENT
CONTROL
[7:0]
R/W
10101111
CURRENT
D4 output current control register. Default current
is 17.5 mA (typ.)
2A
D5 CURRENT
CONTROL
[7:0]
R/W
10101111
CURRENT
D5 output current control register. Default current
is 17.5 mA (typ.)
2B
D6 CURRENT
CONTROL
[7:0]
R/W
10101111
CURRENT
D6 output current control register. Default current
is 17.5 mA (typ.)
2C
D7 CURRENT
CONTROL
[7:0]
R/W
10101111
CURRENT
D7 output current control register. Default current
is 17.5 mA (typ.)
1F TO 25
www.ti.com
RESERVED FOR FUTURE USE
RESERVED FOR FUTURE USE
20
Register Name
Bit(s)
Read/
Write
Default Value
After Reset
Bit Mnemonic and Description
2D
D8 CURRENT
CONTROL
[7:0]
R/W
10101111
CURRENT
D8 output current control register. Default current
is 17.5 mA (typ.)
2E
D9 CURRENT
CONTROL
[7:0]
R/W
10101111
CURRENT
D9 output current control register. Default current
is 17.5 mA (typ.)
RESERVED FOR
FUTURE USE
[7:0]
2F TO 35
36
MISC
RESERVED FOR FUTURE USE
[7]
R/W
0xxxxxxx
VARIABLE_D_SEL
Variable D source selection
[6]
R/W
x1xxxxxx
EN_AUTO_INCR
Serial bus address auto increment enable
[5]
R/W
xx0xxxxx
POWERSAVE_EN
Powersave mode enable
[4:3]
R/W
xxx00xxx
CP_MODE
Charge pump gain selection
[2]
R/W
xxxxx0xx
PWM_PS_EN
PWM cycle powersave enable
[1]
R/W
xxxxxx0x
CLK_DET_EN
External clock detection
[0]
R/W
xxxxxxx0
INT_CLK_EN
Clock source selection
37
ENGINE1 PC
[6:0]
R/W
x0000000
PC
Program counter for engine 1
38
ENGINE2 PC
[6:0]
R/W
x0000000
PC
Program counter for engine 2
39
ENGINE3 PC
[6:0]
R/W
x0000000
PC
Program counter for engine 3
[7]
R
0xxxxxxx
LEDTEST_MEAS_DONE
Indicates when the LED test measurement is
done.
[6]
R
x1xxxxxx
MASK_BUSY
Mask bit for interrupts generated by
STARTUP_BUSY or ENGINE_BUSY.
[5]
R
xx0xxxxx
STARTUP_BUSY
This bit indicates that the startup sequence is
running.
[4]
R
xxx0xxxx
ENGINE_BUSY
This bit indicates that a program execution
engine is clearing internal registers.
[3]
R
xxxx0xxx
EXT_CLK_USED
Indicates when external clock signal is in use.
[2]
R
xxxxx0xx
ENG1_INT
Interrupt bit for program execution engine 1
[1]
R
xxxxxx0x
ENG2_INT
Interrupt bit for program execution engine 2
[0]
R
xxxxxxx0
ENG3_INT
Interrupt bit for program execution engine 3
3A
STATUS/INTERRUPT
21
www.ti.com
LP5523
Hex
Address
LP5523
Hex
Address
3B
Register Name
GPO
Bit(s)
Read/
Write
Default Value
After Reset
Bit Mnemonic and Description
[2]
R/W
xxxxx0xx
INT_CONF
INT pin can be configured to function as a GPO
with this bit
[1]
R/W
xxxxxx0x
GPO
GPO pin control
[0]
R/W
xxxxxxx0
INT_GPO
GPO pin control for INT pin (when INT_CONF is
set "1")
3C
VARIABLE
[7:0]
R/W
00000000
VARIABLE
Global 8-bit variable
3D
RESET
[7:0]
R/W
00000000
RESET
Writing 11111111 into this register resets the
LP5523
[7]
R
0xxxxxxx
TEMP_MEAS_BUSY
Indicates when temperature measurement is
active
[2]
R/W
xxxxx0xx
EN_TEMP_SENSOR
Reads the internal temperature sensor once
[1]
R/W
xxxxxx0x
CONTINUOUS_CONV
Continuous temperature measurement selection
[0]
R/W
xxxxxxx0
SEL_EXT_TEMP
Internal/external temperature sensor selection
3E
TEMP ADC CONTROL
3F
TEMPERATURE READ
[7:0]
R
00011001
TEMPERATURE
Bits for temperature information
40
TEMPERATURE WRITE
[7:0]
R/W
00000000
TEMPERATURE
Bits for temperature information
[7]
R/W
0xxxxxxx
EN_LED_TEST_ADC
[6]
R/W
x0xxxxxx
EN_LED_TEST_INT
[5]
R/W
xx0xxxxx
CONTINUOUS_CONV
Continuous LED test measurement selection
[4:0]
R/W
xxx00000
LED_TEST_CTRL
Control bits for LED test
R
N/A
41
LED TEST CONTROL
LED_TEST_ADC
LED test result
42
LED TEST ADC
[7:0]
43
RESERVED
[7:0]
RESERVED FOR FUTURE USE
44
RESERVED
[7:0]
RESERVED FOR FUTURE USE
45
ENGINE1 VARIABLE A
[7:0]
R
00000000
VARIABLE FOR ENGINE1
46
ENGINE2 VARIABLE A
[7:0]
R
00000000
VARIABLE FOR ENGINE2
47
ENGINE3 VARIABLE A
[7:0]
R
00000000
VARIABLE FOR ENGINE3
48
MASTER FADER1
[7:0]
R/W
00000000
MASTER FADER
49
MASTER FADER2
[7:0]
R/W
00000000
MASTER FADER
4A
MASTER FADER3
[7:0]
R/W
00000000
MASTER FADER
4B
RESERVED FOR
FUTURE USE
4C
ENG1 PROG START
ADDR
[6:0]
R/W
x0000000
ADDR
4D
ENG2 PROG START
ADDR
[6:0]
R/W
x0001000
ADDR
4E
ENG3 PROG START
ADDR
[6:0]
R/W
x0010000
ADDR
4F
PROG MEM PAGE SEL
[2:0]
R/W
xxxxx000
PAGE_SEL
www.ti.com
RESERVED FOR FUTURE USE
22
50
51
52
53
54
55
56
57
58
59
5A
5B
5C
5D
5E
5F
60
61
62
63
64
65
66
67
68
69
6A
6B
6C
6D
6E
6F
70
Bit(s)
Read/
Write
Default Value
After Reset
PROGRAM MEMORY
00H/10H/20H/30H/40H/
50H
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
01H/11H/21H/31H/41H/
51H
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
02H/12H/22H/32H/42H/
52H
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
03H/13H/23H/33H/43H/
53H
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
04H/14H/24H/34H/44H/
54H
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
05H/15H/25H/35H/45H/
55H
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
06H/16H/26H/36H/46H/
56H
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
07H/17H/27H/37H/47H/
57H
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
08H/18H/28H/38H/48H/
58H
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
09H/19H/29H/39H/49H/
59H
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
0AH/1AH/2AH/3AH/4AH/
5AH
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
0BH/1BH/2BH/3BH/4BH/
5BH
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
0CH/1CH/2CH/3CH/
4CH/5CH
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
0DH/1DH/2DH/36D/46D/
5DH
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
0EH/1EH/2EH/3EH/4EH/
5EH
[15:8]
R/W
00000000
[7:0]
R/W
00000000
PROGRAM MEMORY
0FH/1FH/2FH/3FH/4FH/
5FH
[15:8]
R/W
00000000
[7:0]
R/W
00000000
[7]
R
0xxxxxxx
GPO
Engine 1 mapping information, GPO pin
[0]
R
xxxxxxx0
D9
Engine 1 mapping information, D9 output
Register Name
ENG1 MAPPING MSB
23
LP5523
Hex
Address
Bit Mnemonic and Description
CMD
Every Instruction is 16-bit width.
The LP5523 can store 96 instructions. Each
instruction consists of 16 bits. Because one
register has only 8 bits, one instruction requires
two register addresses. In order to reduce
program load time the LP5523 supports address
auto-incrementation. Register address is
incremented after each 8 data bits. Thus the
whole program memory page can be written in
one serial bus write sequence.
www.ti.com
LP5523
Hex
Address
71
72
73
74
www.ti.com
Register Name
Bit(s)
Read/
Write
Default Value
After Reset
[7]
R
0xxxxxxx
D8
Engine 1 mapping information, D8 output
[6]
R
x0xxxxxx
D7
Engine 1 mapping information, D7 output
[5]
R
xx0xxxxx
D6
Engine 1 mapping information, D6 output
[4]
R
xxx0xxxx
D5
Engine 1 mapping information, D5 output
[3]
R
xxxx0xxx
D4
Engine 1 mapping information, D4 output
[2]
R
xxxxx0xx
D3
Engine 1 mapping information, D3 output
[1]
R
xxxxxx0x
D2
Engine 1 mapping information, D2 output
[0]
R
xxxxxxx0
D1
Engine 1 mapping information, D1 output
[7]
R
0xxxxxxx
GPO
Engine 2 mapping information, GPO pin
[0]
R
xxxxxxx0
D9
Engine 2 mapping information, D9 output
[7]
R
0xxxxxxx
D8
Engine 2 mapping information, D8 output
[6]
R
x0xxxxxx
D7
Engine 2 mapping information, D7 output
[5]
R
xx0xxxxx
D6
Engine 2 mapping information, D6 output
[4]
R
xxx0xxxx
D5
Engine 2 mapping information, D5 output
[3]
R
xxxx0xxx
D4
Engine 2 mapping information, D4 output
[2]
R
xxxxx0xx
D3
Engine 2 mapping information, D3 output
[1]
R
xxxxxx0x
D2
Engine 2 mapping information, D2 output
[0]
R
xxxxxxx0
D1
Engine 2 mapping information, D1 output
[7]
R
0xxxxxxx
GPO
Engine 3 mapping information, GPO pin
[0]
R
xxxxxxx0
D9
Engine 3 mapping information, D9 output
ENG1 MAPPING LSB
ENG2 MAPPING MSB
ENG2 MAPPING LSB
ENG3 MAPPING MSB
24
Bit Mnemonic and Description
75
76
Register Name
Bit(s)
Read/
Write
Default Value
After Reset
[7]
R
0xxxxxxx
D8
Engine 3 mapping information, D8 output
[6]
R
x0xxxxxx
D7
Engine 3 mapping information, D7 output
[5]
R
xx0xxxxx
D6
Engine 3 mapping information, D6 output
[4]
R
xxx0xxxx
D5
Engine 3 mapping information, D5 output
[3]
R
xxxx0xxx
D4
Engine 3 mapping information, D4 output
[2]
R
xxxxx0xx
D3
Engine 3 mapping information, D3 output
[1]
R
xxxxxx0x
D2
Engine 3 mapping information, D2 output
[0]
R
xxxxxxx0
D1
Engine 3 mapping information, D1 output
ENG3 MAPPING LSB
Bit Mnemonic and Description
[7:6]
R/W
00xxxxxx
THRESHOLD
Threshold voltage (typ.).
00 – 400mV
01 – 300mV
10 – 200mV
11 – 100mV
[5]
R/W
xx0xxxxx
ADAPTIVE_THRESH_EN
Activates adaptive threshold.
GAIN CHANGE CTRL
LP5523
Hex
Address
[4:3]
R/W
xxx00xxx
TIMER
00 – 5ms
01 – 10 ms
10 – 50 ms
11 – Infinite
[2]
R/W
xxxxx0xx
FORCE_1x
Activates 1.5x to 1x timer.
Control Register Details
hold). The difference between step and execute once is
that execute once does not increment the PC.
00 — Bits [3:2] ENGINE2_EXEC
Engine 2 program execution control. Equivalent to above
definition of control bits. Program start address can be
programmed to Program Counter (PC) register 38H.
00 — Bits [1:0] ENGINE3_EXEC
Engine 3 program execution control. Equivalent to engine
1 control bits. Program start address can be programmed
to Program Counter (PC) register 39H.
01 ENGINE CONTROL2
Operation modes are defined in this register.
Disabled: Engines can be configured to disabled mode
each one separately.
Load program: Writing to program memory is allowed
only when the engine is in load program operation mode
and engine busy bit (reg 3A) is not set. Serial bus master
should check the busy bit before writing to program
memory or allow at least 1ms delay after entering to load
mode before memory write, to ensure initalization. All the
three engines are in hold while one or more engines are
in load program mode. PWM values are frozen, also.
00 ENABLE/ ENGINE CONTROL1
00 - Bit [6] CHIP_EN
1 = internal startup sequence powers up all the needed
internal blocks and the device enters normal mode.
0 = standby mode is entered. Control registers can still be
written or read, excluding bits[5:0] in reg 00 (this register),
registers 16h to 1E (LED PWM registers) and 37h to 39h
(program counters).
00 — Bits [5:4] ENGINE1_EXEC
Engine 1 program execution control. Execution register
bits define how the program is executed. Program start
address can be programmed to Program Counter (PC)
register 37H.
00 = hold: Hold causes the execution engine to finish the
current instruction and then stop. Program counter (PC)
can be read or written only in this mode.
01 = step: Execute the instruction at the location pointed
by the PC, increment the PC by one and then reset
ENG1_EXEC bits to 00 (i.e. enter hold).
10 = free run: Start program execution from the location
pointed by the PC.
11 = execute once: Execute the instruction pointed by the
current PC value and reset ENG1_EXEC to 00 (i.e. enter
25
www.ti.com
LP5523
Program execution continues when all the engines are out
of load program mode. Load program mode resets the
program counter of the respective engine. Load program
mode can be entered from the disabled mode only.
Entering load program mode from the run program mode
is not allowed.
Run Program: Run program mode executes the
instructions stored in the program memory. Execution
register (ENG1_EXEC etc.) bits define how the program
is executed (hold, step, free run or execute once).
Program start address can be programmed to the Program
Counter (PC) register. The Program Counter is reset to
zero when the PC’s upper limit value is reached.
Halt: Instruction execution aborts immediately and engine
operation halts.
01 — Bit [5:4] ENGINE1_MODE
00 = disabled.
01 = load program to SRAM, reset engine 1 PC.
10 = run program as defined by ENGINE1_EXEC bits.
11 = halts the engine.
01 — Bits [3:2] ENGINE2_MODE
00 = disabled.
01 = load program to SRAM, reset engine 2 PC.
10 = run program as defined by ENGINE2_EXEC bits.
11 = halts the engine.
01 — Bits [3:2] ENGINE3_MODE
00 = disabled.
01 = load program to SRAM, reset engine 3 PC.
10 = run program as defined by ENGINE3_EXEC bits.
11 = halts the engine.
02 OUTPUT DIRECT/RATIOMETRIC MSB
A particular feature of the LP5523 is the ratiometric up/
down dimming of the RGB-LEDs. In other words, the LED
driver PWM output will vary in a ratiometric manner. By a
ratiometric approach the emitted color of an RGB–LED
remains the same regardless of the initial magnitudes of
the R/G/B PWM outputs. For example, if the PWM output
of the red LED output is doubled, the output of green LED
is doubled also.
02 — Bit [0] D9_RATIO_EN
1 = enables ratiometric diming for D9 output.
0 = disables ratiometric dimming for D9 output.
03 OUTPUT DIRECT/RATIOMETRIC LSB
03 — Bit [7] D8_RATIO_EN
1 = enables ratiometric diming for D8 output.
0 = disables ratiometric dimming for D8 output.
03 — Bit [0] D1_RATIO_EN to Bit [6] D7_RATIO_EN
The options for D1 output to D7 output are the same as
above — see the “03 — Bit [7]” section.
04 OUTPUT ON/OFF CONTROL MSB
04 — Bit [0] D9_ON
1 = D9 output ON.
0 = D9 output OFF.
Note: Engine mapping overrides this control.
05 OUTPUT ON/OFF CONTROL MSB
05 — Bit [7] D8_ON
1 = D8 output ON.
0 = D8 output OFF.
Note: Engine mapping over rides this control.
05 — Bit [0] D1_ON to Bit [6] D7_ON
The options for D1 output to D7 output are the same as
above — see the “05 — Bit [7]” section.
this register sets the correction factor for the D1 output
temperature compensation and selects between linear
and logarithmic PWM brightness adjustment. By using
logarithmic PWM-scale the visual effect looks like linear.
When the logarithmic adjustment is enabled, the chip
handles internal PWM values with 12-bit resolution. This
allows very fine-grained PWM control at low PWM duty
cycles.
06 — Bit [7:6] MAPPING
00 = no master fader set, clears master fader set for D1.
Default setting.
01 = MASTER FADER1 controls the D1 output.
10 = MASTER FADER2 controls the D1 output.
11 = MASTER FADER3 controls the D1 output.
The duty cycle on D1 output will be D1 PWM register value
(address 16H) multiplied with the value in the MASTER
FADER register.
06 — Bit [5] LOG_EN
0 = linear adjustment.
1 = logarithmic adjustment.
This bit is effective for both the program execution engine
control and direct PWM control.
06 — Bit [4:0] TEMP_COMP
The reference temperature is +25°C (i.e. the temperature
at which the compensation has no effect) and the
correction factor (slope) can be set in 0.1% 1/°C steps to
any value between −1.5% 1/°C and +1.5% 1/°C, with a
default to 0.0% 1/°C.
Correction factor [%]
00000
Not activated - default setting after
reset.
11111
−1.5 1/°C
11110
−1.4 1/°C
...
...
10001
−0.1 1/°C
10000
0 1/°C
00001
+0.1 1/°C
...
...
01110
+1.4 1/°C
01111
+1.5 1/°C
The PWM duty cycle at temperature T (in centigrade) can be
obtained as follows: PWMF = [PWMS - (25 - T) * correction
factor * PWMS] / 2, where PWMF is the final duty cycle at
temperature T, PWMS is the set PWM duty cycle (PWM duty
cycle is set in registers 16H to 1EH) and the value of the correction factor is obtained from the table above.
For example, if the set PWM duty cycle in register 16H is 90%,
temperature T is −10°C and the chosen correction factor is
+1.5% 1/°C, the final duty-cycle PWMF for D1 output will be
[90% - (25°C − (−10°C) ) * 1.5% 1/°C * 90%]/2 = [90% - 35 *
0.015 * 90%]/2 = 21.4%. Default setting 00000 means that the
temperature compensation is non-active and the PWM output
(0 to 100%) is set solely by PWM registers D1 PWM to D9
PWM.
06 D1 CONTROL
This is the register used to assign the D1 output to the
MASTER FADER group 1, 2, or 3, or none of them. Also,
www.ti.com
TEMP_COMP
bits
26
30043617
FIGURE 12. Direct PWM Control Bits vs. PWM Duty Cycle
17 D2 PWM to 1E D9 PWM
PWM duty cycle control for outputs D2 to D9. The control
registers and control bits for D2 output to D9 output are
similar to that given to D1.
26 D1 CURRENT CONTROL
D1 LED driver output current control register. The
resolution is 8-bits and step size is 100 μA. .
CURRENT bits
Output Current (typ.)
00000000
0.0 mA
00000001
0.1 mA
00000010
0.2 mA
...
...
10101111
17.5 mA default setting
....
....
11111110
25.4 mA
11111111
25.5 mA
27 D2 CURRENT CONTROL to 2E D9 CURRENT CONTROL
The control registers and control bits for D2 output up to
D9 output are similar to that given to D1 output.
36 MISC
This register contains miscellaneous control bits.
36 — Bit [7] VARIABLE_D_SEL
Variable D source selection.
27
www.ti.com
LP5523
1 = variable D source is the LED test ADC output (LED
TEST ADC). This allows, for example, program execution
control with analog signal.
0 = variable D source is the register 3C (VARIABLE).
36 — Bit [6] EN_AUTO_INCR
The automatic increment feature of the serial bus address
enables a quick memory write of successive registers
within one transmission.
1 = serial bus address automatic increment is enabled.
0 = serial bus address automatic increment is disabled.
36 — Bit [5] POWERSAVE_EN
1 = power save mode is enabled.
0 = power save mode is disabled. See section “Automatic
Power Save Mode” for further details.
36 — Bits [4:3] CP_MODE
Charge pump operation mode.
00 = OFF.
01 = forced to bypass mode (1x).
10 = forced to 1.5x mode; output voltage is boosted to
4.5V.
11 = automatic mode selection.
36 — Bit [2] PWM_PS_EN
Enables PWM powersave operation. Significant power
savings can be achieved, for example, during ramp
instruction.
36 — Bits [1:0] CLK_DET_EN and INT_CLK_EN
Program execution is clocked with internal 32.7 kHz clock
or with external clock. Clocking is controlled with bits
INT_CLK_EN and CLK_DET_EN in the following way:
00 = forced external clock (CLK pin).
01 = forced internal clock.
10 = automatic selection.
11 = internal clock.
External clock can be used if a clock signal is present on
CLK-pin. External clock frequency must be 32.7 kHz for
correct operation. If a higher or a lower frequency is used,
it will affect on the program execution engine operation
speed. The detector block does not limit the maximum
frequency. External clock status can be checked with read
only bit EXT_CLK_USED in register address 3A, when the
external clock detection is enabled (Bit [1] CLK_DET_EN
= high).
If external clock is not used in the application, CLK pin
should be connected to GND to avoid oscillation on this
pin and extra current consumption.
37 ENGINE1 PC
Program counter starting value for program execution
engine 1; A value from 0000000 to 1011111. The
maximum value depends on program memory allocation
between the three program execution engines.
38 ENGINE2 PC
38 — Bits [6:0] PC
Program counter starting value for program execution
engine 2; A value from 0000000 to 1011111.
39 ENGINE3 PC
39 — Bits [6:0] PC
Program counter starting value for program execution
engine 3; A value from 0000000 to 1011111.
3A STATUS/INTERRUPT
3A — Bit [7] LEDTEST_MEAS_DONE
This bit indicates when the LED test is done, and the result
is written to the LED TEST ADC register. Typically the
conversion takes 2.7 milliseconds to complete.
1 = LED test done.
0 = LED test not done.
07 D2 CONTROL to 0E D9 CONTROL
The control registers and control bits for D2 output to D9
output are similar to that given to D1, see the 06 – Bit [5]
and 06 – Bits [4:0] sections.
16 D1 PWM
This is the PWM duty cycle control for D1 output. D1 PWM
register is effective during direct control operation - direct
PWM control is active after power up by default. Note:
serial bus address auto increment is not supported for
register addresses from 16 to 1E.
16 — Bits [7:0] PWM
These bits set the D1 output PWM as shown in the figure
below. Note: if the temperature compensation is active, the
maximum PWM duty cycle is 50% at +25°C. This is
required to allow enough headroom for temperature
compensation over the temperature range −40 °C to 90°
C.
LP5523
This bit is a read-only bit, and it is cleared (to “0”)
automatically after a read operation.
3A — Bit [6] MASK_BUSY
Mask bit for interrupts generated by STARTUP_BUSY or
ENGINE_BUSY.
1 = Interrupt events will be masked i.e. no external
interrupt will be generated from STARTUP_BUSY or
ENGINE_BUSY event (default).
0 = External interrupt will be generated when
STARTUP_BUSY or ENGINE_BUSY condition is no
longer true. Reading the register 3A clears the status bits
[5:4] and releases INT pin to high state.
3A — Bit [5] STARTUP_BUSY
A status bit which indicates that the device is running the
internal startup sequence. See Modes of Operation for
details.
1 = internal startup sequence running. Note:
STARTUP_BUSY = 1 always when CHIP_EN bit is "0".
0 = internal startup sequence completed.
3A — Bit [4] ENGINE_BUSY
A status bit which indicates that a program execution
engine is clearing internal registers. Serial bus master
should not write or read program memory, or registers
00H, 37H to 39H or 4CH to 4EH, when this bit is set to "1".
1 = at least one of the engines is clearing internal registers.
0 = engine ready.
3A — Bit [3] EXT_CLK_USED
1 = external clock detected.
0 = external clock not detected.
This bit is high when external clock signal on CLK pin is
detected. CLK_DET_EN bit high in address 36 enables
the clock detection.
3A — Bits [2:0] ENG1_INT, ENG2_INT, ENG3_INT
1 = interrupt set.
0 = interrupt unset/cleared.
Interrupt bits for program execution engine 1, 2 and 3,
respectively. These bits are set by END or INT instruction.
Reading the interrupt bit clears the interrupt.
3B GPO
The LP5523 has one General Purpose Output pin (GPO).
Status of the pin can be controlled with this register. Also,
INT pin can be configured to function as a GPO by setting
the bit INT_CONF. When INT is configured to function as
a GPO, output level is defined by the VDD voltage.
3B — Bit [2] INT_CONF
0 = INT pin is set to function as an interrupt pin (default).
1 = INT pin is configured to function as a GPO.
3B — Bit [1] GPO
0 = GPO pin state is low.
1 = GPO pin state is high.
GPO pin is a digital CMOS output, and no pulldown
resistor is needed.
3B — Bit [0] INT_GPO
0 = INT pin state is low (if INT_CONF = 1).
1 = INT pin state is high (if INT_CONF = 1).
When INT pin’s GPO function is disabled, it operates as
an open drain pin. INT signal is active low; i.e., when
interrupt signal is sent, the pin is pulled to GND. External
pullup resistor is needed for proper functionality.
3C VARIABLE
3C — Bits [7:0] VARIABLE
These bits are used for storing a global 8-bit variable.
Variable can be used to control program flow.
3D RESET
3D — Bits [7:0] RESET
www.ti.com
Writing 11111111 into this register resets the LP5523.
Internal registers are reset to the default values. Reading
RESET register returns 00000000.
3E TEMP ADC CONTROL
3E — Bit [7] TEMP_MEAS_BUSY
1 = temperature measurement active.
0 = temperature measurement done or not activated.
3E — Bit [2] EN_TEMP_SENSOR
1 = enables internal temperature sensor. Every time when
EN_TEMP_SENSOR is written high a new measurement
period is started. The length of the measurement period
depends on temperature. At 25°C a measurement takes
20 milliseconds. Temperature can be read from register
3F.
0 = temp sensor disabled.
3E — Bit [1] CONTINUOUS _CONV
This bit is effective when EN_TEMP_SENSOR = 1.
1 = continuous temperature measurement. Not active
when the device is in power save.
0 = new temperature measurement period initiated during
startup or after exit from power-save mode.
3E — Bit [0] SEL_EXT_TEMP
1 = temperature compensation source register addr 40H.
0 = temperature compensation source register addr 3FH.
3F TEMPERATURE READ
3F — Bits [7:0] TEMPERATURE
These bits are used for storing an 8-bit temperature
reading acquired from the internal temperature sensor.
This register is a read-only register. Temperature reading
is stored in 8-bit two's complement format — see the table
below.
TEMPERATURE
READ bits
Temperature interpretation
(typ.) °C
11010111
−41
11011000
−40
...
...
11111110
−2
11111111
−1
00000000
0
00000001
1
00000010
2
...
...
01011000
88
01011001
89
40 TEMPERATURE WRITE
40 — Bits [7:0] TEMPERATURE
These bits are used for storing an 8-bit temperature
reading acquired from an external sensor, if such a sensor
is used. Temperature reading is stored in 8-bit two's
complement format, like in 3F TEMPERATURE READ
register.
Note: When writing temperature data outside the range of the
temperature compensation: Values greater than 89°C will be set
to 89°C; values less than −39°C will be set to −39°C.
41 LED TEST CONTROL
LED test control register
41 — Bit [7] EN_LEDTEST_ADC
Writing this bit high (1) fires single LED test conversion.
LED test measurement cycle is 2.7 milliseconds.
41 — Bit [6] EN_LEDTEST_INT
28
LED_TEST_CTRL bits
Measurement
00000
D1
00001
D2
00010
D3
00011
D4
00100
D5
00101
D6
00110
D7
00111
D8
01000
D9
01001 to 01110
Reserved
01111
VOUT
10000
VDD
10001
INT-pin voltage
10010 to 11111
N/A
46 ENGINE2 VARIABLE A
46 — Bits [7:0] VARIABLE FOR ENGINE2
These bits are used for Engine 2 local variable. Read-only
register.
47 ENGINE3 VARIABLE A
47 — Bits [7:0] VARIABLE FOR ENGINE3
These bits are used for Engine 3 local variable. Read-only
register.
48 MASTER FADER1
48 — Bits [7:0] MASTER_FADER
An 8-bit register to control all the LED-drivers mapped to
MASTER FADER1. Master fader allows the user to control
dimming of multiple LEDS with a single serial bus write.
This is a faster method to control the dimming of multiple
LEDs compared to the dimming done with the PWM
registers (address 16H to 1EH), which would need multiple
writes.
49 MASTER FADER2
49 — Bits [7:0] MASTER_FADER
An 8-bit register to control all the LED-drivers mapped to
MASTER FADER2. See MASTER FADER1 description.
4A MASTER FADER3
4A — Bits [7:0] MASTER_FADER
An 8-bit register to control all the LED-drivers mapped to
MASTER FADER3. See MASTER FADER1 description.
4C ENG1 PROG START ADDR
Program memory allocation for program execution
engines is defined with PROG START ADDR registers.
4C — Bits [6:0] — ADDR
Engine 1 program start address.
4D ENG2 PROG START ADDR
4D — Bits [6:0] — ADDR
Engine 2 program start address.
4E ENG3 PROG START ADDR
4E — Bits [6:0] — ADDR
Engine 3 program start address.
4F PROG MEM PAGE SELECT
4F — Bits [2:0] — PAGE_SEL
These bits select the program memory page. The program
memory is divided into six pages of 16 instructions; thus,
the total amount of the program memory is 96 instructions.
70H ENG1 MAPPING MSB
Valid engine 1-to-LED -mapping information can be read
from ENG1 MAPPING register.
70H — Bit [7] GPO
1 = GPO pin is mapped to the program execution engine
1.
0 = GPO pin non-mapped to the program execution engine
1.
70H — Bit [0] D9
1 = D9 pin is mapped to the program execution engine 1.
0 = D9 pin non-mapped to the program execution engine
1.
71H ENG1 MAPPING LSB
71H — Bit [7] D8
1 = D8 pin is mapped to the program execution engine 1.
0 = D8 pin non-mapped to the program execution engine
1.
71H — Bit [6] D7
1 = D7 pin is mapped to the program execution engine 1.
0 = D7 pin non-mapped to the program execution engine
1.
42 LED TEST ADC
42 — Bits [7:0] LED_TEST_ADC
This is used to store the LED test result. Read-only
register. LED test ADC's least significant bit corresponds
to 30 mV. The measured voltage V (typ.) is calculated as
follows: V = (RESULT(DEC) x 0.03 - 1.478 V. For example,
if the result is 10100110 = 166(DEC), the measured
voltage is 3.50V (typ.). See the figure below.
30043618
FIGURE 13. LED Test Results vs. Measured Voltage
45 ENGINE1 VARIABLE A
45 — Bits [7:0] VARIABLE FOR ENGINE1
These bits are used for Engine 1 local variable. Read-only
register.
29
www.ti.com
LP5523
1 = interrupt signal will be sent to the INT pin when the LED
test is accomplished.
0 = no interrupt signal will be sent to the INT pin when the
LED test is accomplished.
Interrupt can be cleared by reading STATUS/INTERRUPT
register 3A.
41 — Bit [5] CONTINUOUS_CONV
1 = continuous LED test measurement. Not active in
power-save mode.
0 = continuous conversion is disabled.
41 — Bits [4:0] LED__TEST_CTRL
These bits are used for choosing the LED driver output to
be measured. VDD , INT-pin and charge-pump output
voltage can be measured, also.
LP5523
requirements of the application at hand. Some
applications need to be optimized for efficiency and others
need to be optimized for minimum EMI, for example.
76H - Bits[7:6] THRESHOLD
Threshold voltage (typ.) pre-setting. Bits set the threshold
voltage at which the charge-pump gain changes from 1.5x
to 1x. The threshold voltage is defined as the voltage
difference between highest voltage output (D1 to D6) and
input voltage VDD: VTHRESHOLD = VDD - MAX(voltage on D1
to D6).
If VTHRESHOLD is larger than the set value (100 mV to 400
mV), the charge pump is in 1x mode.
00 = 400 mV
01 = 300 mV
10 = 200 mV
11 = 100 mV
71H — Bit [5] D6
1 = D6 pin is mapped to the program execution engine 1.
0 = D6 pin non-mapped to the program execution engine
1.
71H — Bit [4] D5
1 = D5 pin is mapped to the program execution engine 1.
0 = D5 pin non-mapped to the program execution engine
1.
71H — Bit [3] D4
1 = D4 pin is mapped to the program execution engine 1.
0 = D4 pin non-mapped to the program execution engine
1.
71H — Bit [2] D3
1 = D3 pin is mapped to the program execution engine 1.
0 = D3 pin non-mapped to the program execution engine
1.
71H — Bit [1] D2
1 = D2 pin is mapped to the program execution engine 1.
0 = D2 pin non-mapped to the program execution engine
1.
71H — Bit [0] D1
1 = D1 pin is mapped to the program execution engine 1.
0 = D1 pin non-mapped to the program execution engine
1.
72H ENG2 MAPPING MSB
Valid engine 2-to-LED -mapping information can be read
from ENG2 MAPPING register.
72H — Bit [7] GPO
See description above for ENG1 MAPPING register.
72H — Bit [0] D9
See description above for ENG1 MAPPING register.
73H ENG2 MAPPING LSB
73H — Bit [7] D8 to Bit [0] D1
See description above for ENG1 MAPPING register.
74H ENG3 MAPPING MSB
Valid engine 3-to-LED -mapping information can be read
from ENG3 MAPPING register.
74H — Bit [7] GPO
See description above for ENG1 MAPPING register.
74H — Bit [0] D9
See description above for ENG1 MAPPING register.
75H ENG3 MAPPING LSB
75H — Bit [7] D8 to Bit [0] D1
See description above for ENG1 MAPPING register.
76H GAIN_CHANGE_CTRL
With hysteresis and timer bits the user can optimize the
charge pump performance to better meet the
www.ti.com
Note: Values above are typical and should not be used as productspecification.
Note: Writing to threshold [7:6] bits by the user overrides factory
settings. Factory settings aren't user-accessible.
76H - Bit [5] ADAPTIVE_TRESH_EN
1 = Adaptive threshold enabled.
0 = Adaptive threshold disabled.
Gain-change hysteresis prevents the mode from toggling
back and forth (1x -> 1.5x -> 1x...) , which would cause
ripple on VIN and LED flicker. When the adaptive threshold
is enabled, the width of the hysteresis region depends on
the choice of threshold bits (see above), saturation of the
current sources, charge pump load current, PWM overlap
and temperature.
76H - Bits [4:3] TIMER
A forced mode change from 1.5x to 1x is attempted at the
interval specified with these bits. Mode change is allowed
if there is enough voltage over the LED drivers to ensure
proper operation. Set FORCE_1x to "1" (see below) to
activate this feature.
00 = 5ms
01 = 10 ms
10 = 50 ms
11 = infinite. The charge pump switches gain from 1x mode
to 1.5x mode only. The gain reset back to 1x is enabled
under certain conditions, for example in the powersave
mode.
76H - Bit [2] FORCE_1x
Activates forced mode change. In forced mode, charge
pump mode change from 1.5x to 1x is attempted at the
constant interval specified with the TIMER bits.
1 = forced mode changes enabled.
0 = forced mode changes disabled.
30
The LP5523 has three independent programmable execution
engines. All the program execution engines have their own
program memory block allocated by the user. Note that in order to access program memory the operation mode needs to
be load program, at least for one of the three program exe-
LP5523 LED Driver Instructions
Bit
[15]
Bit
[14]
ramp (i)
0
prescale
ramp (ii)
1
0
0
0
0
1
0
0
set_pwm
(i)
0
1
0
0
0
0
0
0
set_pwm
(ii)
1
0
0
0
0
1
0
0
0
1
1
0
0
0
wait
0
prescale
0
0
0
0
0
0
0
0
0
Bit
[5]
Bit
[4]
Bit
[3]
Bit
[2]
Bit
[1]
Bit
[0]
Inst.
Bit
[13]
Bit
[12]
Bit
[11]
Bit
[10]
Bit
[9]
Bit
[8]
step time
Bit
[7]
Bit
[6]
Bit
[5]
sign
time
Bit
[4]
Bit
[3]
Bit
[2]
Bit
[1]
Bit
[0]
# of increments
0
0
prescale
sign
step time
# of
increments
PWM value
PWM value
(i) This opcode is used with numerical operands. (ii) This opcode is used with variables.
LP5523 LED Mapping Instructions
Bit
[15]
Bit
[14]
Bit
[13]
Bit
[12]
Bit
[11]
Bit
[10]
Bit
[9]
Bit
[8]
Bit
[7]
mux_ld_start
1
0
0
1
1
1
1
0
0
mux_map_start
1
0
0
1
1
1
0
0
0
SRAM address 0-95
mux_ld_end
1
0
0
1
1
1
0
0
1
SRAM address 0 - 95
mux_sel
1
0
0
1
1
1
0
1
0
mux_clr
1
0
0
1
1
1
0
1
0
0
0
0
0
0
0
0
mux_map_next
1
0
0
1
1
1
0
1
1
0
0
0
0
0
0
0
mux_map_prev
1
0
0
1
1
1
0
1
1
1
0
0
0
0
0
0
mux_ld_next
1
0
0
1
1
1
0
1
1
0
0
0
0
0
0
1
mux_ld_prev
1
0
0
1
1
1
0
1
1
1
0
0
0
0
0
1
mux_ld_addr
1
0
0
1
1
1
1
1
0
SRAM address 0-95
mux_map_addr
1
0
0
1
1
1
1
1
1
SRAM address 0-95
Inst.
31
Bit
[6]
SRAM address 0-95
LED select
www.ti.com
LP5523
cution engines. Program execution is clocked with a 32.7 kHz
clock. This clock can be generated internally or external 32
kHz clock can be connected to CLK pin. Using external clock
enables synchronization of LED timing to the external clock
signal.
Supported instruction set is listed in the tables below:
Instruction Set
LP5523
LP5523 Branch Instructions
Inst.
Bit
[15]
Bit
[14]
Bit
[13]
Bit
[12]
Bit
[11]
rst
0
0
0
0
0
branch
(i)
1
0
1
loop count
branch
(ii)
1
0
0
0
Bit
[10]
0
0
Bit
[9]
0
Bit
[8]
0
Bit
[7]
0
Bit
[6]
0
Bit
[5]
0
Bit
[4]
0
Bit
[3]
0
Bit
[2]
0
Bit
[1]
0
Bit
[0]
0
step number
1
1
step number
loop count
int
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
end
1
1
0
int
reset
0
0
0
0
0
0
0
0
0
0
0
wait for trigger
send a trigger
trigger
1
1
1
ext.
trig
X
X
E3
E2
E1
ext.
trig
X
E3
E2
E1
jne
1
0
0
0
1
0
0
Number of instructions to be
skipped if the operation returns
true
variable
1
variable
2
jl
1
0
0
0
1
0
1
Number of instructions to be
skipped if the operation returns
true
variable
1
variable
2
jge
1
0
0
0
1
1
0
Number of instructions to be
skipped if the operation returns
true
variable
1
variable
2
je
1
0
0
0
1
1
1
Number of instructions to be
skipped if the operation returns
true
variable
1
variable
2
X
0
X means do not care. (i) This opcode is used with numerical operands. (ii) This opcode is used with variables.
LP5523 Data Transfer and Arithmetic Instructions
Inst.
Bit
[15]
Bit
[14]
Bit
[13]
Bit
[12]
Bit
[11]
Bit
[10]
Bit
[9]
Bit
[8]
Bit
[7]
Bit
[6]
Bit
[5]
Bit
[4]
Bit
[3]
ld
1
0
0
1
target
variable
0
0
8-bit value
add (i)
1
0
0
1
target
variable
0
1
8-bit value
add (ii)
1
0
0
1
target
variable
1
1
sub (i)
1
0
0
1
target
variable
1
0
sub (ii)
1
0
0
1
target
variable
1
1
www.ti.com
32
0
0
0
0
Bit
[2]
variable
1
Bit
[1]
Bit
[0]
variable
2
8-bit value
0
0
0
1
variable
1
variable
2
RAMP
This is the instruction useful for smoothly changing from one
PWM value into another PWM value on the D1 to D9 outputs;
in other words, generating ramps (with a negative or positive
slope). The LP5523 allows programming very fast and very
slow ramps.
Ramp instruction generates a PWM ramp, using the effective
PWM value as a starting value. At each ramp step the output
is incremented/decremented by one unit, unless the number
of increments is 0. Time span for one ramp step is defined
with prescale -bit [14] and step time -bits [13:9]. Prescale = 0
sets 0.49 ms cycle time and prescale = 1 sets 15.6 ms cycle
time; so the minimum time span for one step is 0.49 ms
(prescale * step time span = 0.49ms x 1) and the maximum
time span is 15.6 ms x 31 = 484ms/step.
Number of increments value defines how many steps will be
taken during one ramp instruction; increment maximum value
is 255d, which corresponds increment from zero value to the
maximum value. If PWM reaches minimum/maximum value
(0/255) during the ramp instruction, ramp instruction will be
executed to the end regardless of saturation. This enables
Name
prescale
sign
Value (d)
Description
0
Divides master clock (32.7 kHz) by 16 = 2048 Hz -> 0.488 ms cycle time
1
Divides master clock (32.7 kHz) by 512 = 64 Hz -> 15.625 ms cycle time
0
Increase PWM output
1
Decrease PWM output
step time (i)
1 - 31
One ramp increment done in (step time) x (prescale).
# of increments
(i)
0 - 255
The number of increment/decrement cycles. Note: Value 0 takes the same time as increment
by 1, but it is the wait instruction.
0-3
One ramp increment done in (step time) x (prescale).
Step time is loaded with the value (5 LSB bits) of the variable defined below.
0 = local variable A
1 = local variable B
2 = global variable C
3 = register address 3CH variable D value, or register address 42H value.
The value of the variable should be from 00001b to 11111b (1d to 31d) for correct operation.
0-3
The number of increment/decrement cycles. Value is taken from variable defined below:
0 = local variable A
1 = local variable B
2 = global variable C
3 = register address 3CH variable D value, or register address 42H value.
step time (ii)
# of increments
(ii)
(i) Valid for numerical operands. (ii) Valid for variables.
•
•
RAMP INSTRUCTION APPLICATION EXAMPLE
Suppose that the LED dimming is controlled according to the
linear scale and effective PWM value at the moment t=0 is
140d (~55%,), as shown in the figure below, and we want to
reach a PWM value of 148d (~58%) at the moment t = 1.5s.
The parameters for the RAMP instruction will be:
•
•
33
Prescale = 1 → 15.625 ms cycle time
Step time = 12 → step time span will be 12*15.625 ms =
187.5 ms
Sign = 0 → increase PWM output
# of increments = 8 → take 8 steps
www.ti.com
LP5523
ramp instruction to be used as a combined ramp & wait instruction. Note: Ramp instruction is wait instruction when the
increment bits [7:0] are set to zero.
Programming ramps with variables is very similar to programming ramps with numerical operands. The only difference is
that step time and number of increments are captured from
variable registers, when the instruction execution is started.
If the variables are updated after starting the instruction execution, it will have no effect on instruction execution. Again,
at each ramp step the output is incremented/decremented by
one unless increment is 0. Time span for one step is defined
with prescale and step time bits. Step time is defined with
variable A, B, C or D. Variables A, B and C are set with ldinstruction. Variable D is a global variable and can be set by
writing the VARIABLE register (address 3C). LED TEST ADC
register (address 42) can be used as a source for the variable
D, as well. Note: Variable A is the only local variable which
can be read throughout the serial bus. Of course, the variable
stored in 3CH can be read (and written), too.
Setting register 06H, 07H, or 08H bit LOG_EN high/low sets
logarithmic (1) or linear ramp (0). By using the logarithmic
ramp setting the visual effect appears like a linear ramp, because the human eye behaves in a logarithmic way.
LED Driver Instructions
LP5523
30043619
FIGURE 14. Example of Ramp Instruction
www.ti.com
34
Name
PWM value
(i)
variable (ii)
Value (d)
0 - 255
0-3
WAIT
When a wait instruction is executed, the engine is set in wait
status, and the PWM values on the outputs are frozen.
Name
Description
PWM output duty cycle 0 - 100%
Value (d)
Description
0
Divide master clock (32.7 kHz) by 16
which means 0.488 ms cycle time.
1
Divide master clock (32 768 Hz) by
512 which means 15.625 ms cycle
time.
prescale
0 = local variable A
1 = local variable B
2 = global variable C
3 = register address 3CH variable D
value, or register address 42H
value.
time
35
1 - 31
Total wait time will be = (time) x
(prescale). Maximum 484 ms,
minimum 0.488 ms.
www.ti.com
LP5523
(i) Valid for numerical operands. (ii) Valid for variables.
SET_PWM
This instruction is used for setting the PWM value on the outputs D1 to D9 without any ramps. Set PWM output value from
0 to 255 with PWM value bits [7:0]. Instruction execution takes
sixteen 32 kHz clock cycles (=488 µs).
LP5523
this moment, after mux_map_next instruction call the 3rd row
will be active. If the mapping table end address is reached,
activation will roll to the mapping table start address next time
when the mux_map_next instruction is called. Engine will not
push a new PWM value to the LED driver output before
set_pwm or ramp instruction is executed. If the mapping has
been released from an LED, the value in the PWM register
will still control the LED brightness. If the mapping is released
from the GPO pin, serial bus control takes over the GPO state.
MUX_LD_NEXT
Similar than the mux_map_next instruction, but only the index
pointer will be set to point to the next row i.e. no mapping will
be set and the engine-to-LED-driver connection will not be
updated.
MUX_MAP_PREV
This instruction sets the previous row active in the mapping
table each time it is called. For example, if the 3rd row is active
at this moment, after mux_map_prev instruction call the 2nd
row will be active. If the mapping table start address is
reached, activation will roll to the mapping table end address
next time the mux_map_prev instruction is called. Engine will
not push a new PWM value to the LED driver output before
set_pwm or ramp instruction is executed. If the mapping has
been released from an LED, the value in the PWM register
will still control the LED brightness. If the mapping is released
from the GPO pin, serial bus control takes over the GPO state.
MUX_LD_PREV
Similar than the mux_map_prev instruction, but only the index
pointer will be set to point to the previous row i.e. no mapping
will be set and the engine-to-LED-driver connection will not
be updated.
MUX_MAP_ADDR
Mux_map_addr sets the index pointer to point the mapping
table row defined by bits [6:0] and sets the row active. Engine
will not push a new PWM value to the LED driver output before set_pwm or ramp instruction is executed. If the mapping
has been released from an LED, the value in the PWM register will still control the LED brightness. If the mapping is
released from the GPO pin, serial bus control takes over the
GPO state.
LED Mapping Instructions
These instructions define the engine-to-LED mapping. The
mapping information is stored in a table, which is stored in the
SRAM (program memory of the LP5523). LP5523 has three
program execution engines which can be mapped to 9 LED
drivers or to one GPO pin. One engine can control one or
multiple LED drivers. There are totally eleven instructions for
the
engine-to-LED-driver
control:
mux_ld_start,
mux_map_start,
mux_ld_end,
mux_sel,
mux_clr,
mux_map_next,
mux_map_prev,
mux_ld_next,
mux_ld_prev, mux_ld_addr and mux_map_addr.
MUX_LD_START; MUX_LD_END
Mux_ld_start and mux_ld_end define the mapping table location in the memory.
Name
SRAM
address
Value (d)
0-95
Description
Mapping table start/end address
MUX_MAP_START
Mux_map_start defines the mapping table start address in the
memory, and the first row of the table will be activated
(mapped) at the same time.
Name
SRAM
address
Value (d)
0-95
Description
Mapping table start address
MUX_SEL
With mux_sel instruction one, and only one, LED driver (or
the GPO-pin) can be connected to a program execution engine. Connecting multiple LEDs to one engine is done with
the mapping table. After the mapping has been released from
an LED, PWM register value will still control the LED brightness. If the mapping is released from the GPO pin, serial bus
control takes over the GPO state.
Name
Value (d)
Description
0 = no drivers selected
1 = LED1 selected
2 = LED2 selected
LED select
0-16
Name
...
SRAM
address
9 = LED9 selected
16 = GPO
0-95
Description
Any SRAM address
mapping data.
containing
MUX_LD_ADDR
Mux_ld_addr sets the index pointer to point the mapping table
row defined by bits [6:0], but the row will not be set active.
MUX_CLR
Mux_clr clears engine-to-driver mapping. After the mapping
has been released from an LED, the PWM register value will
still control the LED brightness. If the mapping is released
from the GPO pin, serial bus control takes over the GPO state.
MUX_MAP_NEXT
This instruction sets the next row active in the mapping table
each time it is called. For example, if the 2nd row is active at
www.ti.com
Value (d)
Name
SRAM
address
36
Value (d)
0-95
Description
Any SRAM address
mapping data.
containing
BRANCH
Branch instruction is mainly indented for repeating a portion
of the program code several times. Branch instruction loads
Name
Accepted Value (d)
Description
loop count (i)
0-63
The number of loops to be done. “0” means an infinite loop.
step number
0-95
The step number to be loaded to program counter.
Selects the variable for loop count value. Loop count is loaded with the value of
the variable defined below.
loop count (ii)
0 = local variable A
0-3
1 = local variable B
2 = global variable C
3 = register address 3CH variable D value, or register address 42H value
(i) Valid for numerical operands. (ii) Valid for variables.
by reading interrupt bits in STATUS/INTERRUPT register at
address 3A.
INT
Send interrupt to processor by pulling the INT pin down and
setting corresponding status bit high. Interrupt can be cleared
Name
int
reset
Value
Description
0
No interrupt will be sent. PWM register values will remain intact.
1
Reset program counter value to “0” and send interrupt to processor by pulling the INT
pin down and setting corresponding status bit high to notify that program has ended.
PWM register values will remain intact. Interrupt can be cleared by reading interrupt bits
in STATUS/INTERRUPT register at address 3A.
0
Reset program counter value to “0” and hold. PWM register values will remain intact.
1
Reset program counter value to “0” and hold. PWM register values of the non-mapped
drivers will remain. PWM register values of the mapped drivers will be set to "0000 0000".
On completion of int instruction with this bit set to "1" the master fader registers are set
to zero as follows: Program execution engine 1 sets MASTER FADER 1 (48H) to zero,
engine 2 sets MASTER FADER 2 (49H) to zero and engine 3 sets MASTER FADER 3
(4AH) to zero.
RST
Rst instruction resets Program Counter register (address
37H, 38H, or 39H) and continues executing the program from
the program start address defined in 4C-4E. Instruction takes
sixteen 32 kHz clock cycles. Note that default value for all
program memory registers is 0000H, which is the rst instruction.
END
End program execution. Instruction takes sixteen 32 kHz
clock cycles.
37
www.ti.com
LP5523
step number value to program counter. Loop count parameter defines how many times the instructions inside the loop
are repeated. The LP5523 supports nested looping, i.e., loop
inside loop. The number of nested loops is not limited. Instruction takes sixteen 32 kHz clock cycles.
Branch Instructions
LP5523
External trigger input signal must stay low for at least two 32
kHz clock cycles to be executed. Trigger output signal is three
32 kHz clock cycles long. External trigger signal is active low,
i.e., when trigger is sent/received the pin is pulled to GND.
Send external trigger is masked; i.e., the device which has
sent the trigger will not recognize it. If send and wait external
trigger are used on the same instruction, the send external
trigger is executed first, then the wait external trigger.
TRIGGER
Wait or send triggers can be used to, for example, synchronize operation between the program execution engines. Send
trigger instruction takes sixteen 32 kHz clock cycles and wait
for trigger takes at least sixteen 32 kHz clock cycles. The receiving engine stores the triggers which have been sent.
Received triggers are cleared by wait for trigger instruction.
Wait for trigger instruction is executed until all the defined
triggers have been received. (Note: several triggers can be
defined in the same instruction.)
Name
Value (d)
Description
wait for trigger
0 - 31
Wait for trigger from the engine(s). Several triggers can be defined in the same
instruction. Bit [7] engages engine 1, bit [8] engine 2, bit [9] engine 3 and bit [12] is for
external trigger I/O. Bits [10] and [11] are not in use.
send a trigger
0 - 31
Send a trigger to the engine(s). Several triggers can be defined in the same instruction.
Bit [1] engages engine 1, bit [2] engine 2, bit [3] engine 3 and bit [6] is for external trigger
I/O. Bits [4] and [5] are not in use.
The LP5523 instruction set includes the following conditional
jump instructions: jne (jump if not equal); jge (jump if greater
or equal); jl (jump if less); je (jump if equal). If the condition is
true, a certain number of instructions will be skipped (i.e., the
Name
number of instructions to be
skipped if the operation returns
true.
variable 1
variable 2
www.ti.com
Value (d)
program jumps forward to a location relative to the present
location). If condition is false, the next instruction will be executed.
Description
0 - 31
The number of instructions to be skipped when the statement is true. Note:
value 0 means redundant code.
0-3
Defines the variable to be used in the test:
0 = local variable A
1 = local variable B
2 = global variable C
3 = register address 3CH variable, or register address 42H value.
0-3
Defines the variable to be used in the test:
0 = local variable A
1 = local variable B
2 = global variable C
3 = register address 3CH variable, or register address 42H value.
38
LD
This instruction is used to assign a value into a variable; the
previous value in that variable is overwritten. Each of the enName
target variable
8-bit value
Value (d)
Description
0-2
0 = variable A
1 = variable B
2 = variable C
0 - 255
Variable value
D) to the value of the variable 2 (A, B, C or D) and stores the
result in the register of variable A, B or C. Variables overflow
from 255 to 0.
ADD
Operator either adds 8-bit value to the current value of the
target variable, or adds the value of the variable 1 (A, B, C or
Name
Value (d)
Description
8-bit value (i)
0 - 255
target variable
0-2
0 = variable A
1 = variable B
2 = variable C
0-3
0 = local variable A
1 = local variable B
2 = global variable C
3 = register address 3CH variable, or register address 42H
value.
0-3
0 = local variable A
1 = local variable B
2 = global variable C
3 = register address 3CH variable, or register address 42H
value.
variable 1 (ii)
variable 2 (ii)
The value to be added.
i) Valid for numerical operands. (ii) Valid for variables.
able 2 (A, B, C or D) from the value of the variable 1 (A, B, C
or D) and stores the result in the register of target variable (A,
B or C). Variables overflow from 0 to 255.
SUB
SUB Operator either subtracts 8-bit value from the current
value of the target variable, or subtracts the value of the variName
Value (d)
Description
8-bit value (i)
0 - 255
target variable
0-2
0 = variable A
1 = variable B
2 = variable C
0-3
0 = local variable A
1 = local variable B
2 = global variable C
3 = register address 3CH variable, or register address 42H
value.
0-3
0 = local variable A
1 = local variable B
2 = global variable C
3 = register address 3CH variable, or register address 42H
value.
variable 1 (ii)
variable 2 (ii)
The value to be added.
i) Valid for numerical operands. (ii) Valid for variables.
39
www.ti.com
LP5523
gines have two local variables, called A and B. The variable
C is a global variable.
Arithmetic Instructions
LP5523
requires PWM activity is executed, a fast internal-startup sequence will be started automatically.
Automatic Power-Save Mode
Automatic
power-save
mode
is
enabled
when
POWERSAVE_EN bit in register address 36H is “1". Almost
all analog blocks are powered down in power-save if an external clock signal is used. Only the charge-pump protection
circuits remain active. However, if the internal clock has been
selected, only charge pump and LED drivers are disabled
during the power save; the digital part of the LED controller
needs to stay active. In both cases the charge pump enters
the weak 1x mode. In this mode the charge pump utilizes a
passive current limited keep-alive switch, which keeps the
output voltage at the battery level. During the program execution LP5523 can enter power save if there is no PWM
activity in any of the LED driver outputs. To prevent short
power-save sequences during program execution, LP5523
has an instruction look-ahead filter. During program execution
engine 1, engine 2 and engine 3 instructions are constantly
analyzed, and if there are time intervals of more than 50 ms
in length with no PWM activity on LED driver outputs, the device will enter power save. In power-save mode program
execution continues uninterrupted. When an instruction that
PWM Power-Save Mode
PWM cycle power-save mode is enabled when register 36 bit
[2] PWM_PS_EN is set to “1”. In PWM power-save mode
analog blocks are powered down during the "down time" of
the PWM cycle. Which blocks are powered down depends
whether the external or internal clock is used. While the Automatic Power-Save Mode (see above) saves energy when
there is no PWM activity at all, the PWM Power-Save mode
saves energy during PWM cycles. Like the Automatic PowerSave Mode, PWM Power-Save Mode also works during program execution. Figure 15 shows the principle of the PWM
power-save technique. An LED on D9 output is driven at 50%
PWM, 5mA current (top waveform). After PWM Power-save
enable, the LED-current remains the same, but the LP5523
input current drops down to ~50 µA level when the LED is
OFF, or to ~200 µA level when the charge-pump-powered
output(s) are used.
30043654
FIGURE 15. PWM Power-save Principle. External Clock, VDD = 3.6V
www.ti.com
40
The LP5523 requires 4 external capacitors for proper operation. Surface-mount multi-layer ceramic capacitors are recommended. Tantalum and aluminium capacitors are not
recommended because of their high ESR. For the flying capacitors (C1 and C2) multi-layer ceramic capacitors should
always be used. These capacitors are small, inexpensive and
have very low equivalent series resistance (ESR < 20 mΩ
typ.). Ceramic capacitors with X7R or X5R temperature characteristic are preferred for use with the LP5523. These capacitors have tight capacitance tolerance (as good as ±10%)
and hold their value over temperature (X7R: ±15% over −55°
C to 125°C; X5R: ±15% over −55°C to 85°C). Capacitors with
Y5V or Z5U temperature characteristic are generally not recommended for use with the LP5523. Capacitors with these
temperature characteristics typically have wide capacitance
tolerance (+80%, −20%) and vary significantly over temperature (Y5V: +22%, −82% over −30°C to +85°C range; Z5U:
+22%, −56% over +10°C to +85°C range). Under some con-
Recommended External Components
Model
Type
Vendor
Voltage Rating
Package Size
1 µF for COUT and CIN
C1005X5R1A105K
Ceramic X5R
TDK
10V
0402
LMK105BJ105KV-F
Ceramic X5R
Taiyo Yuden
10V
0402
ECJ0EB1A105M
Ceramic X5R
Panasonic
10V
0402
ECJUVBPA105M
Ceramic X5R, array
Panasonic
of two
10V
0504
C1005X5R1A474K
Ceramic X5R
TDK
10V
0402
LMK105BJ474KV-F
Ceramic X5R
Taiyo Yuden
10V
0402
ECJ0EB0J474K
Ceramic X5R
Panasonic
6.3V
0402
470 nF for C1 and C2
LEDs
User defined. Note that D7, D8 and D9 outputs are powered from VDD
when specifying the LEDs.
41
www.ti.com
LP5523
ditions, a nominal 1 μF Y5V or Z5U capacitor could have a
capacitance of only 0.1 μF. Such detrimental deviation is likely
to cause Y5V and Z5U capacitors to fail to meet the minimum
capacitance requirements of the LP5523.
For proper operation it is necessary to have at least 0.24 µF
of effective capacitance for each of the flying capacitors under
all operating conditions. The output capacitor COUT directly
affects the magnitude of the output ripple voltage. In general,
the higher the value of COUT, the lower the output ripples
magnitude. For proper operation it is recommended to have
at least 0.50 µF of effective capacitance for CIN and COUT under all operating conditions. The voltage rating of all four
capacitors should be 6.3V; 10V is recommended.
Recommended External Components below lists recommended external components from some leading ceramic
capacitor manufacturers. It is strongly recommended that the
LP5523 circuit be thoroughly evaluated early in the design-in
process with the mass-production capacitors of choice. This
will help ensure that any variability in capacitance does not
negatively impact circuit performance.
Recommended External
Components
LP5523
Typical Applications
30043622
FIGURE 16. Typical Application Circuits
The LP5523 enables up to four parallel devices together,
which can drive up to 12 RGB LEDs or 36 single LEDs. This
diagram shows the connections for two LP5523 devices for
six RGB LEDs. Note that D7, D8 and D9 outputs are used for
the red LEDs. The SCL and SDA lines should each have a
pullup resistor placed somewhere on the line (R3 and R4; The
www.ti.com
pullup resistors are normally located on the bus master.). In
typical applications values of 1.8k to 4.7k are used, depending
on the bus capacitance, I/O voltage and the desired communication speed. INT and TRIG are open-drain pins, so they
need pullup resistors. Typical values for R1 and R2 are from
120k to 180k for two devices.
42
LP5523
30043604
FIGURE 17. Haptic Feedback Application
Figure 17 depicts an example schematic for LP5523 driving
a vibra motor. A vibra motor can be used for haptic feedback
with touch screens and also for normal vibra operation (call
indication etc.). Battery-powered D8 and D9 outputs are used
for controlling the H-Driver (Microchip TC442x-series or
equivalent), which drives the vibra motor. (The remaining outputs D1 to D7 can be used for LED driving, of course.) With
H-Driver the rotation direction of the vibra motor can be
changed. For vibra operation user can load several programs
to the LP5523 program memory in order to get interesting vibration effects, with changing frequency, “ramps” , etc.
If the application processor has controls for a vibra motor they
can be connected to H-Driver INA and INB as shown in Figure
17. In this case the vibra can be controlled directly with application processor and also with LP5523. If application processor control is not needed, then the 100 kΩ resistors should
be connected to GND.
43
www.ti.com
LP5523
30043651
FIGURE 18. Control Waveform
A simple waveform for H-driver control is shown in Figure
18. At first the motor rotates in CW direction for 30 ms, following a rotation of 30 ms in CCW direction. The sequence is
started when the TRIG signal is pulled down (active low signal). the TRIG signal is received from the touch screen controller. After the sequence is executed, the LP5523 will wait
for another TRIG signal to start the sequence again. TRIG
www.ti.com
signal timing is not critical; it does not have to be pulled down
for the whole sequence duration like in the example. For call
indication, etc. purposes the program can be changed; for
example, rotation times can be adjusted to get desired haptic
reaction. Direct control of D8 and D9 output is also possible
through the control registers, if programming is not desired.
44
LP5523
Physical Dimensions inches (millimeters) unless otherwise noted
The dimension for X1, X2 and X3 are as given:
— X1 = 2.27 mm ±0.03 mm
— X2 = 2.27 mm ±0.03 mm
— X3 = 0.60 mm ±0.075 mm
NS Package Number TMD25LLA
25-bump micro SMD
See National Semiconductor Application Note 1112 Micro SMD Wafer Level Chip Scale Package for PCB design and assembly
instructions.
45
www.ti.com
LP5523 9-Output Programmable LED Driver
Notes
www.ti.com
IMPORTANT NOTICE
Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements, improvements,
and other changes to its products and services at any time and to discontinue any product or service without notice. Customers should
obtain the latest relevant information before placing orders and should verify that such information is current and complete. All products are
sold subject to TI’s terms and conditions of sale supplied at the time of order acknowledgment.
TI warrants performance of its hardware products to the specifications applicable at the time of sale in accordance with TI’s standard
warranty. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Except where
mandated by government requirements, testing of all parameters of each product is not necessarily performed.
TI assumes no liability for applications assistance or customer product design. Customers are responsible for their products and
applications using TI components. To minimize the risks associated with customer products and applications, customers should provide
adequate design and operating safeguards.
TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right, copyright, mask work right,
or other TI intellectual property right relating to any combination, machine, or process in which TI products or services are used. Information
published by TI regarding third-party products or services does not constitute a license from TI to use such products or services or a
warranty or endorsement thereof. Use of such information may require a license from a third party under the patents or other intellectual
property of the third party, or a license from TI under the patents or other intellectual property of TI.
Reproduction of TI information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied
by all associated warranties, conditions, limitations, and notices. Reproduction of this information with alteration is an unfair and deceptive
business practice. TI is not responsible or liable for such altered documentation. Information of third parties may be subject to additional
restrictions.
Resale of TI products or services with statements different from or beyond the parameters stated by TI for that product or service voids all
express and any implied warranties for the associated TI product or service and is an unfair and deceptive business practice. TI is not
responsible or liable for any such statements.
TI products are not authorized for use in safety-critical applications (such as life support) where a failure of the TI product would reasonably
be expected to cause severe personal injury or death, unless officers of the parties have executed an agreement specifically governing
such use. Buyers represent that they have all necessary expertise in the safety and regulatory ramifications of their applications, and
acknowledge and agree that they are solely responsible for all legal, regulatory and safety-related requirements concerning their products
and any use of TI products in such safety-critical applications, notwithstanding any applications-related information or support that may be
provided by TI. Further, Buyers must fully indemnify TI and its representatives against any damages arising out of the use of TI products in
such safety-critical applications.
TI products are neither designed nor intended for use in military/aerospace applications or environments unless the TI products are
specifically designated by TI as military-grade or "enhanced plastic." Only products designated by TI as military-grade meet military
specifications. Buyers acknowledge and agree that any such use of TI products which TI has not designated as military-grade is solely at
the Buyer's risk, and that they are solely responsible for compliance with all legal and regulatory requirements in connection with such use.
TI products are neither designed nor intended for use in automotive applications or environments unless the specific TI products are
designated by TI as compliant with ISO/TS 16949 requirements. Buyers acknowledge and agree that, if they use any non-designated
products in automotive applications, TI will not be responsible for any failure to meet such requirements.
Following are URLs where you can obtain information on other Texas Instruments products and application solutions:
Products
Applications
Audio
www.ti.com/audio
Automotive and Transportation www.ti.com/automotive
Amplifiers
amplifier.ti.com
Communications and Telecom www.ti.com/communications
Data Converters
dataconverter.ti.com
Computers and Peripherals
www.ti.com/computers
DLP® Products
www.dlp.com
Consumer Electronics
www.ti.com/consumer-apps
DSP
dsp.ti.com
Energy and Lighting
www.ti.com/energy
Clocks and Timers
www.ti.com/clocks
Industrial
www.ti.com/industrial
Interface
interface.ti.com
Medical
www.ti.com/medical
Logic
logic.ti.com
Security
www.ti.com/security
Power Mgmt
power.ti.com
Space, Avionics and Defense
www.ti.com/space-avionics-defense
Microcontrollers
microcontroller.ti.com
Video and Imaging
www.ti.com/video
RFID
www.ti-rfid.com
OMAP Mobile Processors
www.ti.com/omap
Wireless Connectivity
www.ti.com/wirelessconnectivity
TI E2E Community Home Page
e2e.ti.com
Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
Copyright © 2012, Texas Instruments Incorporated
Similar pages