MSL2041/2042 - Preliminary

Atmel LED Drivers
MSL2041/MSL2042
Low-Cost, Simple 4-String LED Drivers with External
Current Sink MOSFETs, 5000:1 Dimming Range and Per
String PWM Input
Preliminary Datasheet
Description
The MSL2041 and MSL2042 compact, high-power LED controllers use external current control MOSFETs to sink up to 1A per string, with string current matching of
±0.5%. The MSL2041/2 drive four parallel strings of LEDs with fault detection and
management of open circuit and short circuit LEDs. The MSL2041 features four PWM
inputs that allow independent frequency, dimming and phasing of each string. The
MSL2042 has a single PWM input for frequency and dimming control of all four
strings, and automatically phase shifts the string drive signals. An external current
sense resistor for each string sets full-scale LED current and is adjustable for all
strings equally with an internal 8-bit DAC.
The MSL2041/2 adaptively control up to two DC-DC or off-line converters that power
the LEDs using Atmel's proprietary efficiency optimizer. The efficiency optimizer minimizes power use while maintaining LED current accuracy. Cascade multiple
MSL2041/2s to automatically negotiate the optimum power supply voltage when driving more than four strings from a single power supply.
The MSL2041/2 feature fault control for open-circuit LED strings, LED short-circuits
and device over-temperature conditions. When an open-circuit or short-circuit condition is detected, the MSL2041/2 turn off the faulty string and pull the open-drain fault
output low.
The MSL2041/2 operate independently with PWM LED dimming control from an
applied signal, or are controlled by an external microcontroller or FPGA through the
I2C serial interface. The serial interface allows optional control and monitoring of the
various fault detection and efficiency optimizer parameters.
The MSL2041/2 are available in the 28 pin, 5 x 5mm, TQFN package, and operate over
the -40°C to +85°C temperature range.
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
Features
 Drives Four Parallel High Power LED Strings
 Greater than 1A LED String Current with External N-Channel MOSFETS
 Operates Stand-Alone with PWM Input(s) Controlled Dimming
 Four PWM Inputs Allow Individual Frequency, Brightness and Phase Control of each LED String (MSL2041)
 One PWM Input Controls the Frequency and Brightness of the Automatically Phase Shifted Strings (MSL2042)
 8-bit Adaptive Optimization of String Power Supply for Maximum Efficiency
 Multiple MSL2041/2s Share a String Supply and Automatically Negotiate the Optimum Supply Voltage
 ±0.5% Current Matching Between Strings
 String Open-Circuit and LED Short-Circuit Fault Detection and Protection
 External MOSFETs Offer Flexibility of LEDs Used in Each String for high current and/or voltage
 Dimming Control and System/Fault Monitoring via I2C Serial Interface
 -40°C To +85°C Operating Temperature Range
Typical Applications
 General and architectural lamps
 Street-Lighting
 Post-Regulated or Offline Powered LED Strings
 High CRI LED fixtures
 Down lights and recessed lights
 LCD-TVs
 PC Monitors
 Industrial Displays
 PAR lamps
Ordering Information
Note:
Ordering code
PWM Inputs
Auto-phase delay
Package(1)
MSL2041AU
4
No
5 x 5mm 28-pin TQFN
MSL2042AU
1
Yes
5 x 5mm 28-pin TQFN
1.
Lead-Free, Halogen-Free, RoHS Compliant Package
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
2
Application Circuit
VOUT
LED STRING
POWER
SUPPLY
FB
UP TO 4
STRINGS PER
DEVICE
RD0
1N4148
D0
FBOn
FROM FBOn OF NEXT DEVICE
(OPTIONAL)
PWM0
PWM1
PWM2
PWM3
PWM0
PWM1
PWM2
PWM3
+
12V
FBIn
MSL2041
LED
DRIVER
1μF
D3
G3
S3
VCC
VDD
2
2.2μF
2.2μF
GND
RS0
0.715
RD3
VIN
-
G0
S0
IC
SERIAL
INTERFACE
μC
RS3
0.715
USE OF I2C SERIAL
INTERFACE IS
OPTIONAL
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
3
Table Of Contents
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Features. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Typical Applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Ordering Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Application Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Table Of Contents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.
Absolute Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.
Electrical Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.
Typical Operating Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4.
Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.
Pinout and Pin Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.1
5.2
Pinout – MSL2041 and MSL2042 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Pin Descriptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
6.
Typical Application Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
7.
Detailed Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
7.1
7.2
7.3
7.4
7.5
7.6
7.7
7.8
8.
18
18
19
20
21
23
24
26
Register Map Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
8.1
8.2
9.
Setting the Default LED String Current with the FET source Resistor RS . . . . . . . . . . . . . . . . . . . . .
LED String Fault Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Over Temperature Shutdown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Efficiency Optimizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Connecting the Efficiency Optimizer to an LED String Power Supply and Selecting Resistors . . . .
Using Multiple Efficiency Optimizers to Control a Common Power Supply. . . . . . . . . . . . . . . . . . . .
Choosing the Drain Resistor RD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Direct PWM Control of the LED Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Register Power-Up Defaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
I²C/SMBus Serial Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9.1
9.2
9.3
9.4
9.5
9.6
9.7
9.8
I2C Bus Timeout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I2C Bit Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I2C START and STOP Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I2C Acknowledge Bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I2C Slave Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I2C Message Format for Writing to the MSL2041/42 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I2C Message Format for Reading from the MSL2041/42 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I2C Message Format for Broadcast Writing to Multiple devices . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
38
38
38
39
39
40
40
10. Packaging Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
11. Datasheet Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
4
1.
Absolute Maximum Ratings
Voltage with respect to AGND
AVIN, PVIN, EN
-0.3V to +16V
VCC, PWM0, PWM1, PWM2, PWM3, SDA, SCL, CGND
-0.3V to +5.5V
VDD, CVDD
-0.3V to +2.75V
G0 - G3
-0.3V to VIN+0.3V
S0 - S3
-0.3V to VDD+0.3V
D0 - D3
-0.3V to +24V
FBI1, FBI2, FBO1, FBO2, FLTB
-0.3V to VCC+0.3V
Current (into pin)
VIN
50mA
GND
500mA
D0 - D3
1mA
G0 - G3
VIN
All other pins
20mA
Continuous Power Dissipation at 70°C
28-Pin 5mm x 5mm TQFN (derate 36.3mW/°C above TA = +70°C)
Ambient Operating Temperature Range
Junction Temperature
Storage Temperature Range
Lead Soldering Temperature, 10s
2014mW
-40°C to +85°C
+125°C
-65°C to +125°C
+300°C
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
5
2.
Electrical Characteristics
VIN = 12V, -40°C ≤TA ≤ 85°C, Typical Operating Circuit, unless otherwise noted.
Typical values at TA = +25°C.
Parameter
Symbol
Conditions
Min.
Typ.
Max.
Unit
10.8
12.0
13.2
V
DC Electrical Characteristics
VIN Operating Supply Voltage
VIN Operating Supply Current
LEDs on at PWM = 100%,
serial interface idle
22.5
31.5
mA
VIN Sleep Supply Current
I2C serial interface idle,
SLEEP = 1
2.9
4.2
mA
VIN Shutdown Supply Current
EN = 0, all digital inputs =
VDD or GND
0.1
2
μA
2.5
2.75
V
VDD Regulation Voltage
2.25
PWM0 - PWM3, SCL, SDA Input High
Voltage
0.7VVDD
V
PWM0 - PWM3, SCL, SDA Input Low
Voltage
0.3VVDD
EN Input High Voltage
1.9
V
EN Input Low Voltage
1.0
EN Input Hysteresis
150
SDA, FLTB Output Low Voltage
V
Sinking 6mA
V
mV
0.5
V
Open Circuit String Fault Detect Voltage
OCREF
4.25
5.5
6.25
V
Short Circuit String Fault Detect Voltage
SCREF
5.4
5.9
6.5
V
D0 - D3 Leakage Current
Voltage under 9V
0.1
Voltage between 9V to 16V
G0 - G3 Maximum Gate Drive Voltage
5
8.8
9.6
10.2
A
V
G0 - G3 Gate Drive Current
PWMn = VDD; Sn = GND;
Gn = GND
109
mA
G0 - G3 Gate Sink Current
PWMn = GND; Gn = 9.6V
-18
mA
S0 - S3 Current Sense Regulator Voltage
ISTR0 = 0xFF; TA = 25°C
475
ISTR0 = 0xFF; TA = 85°C
460
ISTR0 = 0x7F; TA = 25°C
245.5
ISTR0 = 0x7F; TA = 85°C
235
502
525
540
250
257.5
mV
265
ISTR0 = 0x7F; TA = 25°C
0.50
±2.2
Voltage Matching (Note 8)
ISTR0 = 0x7F; TA = -40°C
to +85°C
0.75
±3.2
Thermal Shutdown Temperature
Temperature rising
135
°C
FBIn to FBOn Current Transfer Error
FBIn = 100A
±2
%
S0 - S3 String-to-String Current Sense
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
%
6
Parameter
Symbol
Conditions
Min.
FBOn Current Step-Size
Typ.
Max.
A
1.1
FBOn Feedback Output Current
Maximum
OV  VFBOn  3.5V
Unit
A
210
AC Electrical Characteristics
PWM Input Frequency
fPWM
PWM Duty Cycle
(7)
0
50,000
Hz
(7)
0
100
%
Bus timeout disabled(1)
0
1,000
kHz
I²C Switching Characteristics
SCL Clock Frequency
1/tSCL
STOP to START Condition Bus Free
Time
tBUF
0.5
µs
Repeated START condition Hold Time
tHD:STA
0.26
µs
Repeated START condition Setup Time
tSU:STA
0.26
µs
STOP Condition Setup Time
tSU:STOP
0.26
µs
SDA Data Hold Time
tHD:DAT
5
ns
SDA Data Valid Acknowledge Time
tVD:ACK
(2)
0.05
0.55
µs
SDA Data Valid Time
tVD:DAT
(3)
0.05
0.55
µs
SDA Data Set-Up Time
tSU:DAT
100
ns
SCL Clock Low Period
tLOW
0.5
µs
SCL Clock High Period
tHIGH
0.26
µs
SDA, SCL Fall Time
tF
SDA, SCL Rise Time
tR
SDA, SCL Input Suppression Filter
Period
tSP
Notes:
1.
2.
3.
4.
5.
6.
7.
8.
(4) (5)
,
(6)
120
ns
120
ns
50
ns
Minimum SCL clock frequency is limited by the bus timeout feature, which resets the serial bus interface when either SDA or SCL is held low for tTIMEOUT.
SDA Data Valid Acknowledge Time is SCL LOW to SDA (out) LOW acknowledge time.
SDA Data Valid Time (tSU:DAT) = minimum SDA output data-valid time following SCL LOW transition.
A master device must internally provide an SDA hold time of at least 300ns to ensure an SCL low state.
The maximum SDA and SCL rise times is 300ns. The maximum SDA fall time is 250ns. This allows series protection resistors to be connected between
SDA and SCL inputs and the SDA/SCL bus lines without exceeding the maximum allowable rise time.
MSL2041/2 include input filters on SDA and SCL that suppress noise less than 50ns.
Parameter is guaranteed by design and not production tested.
String to string matching is defined as the percentage deviation from the average string current sense voltage across strings on a part.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
7
3.
Typical Operating Characteristics
Figure 3-1. MSL2042 LED String Cathode Voltages.
The above scope photo shows the input PWM signal (top trace) and the four Drain signals D0 - D3. D0 follows
the input PWM directly, while D1 - D3 show progressive phase delays of ¼ the PWM cycle per string.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
8
Figure 3-2. LED Short Circuit behavior.
The above scope photo shows the string power supply (top trace, offset = 30V), string Drain signals D0 and D1,
and the fault output FLTB during an LED short circuit event. String Zero (CH 2) experiences a short circuit (three
LEDS shorted) at the left side of the photo. After the short circuit verification time the string zero drive signal
ceases and FLTB pulls low. D1 (CH 4) shows that string one is unaffected.
Figure 3-3. Current Foldback Behavior.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
9
Figure 3-4. String Open Circuit behavior.
The above scope photo shows the string power supply (top trace, offset = 30V), string MOSFET drain signals
D0 and D1, and the fault output FLTB during a string open circuit event. The open circuit occurs on string zero
when D0 (CH 2) stops switching. The Efficiency Optimizer output tries to bring the string back into regulation by
raising the string power supply voltage (VLED trace, CH 1). When VLED reaches its maximum value and the
string current is still not regulating, the fault is verified, FLTB (CH 3) pulls low, and string zero is no longer
monitored by the EO. A new calibration cycle now occurs, lowering the supply voltage again. The effects of the
supply changes are seen on the drain of string one (CH 4), which continues operating throughout.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
10
Figure 3-5. FET Drain current vs. Drain voltage.
Figure 3-6. Turn-On propagation delay.
Trace 1 is the PWM input signal and trace 2 is the external current sink MOSFET drain voltage.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
11
Figure 3-7. Turn-Off propagation delay.
Trace 1 is the PWM input signal and trace 2 is the external current sink MOSFET drain voltage.
Figure 3-8. Typical narrow pulse behavior (Auto-recalibration disabled).
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
12
Trace 1 in PWM input signal, trace 2 is the LED current, trace 3 is the external current sink MOSFET gate
voltage, and trace 4 is the current sense resistor input Sn.
4.
Block Diagram
Figure 4-1.
MSL2041/MSL2042 block diagram.
FBO1 FBI1
VIN
EN
FBO2 FBI2
VCC = 5V
VCC
RD0
D0
VDD = 2.5V
VDD
CVDD
+
-
SCL
I2C/SMBus
INTERFACE
(USE OPTIONAL)
FLTB
FAULT STATUS
SDA
STRING FBO
SELECT AND
FAULT
DETECTION
EFFICIENCY OPTIMIZER
LOGIC AND CONTROL
LDO
REGULATORS
G0
+
-
S0
MAXIMUM
STRING
CURRENT
REFERENCE
500mV
SYSTEM
CONTROLLER
RS0
D3
+
-
+
-
G3
RD3
S3
RS3
PWM0
PWM1
PWM2
PWM3
MSL2041 ONLY
STRING PHASE
CONTROL
(MSL2042 ONLY)
GND
PWM SIGNALS
MSL2041
MSL2042
CGND
(MSL2042 ONLY)
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
13
22
FBI2
23
FBO2
24
FBI1
25
FBO1
FBI2
26
EN
FBO2
27
CGND
FBI1
28
●
CGND
FBO1
Pinout – MSL2041 and MSL2042
EN
5.1
PWM3
Pinout and Pin Description
PWM2
5.
28
27
26
25
24
23
22
●
PWM1
1
21 VIN
CGND
1
21 VIN
PWM0
2
20 VCC
PWM0
2
20 VCC
FLTB
3
19 CVDD
FLTB
3
19 CVDD
SCL
4
18 VDD
SCL
4
18 VDD
SDA
5
17 D3
SDA
5
D0
6
16 G3
D0
6
16 G3
G0
7
15 S3
G0
7
15 S3
MSL2041AU
MSL2042AU
5.2
10
11
12
13
14
G2
S2
S2
9
D2
G2
8
S1
14
G1
13
D1
12
(TOP VIEW)
S0
11
D2
D1
10
S1
9
G1
8
S0
(TOP VIEW)
17 D3
Pin Descriptions.
Pin
Name
MSL2041
MSL2042
Description
PWM Dimming Input One
PWM1
1
–
PWM0
2
2
Drive PWM1 with a pulse-width modulated signal to control LED brightness of the string one. If
unused, connect PWM1 to ground.
PWM Dimming Input Zero
Drive PWM0 with a pulse-width modulated signal to control LED brightness of the string zero
(MSL2041) or all strings (MSL2042).
Fault Indicator Output (Open Drain, Active Low)
FLTB
3
3
SCL
4
4
SDA
5
5
FLTB sinks current to GND whenever the MSL2041/2 detects and verifies a fault condition. Toggle EN
low (or read the fault registers) to clear FLTB.
I²C Serial Clock Input
SCL is the I²C serial interface clock input.
I²C Serial Data Input/Output
SDA is the I²C serial interface bi-directional data line.
Drain Sense Input 0
D0
6
6
Drain Sense Input for External MOSFET 0. Connect D0 through a resistor to the drain of the external
MOSFET driving LED string 0. If unused, connect D0 to ground.
Gate Output 0
G0
7
7
Gate drive output for external MOSFET 0. Connect G0 to the gate of the external MOSFET driving
LED string 0. If unused, connect G0 to ground.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
14
Pin
Name
MSL2041
MSL2042
Description
Source (Current) Sense Input for String 0
S0
8
8
Connect S0 to the source of the external MOSFET, and to the current sense resistor for LED string 0.
The full scale LED current is set at 502mV, with a default of 250mV across the current sense resistor.
If unused, connect S0 to VDD.
Drain Sense Input 1
D1
9
9
Drain Sense Input for External MOSFET 1. Connect D1 through a resistor to the drain of the external
MOSFET driving LED string 1. If unused, connect D1 to ground.
Gate Output 1
G1
10
10
Gate drive output for external MOSFET 1. Connect G1 to the gate of the external MOSFET driving
LED string 1. If unused, connect G1 to ground.
Source (Current) Sense Input for String 1
S1
11
11
D2
12
12
Connect S1 to the source of the external MOSFET, and to the current sense resistor for LED string 1.
The full scale LED current is set at 502mV, with a default of 250mV across the current sense resistor.
If unused, connect S1 to VDD.
Drain Sense Input 2
Drain Sense Input for External MOSFET 2. Connect D2 through a resistor to the drain of the external
MOSFET driving LED string 2. If unused, connect D2 to ground.
Gate Output 2
G2
13
13
Gate drive output for external MOSFET 2. Connect G2 to the gate of the external MOSFET driving
LED string 2. If unused, connect G2 to ground.
Source (Current) Sense Input for String 2
S2
14
14
Connect S2 to the source of the external MOSFET, and to the current sense resistor for LED string 2.
The full scale LED current is set at 502mV, with a default of 250mV across the current sense resistor.
If unused, connect S2 to VDD.
Source (Current) Sense Input for String 3
S3
15
15
Connect S3 to the source of the external MOSFET, and to the current sense resistor for LED string 3.
The full scale LED current is set at 502mV, with a default of 250mV across the current sense resistor.
If unused, connect S3 to VDD.
Gate Output 3
G3
16
16
Gate drive output for external MOSFET 3. Connect G3 to the gate of the external MOSFET driving
LED string 3. If unused, connect G3 to ground.
Drain Sense Input 3
D3
17
17
VDD
18
18
CVDD
19
19
Drain Sense Input for External MOSFET 3. Connect D3 through a resistor to the drain of the external
MOSFET driving LED string 3. If unused, connect D3 to ground.
2.5V Internal LDO Regulator Output
VDD powers internal logic. Bypass VDD to GND with a 2.2µF ceramic capacitor X7R or better placed
close to VDD.
Connect to VDD
Connect CVDD to VDD with a short wide trace.
5V Internal LDO Regulator Output
VCC
20
20
VCC powers internal logic. Bypass VCC to GND with a 2.2µF ceramic capacitor X7R or better placed
close to VCC.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
15
Pin
Name
MSL2041
MSL2042
Description
Supply Voltage Input
VIN
21
21
Connect a 12V ±10% supply to VIN. Bypass VIN to GND with a 1.0µF ceramic capacitor X7R or
better.
Efficiency Optimizer Feedback Input 2
FBI2
22
22
Connect FBI2 to FBO2 of the previous device when using the devices in a cascade configuration. If
unused, connect FBI2 to ground.
Efficiency Optimizer Feedback Output Two
FBO2
23
23
FBI1
24
24
CGND
–
1, 27, 28
Connect FBO2 to the feedback node of the second external string power supply through a diode, or to
FBI2 of the next device when operating the devices in a cascade configuration. If unused, leave FBO2
unconnected.
Efficiency Optimizer Feedback Input 1
Connect FBI1 to FBO1 of the previous device when using the devices in a cascade configuration. If
unused, connect FBI1 to ground.
Connect to Ground.
Connect all CGND pins to GND as close to the MSL2042 as possible.
Efficiency Optimizer Feedback Output One
FBO1
25
25
Connect FBO1 to the feedback node of the first external string power supply through a diode, or to
FBI1 of the next device when operating the devices in a cascade configuration. If unused, leave FBO1
unconnected.
Enable Input (Active High)
EN
26
26
Drive EN high to turn on the MSL2041/42, drive EN low to turn it off. For automatic start-up connect
EN to VIN through a 100k resistor. Toggle EN low to release FLTB and to return any and all registers
to their power-up default values.
PWM Dimming Input Three
PWM3
27
–
PWM2
28
–
EP
EP
EP
Drive PWM3 with a pulse-width modulated signal to control the brightness of string three. If unused,
connect PWM3 to ground.
PWM Dimming Input Two
Drive PWM2 with a pulse-width modulated signal to control the brightness of string two. If unused,
connect PWM2 to ground.
Power Ground
Connect GND to system ground.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
16
6.
Typical Application Circuit
MSL2042 driving four LED strings at 350mA Full-scale current per string, controlling a single power supply.
MSL2041 typical application circuit.
16
MSL2041
EN
PWM3
G0
D0
SCL
SDA
6
7
5
22
23
24
25
26
27
28
PWM1
PWM0
FAULT OUT
SCL
SDA
ENABLE
PWM3
PWM2
+
12V -
RBOTTOM
1N4148
RTOP
FB
LED STRING
DC/DC
CONVERTER
VOUT
100k
RD3
1M
3
FLTB
PWM2
PWM0
S0
4
EP
GND
15
S3
D3
G3
17
19
18
VDD
VCC
CVDD
21
VIN
20
2.2μF
D1
FBO1
PWM1
8
G1
FBI1
1
9
S1
FBI2
FBO2
2
10
D2
RS3
0.715
11
G2
RD2
1M
12
S2
Q3
FDC5612
13
`
14
Q2
FDC5612
RS2
0.715
2.2μF
1.0μF
RD1
1M
Q1
FDC5612
RS1
0.715
RD0
1M
RS0
0.715
Q0
FDC5612
Figure 6-1.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
17
7.
Detailed Description
The MSL2041 and MSL2042 are highly integrated, flexible, four-string LED drivers that use external MOSFETs to
allow high string currents and/or voltages. Power supply control maximizes efficiency of up to two external string
power supplies. They require only external PWM signal(s), a few external components (including the string drive NChannel MOSFETs) and an external string power supply. The MSL2041/2s four MOSFET gate drive outputs, G0 - G3
drive FETs with a maximum gate voltage threshold of 3V. Automatic fault corrective action allows the
MSL2041/MSL2042 to operate stand-alone without serial communication.
The MSL2041/2 LED drivers provide simple control of LED brightness through both full-scale current and external
PWM drive controls. Multiple devices easily connect together to drive more than four LED strings while maintaining
optimum system efficiency. An active low fault output indicates detection and verification of either a string open circuit
or an LED short circuit condition. The MSL2041/2 operate stand-alone with additional string control and monitoring
through a 1MHz I2C/SMBus compatible serial interface. Use of the serial interface is not required.
The MSL2041 uses four PWM inputs that directly control PWM dimming for the four LED strings, while the MSL2042
uses a single PWM input signal and automatically, progressively phase spreads the four LED PWM on times. A ¼
PWM period is progressively applied to strings 1, 2 and 3. Phase spreading reduces both the transient load on the
LED power supply, and the power supply output capacitor size.
The Efficiency Optimizer (EO) outputs control a wide range of different architectures of external DC/DC and AC/DC
converters. Multiple drivers in a system communicate with each other in real time to select an optimized operating
voltage for the LEDs. The EO allows design of the power supply for the worst case Forward Voltage (Vf) of the LEDs
without worrying about excessive power dissipation issues, while ensuring that the LED drive system is operating at
optimum efficiency. During start-up the EO automatically reduces the string power supply voltage to the minimum
value required to maintain the LED current regulation. The EO periodically performs re-optimization to compensate for
changes of the LED's forward voltage, and to assure continued optimum power savings. All string drivers are
continually monitored for LED current regulation, and if the LED voltage is insufficient to maintain regulation the
Efficiency Optimizer automatically increases the string power supply voltage to return current regulation.
7.1
Setting the Default LED String Current with the FET source Resistor RS
The default string current, ILED, for each string is set by a current sense resistor, RS, connected to ground from the
source terminal of the string drive MOSFET (Figure 4-1 on page 13). Determine the resistor value using:
 127   0.502  

RS  
  
 255   I LED 
(where 127 is the default value of ISTR, String Current Control register 0x0E). For example, a default LED current of
350mA returns RS = 0.715 (to the nearest 1% resistor value). When using the serial interface for current control
determine RS by following the guidelines in the “String Current Control Register (ISTR, 0x0E)” on page 32.
7.2
LED String Fault Response
The MSL2041/2 monitor the LED strings to detect LED short-circuit and string open-circuit faults (Figure 7-1 on page
19). When verified, all string faults force the open drain fault output FLTB low.
After power-up, when shorted LEDs are verified in a string the string is disabled and no longer monitored by the
efficiency optimizer. The short circuit threshold is 5.9V. To ensure a fault is detected, make sure the additive voltage
drop lost from the shorted LEDs, plus the headroom required for the external FET, is equal to or greater than the 5.9V
threshold. In most cases, two LEDs in a string must be shorted to cause a short circuit fault, but because LED VF
differ, the number of shorted LEDs required to generate a fault varies. The current fold-back option, which is available
through the serial interface, reduces LED current immediately in response to detection of an LED short circuit fault.
This prevents overstress while the MSL2041/2 is validating the fault before disabling the LED string.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
18
See “Configuration Register (CONFIG, 0x02)” on page 29 for information about current fold-back.
When an open circuit occurs, the efficiency optimizer detects a loss of current regulation. In this case the efficiency
optimizer increases the LED voltage until the voltage is at the maximum level. At that time the MSL2041/2 determine
that any LED strings that are not regulating current are open circuit faults. It then disables those strings and
recalibrates the LED power supply voltage for optimum efficiency. See “Typical Operating Characteristics” on page 8,
for oscilloscope photos that detail the open and short circuit fault responses.
Toggling EN low and then high clears all previously latched faults and the MSL2041/2 returns to controlling and
monitoring all strings. Fault conditions that persist re-establish fault responses.
Faulty strings are flagged in the fault registers. When using the serial interface, read fault conditions in response to
FLTB pulling low. See “Control Registers” on page 28 for information about using the serial interface to monitor faults.
Figure 7-1.
Open-Circuit and Short-Circuit Detection Block Diagram.
STRSCFEN
(BIT D3 of 0x02)
+
-
SCREF
LED SHORT
CIRCUIT MONITOR
MSL2041
MSL2042
SHORT CIRCUIT STATUS
REGISTER 0x09
4
FAULT STATUS
REGISTER 0x03
FLTB
FLTDET
4
STRING FAULT MASK
REGISTER 0x08
STRSCDET
STROCDET
4
4
OPEN CIRCUIT STATUS
REGISTER 0x0A
STRING OPEN
CIRCUIT MONITOR
STROCFEN
(BIT D2 OF 0x02)
+
-
OCREF
Dx
FROM PWM
DRIVE CONTROL
+
-
RD
Gx
Sx
DGND
7.3
RS
Over Temperature Shutdown
The MSL2041/2 include automatic over-temperature shutdown. If the die temperature exceeds 135°C, the device
turns off and is held in reset until the die temperature drops below 120°C at which time the device turns back on. While
MSL2041/2 is in reset the onboard regulators are off, register values reset and the serial interface is disabled.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
19
7.4
Efficiency Optimizer
The MSL2041/2 provide two Efficiency Optimizer (EO) outputs, FBO1 and FBO2, to control up to two external string
power supplies. Each EO includes an input, used to cascade EOs to control a single power supply. The EO improves
power efficiency by dynamically adjusting the power supply's output to the minimum voltage required by the LED
strings to maintain current regulation (Figure 7-2 on page 20). This ensures that there is sufficient voltage available for
LED current control, and good power supply noise rejection, while minimizing power dissipation. Use a power supply
with nominal feedback voltage of no more than 3.5V - VD (where VD is the forward voltage drop of the diode
connecting FBOn and the power supply feedback node), and accessible voltage setting resistors. (sizing the resistors
is covered in the next section). The diode between the FBOn output and the power supply feedback input prevents
reverse current when the MSL2041 is off while the power supply is on. Leave unused FBO outputs unconnected.
At power-up, and when EN is taken high, the EO begins an initial calibration cycle by monitoring the external
MOSFETs. If the LED current is in regulation the FBOn output current is increased slightly to reduce the power supply
voltage. After the power supply delay time the current regulation is again checked and the process repeats until it
detects a LED current regulation error. The EO then slightly increases the power supply voltage, giving the MOSFET
enough headroom to maintain LED current with sufficient margin, yet maintain minimum power dissipation. The
captured oscilloscope picture Figure 7-2 on page 20 shows this procedure. The default values of the EO parameters
are suitable for most power supplies. These parameters are set through the serial interface. For more information see
“Efficiency Optimizer Control Register (FBOCTRL, 0x11)” on page 33 Minimize string voltage transients which may
cause false current regulation errors that in turn causes the EO to raise the supply voltage.
Figure 7-2. Efficiency Optimizer Initial Calibration, Showing VLED voltage.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
20
7.5
Connecting the Efficiency Optimizer to an LED String Power Supply and Selecting
Resistors
The MSL2041/2 control LED string power supplies that use a voltage divider (RTOP and RBOTTOM in Figure 7-3 on page
21) to set output voltage, and whose regulation feedback voltage is not more than 3.5V - VD. The Efficiency Optimizer
improves power efficiency by injecting a current of between 0µA and 280.5µA into the voltage divider of the external
power supply, dynamically adjusting the power supply's output to the minimum voltage required maintain LED current
regulation.
Each of the two EOs monitors two LED strings. Strings zero and one are assigned to FBO1, and strings two and three
are assigned to FBO2 (Table 7-1 on page 21). When a single supply is used for all four strings connect FBO2 to FBI1
(Figure 7-3 on page 21), as explained in “Using Multiple Efficiency Optimizers to Control a Common Power Supply” on
page 23. The MSL2041/2 automatically maximizes efficiency for all strings. When two supplies are used, connect
FBO1 to the supply powering strings zero and one, and connect FBO2 to the supply powering strings two and three
(Figure 7-4 on page 22). For clarity, Figure 7-3 on page 21 and Figure 7-4 on page 22 do not show the Source and
Drain connections between the devices and the MOSFETs.
Table 7-1.
String EO Assignment.
STRING #
EO ASSIGNMENT
0, 1
FBO1
2, 3
FBO2
Figure 7-3.
EO Configuration When Using a Single String Power Supply.
VOUT
POWER
SUPPLY
RTOP
COUT
FB
1N4148
RBOTTOM
RS0
RS1
RS2
RS3
MSL2041
MSL2042
FBO1
G0
FBI1
G1
FBO2
G2
FBI2
G3
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
21
Figure 7-4.
EO Configuration When Using Two String Power Supply.
VOUT
POWER
SUPPLY
TWO
FB
COUT
RTOP
1N4148
RBOTTOM
VOUT
POWER
SUPPLY
ONE
FB
COUT
RTOP
1N4148
RBOTTOM
MSL2041
MSL2042
RS0
FBO1
G0
FBI1
G1
FBO2
G2
FBI2
G3
RS1
RS2
RS3
To select RTOP and RBOTTOM first determine VOUT(MIN) and VOUT(MAX), the minimum and maximum string supply voltage
limits, using:


 1 
VOUT ( MAX )  V f ( MAX )  # ofLEDs   0.5  

 1  TOL 
and
VOUT ( MIN)  V f ( MIN )  # ofLEDs   0.5  VOUT ( MAX )  TOL 
where Vf(MIN) and Vf(MAX) are the LED's minimum and maximum forward voltage drops at the full-scale current set by
RS (page 18) and TOL is the power supply voltage tolerance. For example, if the LED data are Vf(MIN) = 3.5V and
Vf(MAX) = 3.8V, 10 LEDs are used in a string and the supply tolerance is 5%, then the total minimum and maximum
voltage drop across a string is 35V and 38V. Adding an allowance of 0.5V for the string drive MOSFET headroom and
adjusting for supply tolerance brings VOUT(MAX) to 40.53V and VOUT(MIN) to 33.47V. Then determine RTOP using
RTOP 
VOUT ( MAX )  VOUT ( MIN )
I FBOn ( MAX )
where IFBOn(MAX) is the 210µA minimum guaranteed output current of the FBOn outputs. Finally, determine RBOTTOM
using:
RBOTTOM  RTOP 
VFB
VOUT ( MAX )  VFB
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
22
where VFB is the regulation feedback voltage of the power supply. Place a diode (1N4148 or similar) between FBOn
and the supply's feedback node because FBO provides a low impedance path to GND when the MSL2041/42 is
disabled or not energized, causing excessive VLED voltage when the supply comes up before the MSL2041/42.
Determine the change in power supply output voltage in response to a change in FBOn output current using:
VOUT  I FBOn  RTOP
Assure that the power supply output voltage settles within the default 4ms EO step-hold duration time for a voltage
step size of 1.1µA*RTOP (Figure 7-2 on page 20). See “Efficiency Optimizer Control Register (FBOCTRL, 0x11)” on
page 33 for information about the step size.
7.6
Using Multiple Efficiency Optimizers to Control a Common Power Supply
Cascade multiple Efficiency Optimizers (EOs), either within the same device or across multiple devices, into a
cascade configuration (Figure 7-5 on page 24), with the FBOn of one EO connected to the FBIn of the next. Connect
the last FBOn to the power supply feedback resistor node through a diode (1N4148 or similar) placed close to the
power supply feedback node, and unused FBIn inputs to ground as close to the MSL2041/2 as possible. The
cascaded EOs work together to ensure that all strings maintain LED current regulation while maintaining optimum
efficiency. Note that the accuracy of the feedback chain degrades through each link of the FBIn/FBOn chain by 2%
(typical). Derate the maximum FBOn current using:
I FBOn ( MAX / MIN )  280 .5 A * 0.98 
N 1
where N is the number of EOs connected in series. Use IFBOn(MAX/MIN) in the above RTOP resistor equation for the term
IFBOn(MAX) instead of using 280.5µA.
Take care in laying out the traces for the Efficiency Optimizer connections. Minimize the FBIn/FBOn trace lengths as
much as possible. Do not route the signals close to traces with large variations in voltage or current, because noise
may couple into FBIn. If these traces must be routed near noisy signals, shield them from noise by using ground
planes or guard traces. For clarity, Figure 7-5 on page 24 omits some connections. Note that because of the interplay
between EOs and the automatic fault response behavior, when both strings monitored by a single EO fault and turn
off, the string supply is forced to its maximum value and all remaining active strings may erroneously detect short
circuit faults and turn off.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
23
Figure 7-5.
EO Cascade Configuration of Two Devices, Six Strings and a Single String Power Supply.
VOUT
POWER
SUPPLY
RTOP
COUT
FB
1N4148
RBOTTOM
RS0
MSL2041
MSL2042
FBO1
G0
FBI1
G1
FBO2
G2
FBI2
G3
RS1
RS2
RS3
RS4
RS5
DEVICE ONE
MSL2041
MSL2042
G0
FBO1
FBI1
G1
VDD
FBO2
D2
FBI2
G2
2.2μF
S2
D3
G3
S3
DEVICE TWO
7.7
Choosing the Drain Resistor RD
The drain resistor RD connects the MSL2041/2 drain input to the drain of the external MOSFET. Choose RD ()
using:
 VOUT ( MAX )  N VF ( DARK )   22.5 
  1  10 5
RD  
I DARK


where VOUT(MAX) is the value calculated above in “Connecting the Efficiency Optimizer to an LED String Power Supply
and Selecting Resistors” on page 21, N is the number of LEDs in the string, IDARK is the maximum allowable string off
current (dark current) and VF(DARK) is the LED forward voltage drop at IDARK. When the value calculated for RD < 0 use
0.
If values for IDARK and VF(DARK) are not known, determine these numbers using the following method.
Set up the test circuit of Figure 7-6 on page 25. Adjust R1 until the current meter indicates IDARK (choose IDARK < 1mA).
Use a volt meter to measure the voltage at the anode of the LED (A), and then at the cathode of the LED (B). Subtract
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
24
the voltage measured at B from that measured at A to determine VF(DARK). Some typical values determined using this
method are listed in Table 7-2 on page 25.
Figure 7-6.
Test Circuit for Determining VF(DARK).
CURRENT
METER
I
VSOURCE
2.6V
A
+
B
R1
200k
Table 7-2.
Some Typical IDARK and VF(DARK) Values Determined Using Figure 7-6.
LED type
LED part #
IDARK (µA)
VF(DARK) (V)
Low power
LW Y1SG
1.72
2.285
Medium power
LW G6SP
1.67
2.276
High power
LXLW-PWC1
1.72
2.195
Large values of RD cause false LED short circuit faults. Discharge of the parasitic capacitance at the Dn node through
a large RD holds the node voltage above the string fault threshold for longer than the LED short circuit verification
time. The addition of a feed-forward capacitor, CFF in Figure 7-7 on page 25, mitigates this issue. The value for CFF
depends upon the amount of parasitic capacitance at the Dn node and the size of RD, but CFF = 15pF is an
appropriate first approximation.
Figure 7-7.
Feed Forward Capacitor.
CFF
Dn
RD
MSL2041
MSL2042
Gn
Sn
RS
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
25
7.8
Direct PWM Control of the LED Strings
Apply an external PWM signal to the inputs PWM0 - PWM3 (MSL2041) or PWM0 (MSL2042) to directly control the
string PWM dimming frequency and duty cycle. The PWM inputs recognize signals of DC to 50kHz, and 0% to 100%
duty cycle. The MSL2042, which uses a single PWM input, calculates and applies a progressive delay of 1/4th the
PWM period successively to strings one through three, while string zero follows the PWM input directly.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
26
8.
Register Map Summary
Control the MSL2041/2 using the registers in the range 0x00 through 0x18. Register bit values always revert to
their default values (Table 8-2 on page 28) when EN is driven low to high. Write only to registers listed in Table
8-1 on page 27.
Table 8-1.
Register Map
ADDRESS AND
REGISTER NAME
0x00
STRINGEN
REGISTER DATA
FUNCTION
D7
D6
D5
D4
D3
D2
D1
D0
LED String Enable
-
-
-
-
STR3EN
STR2EN
STR1EN
STR0EN
0x01 UNUSED
0x02
CONFIG
Configuration
FLDBKEN
I2CTOEN
–
–
STRSCFEN
STROCFEN
FBOEN
SLEEP
0x03
FLTSTATUS(1)
Fault Status
–
–
–
–
STRSCDET
STROCDET
–
FLTBDRV
0x04 - 0x07 UNUSED
0x08
FLTMASK
String Fault Mask
–
–
–
–
FLTMASK3
FLTMASK2
FLTMASK1
FLTMASK0
0x09
SCSTAT(1)
LED Short Circuit
Fault
–
–
–
–
SC3
SC2
SC1
SC0
0x0A
OCSTAT(1)
String Open Circuit
Fault
–
–
–
–
OC3
OC2
OC1
OC0
0x0B - 0x0D UNUSED
ISTR
8-Bit Global
String Current
0x10
RESERVED
Must Be 0x04
0x11
FBOCTRL
Efficiency
Optimizer Control
0x0E
ISTR[7:0]
0x0F UNUSED
0
0
DOWNSTEP[1:0]
0
0
0
1
0
0
UPSTEP[1:0]
–
–
ACALEN
ICHKDIS
–
–
–
0x12 - 0x13 UNUSED
0x14
FBODAC1(1)
0x15
FBODAC2(1)
Efficiency
Optimizer DAC
Readback
FBODAC1[7:0]
FBODAC2[7:0]
0x16 - 0x17 UNUSED
FBISTAT(1)
0x18
Note:
1.
FBI Status
–
–
FBIGNDSTAT[1:0]
–
Read Only Registers
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
27
8.1
Register Power-Up Defaults
Register power-up default values are shown in the Table 8-2 on page 28.
Table 8-2.
Register Power-Up Defaults
REGISTER NAME
AND ADDRESS
0x00
POWER- UP CONDITION
REGISTERS INITIALIZED FROM E²PROM
All Four LED String Drive Outputs Enabled
STRINGEN
REGISTER DATA
PAGE
D7
D6
D5
D4
D3
D2
D1
D0
HEX
28
0
0
0
0
1
1
1
1
0x0F
29
0
1
0
0
1
1
1
0
0x4E
Device Awake
Efficiency Optimizer Outputs Enabled
0x02
String Open Circuit Detection Enabled
CONFIG
LED Short Circuit Detection Enabled
I2C Timeout Enabled
String Current Fold-Back Disabled
0x08
FLTMASK
All Four Strings Monitored for Faults
31
0
0
0
0
1
1
1
1
0x0F
0x0E
ISTR
Global String Current is ½ its Full-scale Resistor
Set Value
32
0
1
1
1
1
1
1
1
0x7F
0x10
RESERVED
0x04
32
0
0
0
0
0
1
0
0
0x04
33
0
0
0
1
0
0
1
0
0x12
MOSFET Current Sink Error Detection Enabled
Efficiency Optimizer Auto-Recalibration Enabled
0x11
FBOCTRL
Efficiency Optimizer Initial Calibration Step Size =
1 LSBs
Efficiency Optimizer Headroom Correction Step
Size = 1 LSBs
8.2
Control Registers
8.2.1
Master String Enable Register (STRINGEN, 0x00)
The Master String Enable register individually enables/disables the string drive outputs G0 - G3. Disabled
outputs are held low and disabled strings are not monitored by the Efficiency Optimizer.
Table 8-3.
Master String Enable Register (STRINGEN, 0x00)
REGISTER DATA
REGISTER NAME
ADDRESS
D7
D6
D5
D4
D3
D2
D1
D0
STRINGEN
0x00
–
–
–
–
STR3EN
STR2EN
STR1EN
STR0EN
DEFAULT = 0x0F
0
0
0
0
1
1
1
1
LED Strings Disabled
–
–
–
–
0
0
0
0
LED Strings Enabled
–
–
–
–
1
1
1
1
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
28
8.2.2
Register 0x01
Registers 0x01 is unused.
8.2.3
Configuration Register (CONFIG, 0x02)
The Configuration register controls device sleep condition, enables the Efficiency Optimizer outputs, enables
string open- and short-circuit detection, enables the I2C bus timeout feature, and enables the current fold-back
feature.
Set the SLEEP bit D0 to 1 to put the MSL2041/2 to sleep. When sleeping, the G0 through G3 outputs are forced
low and the serial interface remains active; all registers remain unchanged unless re-programmed. Clear
SLEEP to 0 to exit sleep mode. Clearing SLEEP initiates an Efficiency Optimizer initial calibration cycle when
FBOEN (bit D1) is set to 1.
Set FBOEN (FeedBack Out Enable) bit D1 to 1 to allow the FBO1 and FBO2 outputs to exert control over the
LED string power supplies. To ensure the Efficiency Optimizer monitors LED string currents clear ICHKDIS (bit
D0 of FBO Control register 0x11) to 0 (it default value).
Set the STROCFEN (String Open Circuit Fault Enable) bit D2 to 1 to allow reporting of string open circuit
conditions in String Open Circuit Fault Status register 0x09, in Fault Status Register 0x03, and on the FLTB
output.
Set the STRSCFEN (String Short Circuit Fault Enable) bit D3 to 1 to allow reporting of string short circuit
conditions in LED Short Circuit Fault Status register 0x0A, in Fault Status Register 0x03 and on the FLTB
output.
Set the I2CTOEN (I2C Timeout Enable) bit D6 to 1 to enable I²C bus timeout detection. If either SDA or SCL
remain low for more than 30ms the serial interface resets and waits for a new start condition. Clear I2CTOEN to
0 to disable I²C bus timeout detection (“I2C Bus Timeout” on page 37).
Set FLDBKEN (Current Fold Back Enable) bit D7 to 1 to have the MSL2041/2 respond to a suspected LED short
circuit fault by automatically reducing the current of the suspect string to 1/10th its normal value, on a pulse by
pulse basis, while short circuit verification occurs. When verification fails, the string current returns to its set
value. When a short circuit is verified the string is disabled, the appropriate bits set in the Short Circuit Status
and Fault Status registers 0x0A and 0x03, and FLTB pulls low. PWM on-times less than 4ms do not trigger
current foldback. For additional information see “Typical Operating Characteristics” on page 8.
Table 8-4.
Configuration Register (CONFIG, 0x02), defaults highlighted
REGISTER DATA
REGISTER
ADDRESS
D7
D6
D5
D4
D3
D2
D1
D0
CONFIG
0x02
FLDBKEN
I2CTOEN
–
–
STRSCFEN
STROCFEN
FBOEN
SLEEP
DEFAULTS = 0x4E
0
1
0
0
1
1
1
0
Device Not Asleep
x
x
x
x
x
x
x
0
Device Asleep
x
x
x
x
x
x
x
1
FBO Outputs Disabled
x
x
x
x
x
x
0
x
FBO Outputs Enabled
x
x
x
x
x
x
1
x
String Open Circuit Detect Disabled
x
x
x
x
x
0
x
x
String Open Circuit Detect
Enabled
x
x
x
x
x
1
x
x
String Short Circuit Detect Disabled
x
x
x
x
0
x
x
x
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
29
Table 8-4.
Configuration Register (CONFIG, 0x02), defaults highlighted
String Short Circuit Detect
Enabled
x
x
x
x
1
x
x
x
I2C Timeout Disabled
x
0
x
x
x
x
x
x
I2C Timeout Enabled
x
1
x
x
x
x
x
x
Current Fold-back Disabled
0
x
x
x
x
x
x
x
Current Fold-back Enabled
1
x
x
x
x
x
x
x
8.2.4
Fault Status Register (FLTSTATUS, 0x03)
The read only Fault Status register reports when string open circuit and LED short circuit conditions are
identified in Open- and Short-Circuit Status registers 0x09 and 0x0A, if these conditions are allowed to
propagate up to this register by the settings in Fault Mask register 0x08. When faults are reported in
FLTSTATUS, determine details about the fault by reading the Open- and Short-Circuit Status registers 0x09
and 0x0A. For additional information on how these registers work together see Figure 7-1 on page 19.
The FLTBDRV (Fault Bar output Drive) bit D0 sets to 1 when one or more of the fault bits D2 and D3 set. The
FLTB output pulls low when FLTBDRV sets. When FLTB is detected as low, query FLTBDRV to verify that
FLTB is being pulled low, by the MSL2041/2.
The STROCFLT (String Open Circuit Fault) bit D2 sets to 1 when one or more of the bits in Open Circuit Status
register 0x09 sets, when the associated bits in Fault Mask register 0x08 allow the fault to propagate to this
register.
The STRSCFLT (String Short Circuit Fault) bit D3 sets to 1 when one or more of the bits in Short Circuit Status
register 0x0A set, when the associated bits in Fault Mask register 0x08 allow the fault to propagate to this
register.
Table 8-5.
Fault Status Register (FLTSTATUS, 0x03)
REGISTER DATA
REGISTER
ADDRESS
D7
D6
D5
D4
D3
D2
D1
D0
0x03
–
–
–
–
STRSCFLT
STROCFLT
–
FLTBDRV
x
x
x
x
x
x
x
0
x
x
x
x
x
x
x
1
No Strings Report an Open Circuit Fault
x
x
x
x
x
0
x
x
One or More Strings Report an Open Circuit Fault
x
x
x
x
x
1
x
1
No Strings Report a Short Circuit Fault
x
x
x
x
0
x
x
x
One or More Strings Report a Short Circuit Fault
x
x
x
x
1
x
x
1
FLTSTATUS
(Read Only)
FLTB Output is not Pulled Low
FLTB Output is Pulled Low Because
bits D2 and/or D3 are High
8.2.5
Registers 0x04 through0x07
Registers 0x04 - 0x07 are unused.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
30
8.2.6
Fault Mask Register (FLTMASK, 0x08)
The Fault Mask register selects which string faults indicated in registers 0x09 and 0x0A are allowed to change
the Fault Status register 0x03, and thus activate the open drain fault output FLTB. For additional information on
how these register work together see Figure 7-1 on page 19.
Table 8-6.
Fault Mask Register (FLTMASK, 0x08), defaults highlighted
REGISTER DATA
REGISTER
ADDRESS
D7
D6
D5
D4
D3
D2
D1
D0
FLTMASK
0x08
–
–
–
–
FLTMASK3
FLTMASK2
FLTMASK1
FLTMASK0
DEFAULTS = 0x0F
0
0
0
0
1
1
1
1
Strings 0 thru 3 Faults Masked
x
x
x
x
0
0
0
0
Strings 0 thru 3 Faults UnMasked
x
x
x
x
1
1
1
1
8.2.7
Open and Short Circuit Status Registers (OCSTAT, 0x09 and SCSTAT, 0x0A)
The read only Open and Short Circuit Status register bits set when fault conditions are verified for the indicated
strings. Reading these registers clears them, but the bits reassert if the fault conditions persist. Set STROCFEN
and STRSCFEN (bits D1 and D2 of the Configuration register 0x02) to ‘1’, for open and short circuit faults to be
recorded in these registers. Open circuit fault detection is automatically disabled, independent of STROCFEN,
when current sink error detection is disabled via ICHKDIS (bit D0 in the Efficiency Optimizer Control register
0x11). For additional information on how these register work together see Figure 7-1 on page 19.
Table 8-7.
Open Circuit Status Register (OCSTAT, 0x09)
REGISTER DATA
REGISTER
ADDRESS
D7
D6
D5
D4
D3
D2
D1
D0
OCSTAT (Read Only)
0x09
–
–
–
–
OC3
OC2
OC1
OC0
No Open Circuit String Fault Detected for Strings 0 - 3
x
x
x
x
0
0
0
0
Open Circuit String Fault Detected for Strings 0 - 3
x
x
x
x
1
1
1
1
Table 8-8.
Short Circuit Status Register (SCSTAT 0x0A)
REGISTER DATA
8.2.8
REGISTER
ADDRESS
D7
D6
D5
D4
D3
D2
D1
D0
SCSTAT (Read Only)
0x0A
–
–
–
–
SC3
SC2
SC1
SC0
No Short Circuit String Fault Detected for Strings 0 - 3
x
x
x
x
0
0
0
0
Short Circuit String Fault Detected for Strings 0 - 3
x
x
x
x
1
1
1
1
Registers 0x0B through 0x0D
Registers 0x0B - 0x0D are unused.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
31
8.2.9
String Current Control Register (ISTR, 0x0E)
The global String Current Control register ISTR scales down the resistor set string regulation current, for all
strings. ISTR offers 8-bit resolution, and allows 255 even current steps with each step equal to IILED / 255. When
using ISTR to adjust global string current determine the value of RS (in ) using:
 ISTR   0.502  

RS  
  
 255   I LED 
where ISTR = 255, its maximum value, and ILED is the full scale string current. The simplified formula on
page 15, uses the default value 0x7F (127 decimal) for ISTR. Setting ISTR < 0x05 will result in diminished
current accuracy and phantom LED short circuit faults, and is not recommended.
Table 8-9.
String LED Current Control Register (ISTR, 0x0E), defaults highlighted
REGISTER DATA
REGISTER
ADDRESS
ISTR
0x0E
D7
D6
D5
D4
D3
D2
D1
D0
ISTR[7:0]
DEFAULTS = 0x7F
0
1
1
1
1
1
1
1
ISTRING = IILED * (5 / 255)
0
0
0
0
0
1
0
1
ISTRING = IILED * (6 / 255)
0
0
0
0
0
1
1
0
ISTRING = IILED * (7 / 255)
0
0
0
0
0
1
1
1
1
1
1
1
... etc ...
... etc ...
ISTRING = IILED * (127 / 255)
0
1
1
1
... etc ...
... etc ...
ISTRING = IILED * (253 / 255)
1
1
1
1
1
1
0
1
ISTRING = IILED * (254 / 255)
1
1
1
1
1
1
1
0
ISTRING = IILED * (255 / 255)
1
1
1
1
1
1
1
1
8.2.10 Register 0x0F
Registers 0x0F is unused.
8.2.11 Reserved Register (RESERVED, 0x10)
The reserved register default value is 0x04. Reading this register does not change its value. When writing to this
register always write a value of 0x04.
Table 8-10.
Reserved Register (RESERVED, 0x10), defaults highlighted
REGISTER DATA
REGISTER
ADDRESS
RESERVED
0x10
DEFAULTS = 0x04
D7
D6
D5
D4
D3
D2
D1
D0
1
0
0
Reserved
0
0
0
0
0
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
32
8.2.12 Efficiency Optimizer Control Register (FBOCTRL, 0x11)
The Efficiency Optimizer Control register 0x11 configures various functions associated with the Efficiency
Optimizer (EO) circuits. Read the “Efficiency Optimizer” on page 20, for more information about these EO
Control register bits. Configure all EO controls while SLEEP (bit D0 in the Configuration register 0x02) is 1, or
while the FBOEN (bit D1 in 0x02) is 0, to avoid perturbations of the string power supplies. The MSL2041/2
always perform an initial power supply voltage calibration (Figure 7-2 on page 20) when the EO is started. The
EO is started when either taking SLEEP from 1 to 0 while FBOEN is set to 1, or when taking FBOEN bit from 0
to 1 while the SLEEP bit is set to 0. Additionally, when the MSL2041/42 is powered up while EN is high, or when
EN is taken high while the MSL2041/42 is powered up, an initial calibration is automatically performed.
Set ICHKDIS (FET Current Check Disable) bit D0 to 1 to disable current sink error detection for the EOs. Clear
FBOEN (bit D1 in register 0x02) to 0 before setting ICHKDIS to 1. If ICHKDIS = 1 when FBOEN = 1 then the
FBO1 and FBO2 outputs increment to their maximum output currents, forcing the string power supplies to their
minimum output voltage. Open circuit fault detection of all LED strings is disabled when ICHKDIS = 1. Use
ICHKDIS as a debugging and testing tool that allows for checking of power supply connectivity and range of
control not for device or system control in a finished product.
Set ACALEN (Automatic Calibration Enable) bit D1 to 1 to enable automatic power supply voltage recalibration
for the EOs. With ACALEN = 1, the MSL2041/2 periodically optimizes the power supply output voltages through
the FBO1 and FBO2 outputs after initial calibration. This is done to maintain optimal efficiency as the LED VF
changes with time, current or temperature. The time between consecutive EO auto-recalibration cycles is one
second.
The UPSTEP (Up Steps) bits D4 and D5 control the size of the current steps, in LSBs, that the EO takes when
raising the string power supply voltage after detecting a current sink error (Figure 7-2 on page 20). Each LSB
equates to a 1.1µA change in FBO current. The affect UPSTEP has on the size of the output voltage step
depends on the value of RTOP (see page 22) per the equations:
I FBO  1.1A  UPSTEP
and
VOUT  I FBO  RTOP
where each steps current change DIFBO = 1.1µA * UPSTEP, and where UPSTEP is the LSB value selected
using UPSTEP[1:0]. The EO stops adjusting when IFBO ≥ IFBO0 + 3µA, where IFBO0 is the FBO current when a
FET current sink error is detected (Figure 7-2 on page 20 and Figure 8-1 on page 34). Assure that, given the
maximum step size, the power supply settles in less than the 4ms EO step-hold duration.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
33
Figure 8-1.
Headroom Adjustment Voltage Waveform Details. See Figure 7-2 on page 20 for Full Waveform.
D
4ms
D
C
C
B
A
A
(a)
B
(b)
A: CURRENT SOURCE ERROR DETECTED
B: THREE LSBs ABOVE A (1 LSB = 1.1µA CHANGE IN FBOn CURRENT)
C: STEP SIZE PER UPSTEP[1:0] IN FBOCTRL REGISTER 0x11
(a) UPSTEP = 0b01 (1 LSB PER STEP – DEFAULT VALUE)
(b) UPSTEP = 0b10 (2 LSBs PER STEP)
D: FINAL VALUE; ADJUSTMENT STOPS WHEN IFBOD = IFBOA + 3µA
The DOWNSTEP (Down Step) bits D6 and D7 control the size of the initial calibration steps of the EO (Figure 72 on page 20). DOWNSTEP sets the number of LSBs for each step, with one LSB equal to 1.1µA change in
FBOn current. The affect this setting has on the size of the output voltage step depends on the value of RTOP
(see page 22) per the equations:
I FBO  1.1A  DOWNSTEP
and
VOUT  I FBO  RTOP
where each step’s current change DIFBO = 1.1µA * DOWNSTEP, and where DOWNSTEP is the LSB value
selected using DOWNSTEP[1:0].
Table 8-11. Efficiency Optimizer Control Register (FBOCTRL, 0x11), defaults highlighted
REGISTER DATA
REGISTER
ADDRESS
FBOCTRL
0x11
D7
D6
DOWNSTEP[1:0]
D5
D4
UPSTEP[1:0]
D3
D2
D1
D0
-
-
ACALEN
ICHKDIS
DEFAULTS = 0x12
0
0
0
1
0
0
1
0
Efficiency Optimizer Current Sink
Error Detection Enabled
x
x
x
x
x
x
x
0
Efficiency Optimizer Current Sink Error
Detection Disabled
x
x
x
x
x
x
x
1
Efficiency Optimizer Auto-Recalibration
Disabled
x
x
x
x
x
x
0
x
Efficiency Optimizer Auto-Recalibration Enabled
x
x
x
x
x
x
1
x
Up Step Size = 3 LSBs
x
x
0
0
x
x
x
x
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
34
Table 8-11. Efficiency Optimizer Control Register (FBOCTRL, 0x11), defaults highlighted (Continued)
Up Step Size = 1 LSB
x
x
0
1
x
x
x
x
Up Step Size = 2 LSBs
x
x
1
0
x
x
x
x
Up Step Size = 4 LSBs
x
x
1
1
x
x
x
x
Down Step Size = 1 LSB
0
0
x
x
x
x
x
x
Down Step Size = 2 LSB
0
1
x
x
x
x
x
x
Down Step Size = 3 LSB
1
0
x
x
x
x
x
x
Down Step Size = 4 LSB
1
1
x
x
x
x
x
x
8.2.13 Registers 0x12 and 0x13
Registers 0x12 - 0x13 are unused.
8.2.14 Efficiency Optimizer DAC Readback Registers (FBODAC1, 0x14, FBODAC2, 0x15)
The read only Efficiency Optimizer (EO) DAC Readback registers 0x14 and 0x15 contain the 8-bit DAC settings
of the FBO1 and FBO2 EO outputs. These read-only registers return internal status; it is not possible to preset
the DACs. Caclulate each FBOn output current, IFBOn (in µA), as a function of the DAC setting using:
I FBOn  1.1  FBODACn µA
where FBODACn is the decimal value of the associated EO DAC Readback register. The LSB value of the
FBODAC is 1.1µA. The EO current outputs FBO1 and FBO2 are voltage compliant from 0V to 3.5V.
Set FBOEN (bit D1 in Configuration register 0x02) to 1 to globally enable the EO circuits, and to command the
FBO1 and FBO2 outputs to control the LED string power supply voltages. When either FBOEN is cleared to 0 or
SLEEP (bit D0 of Configuration register 0x02) is set to 1, the EO is disabled. When disabled, EO outputs FBO1
and FBO2 decrement to zero, causing the LED string power supplies to increment up to their maximum
voltages. Monitor this process by repeated reads of these DAC Readback registers, which all read zero when
the DACs ramp-downs (Voltages ramp ups) are complete. Do not re-enable the EOs until both DACs read zero.
When current sink error detection is disabled by setting the ICHKDIS (bit D0 in the FBO Control register 0x11) to
1 while the EO circuit is enabled (FBOEN bit is 1 in Configuration register 0x02), the EOs increment the FBO1
and FBO2 outputs up to 0xFF. This decrements the LED string power supply voltages down to their minimum
controllable voltage. Monitor this process by repeated reads of these DAC Readback registers, which all read
0xFF when the DACs ramp-ups (Voltages ramp downs) are complete.
Table 8-12.
Efficiency Optimizer DAC Readback Registers (FBODAC1, 0x14 through FBODAC2, 0x15)
REGISTER DATA
REGISTER
ADDRESS
D7
D6
D5
D4
D3
FBODAC1 (READ-ONLY)
0x14
FBODAC1[7:0]
FBODAC2 (READ-ONLY)
0x15
FBODAC2[7:0]
D2
D1
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
D0
35
8.2.15 Registers 0x16 through 0x17
Registers 0x16 - 0x17 are unused.
8.2.16 FBI Status Register (FBISTATUS, 0x18)
FBIGNDSTAT (FBI Grounded Status) bits D4 and D5 report if the FBI inputs are shorted to ground.
Table 8-13. FBI Status Register (FBISTAT, 0x18)
REGISTER DATA
REGISTER
ADDRESS
D7
D6
D5
FBISTATUS (Read Only)
0x18
–
–
Neither FBI Input is Grounded
x
x
0
FBI1 is Grounded
x
x
FBI2 is Grounded
x
FBI1 and FBI2 are Grounded
x
D4
D3
D2
D1
D0
–
–
–
–
0
x
x
x
x
0
1
x
x
x
x
x
1
0
x
x
x
x
x
1
1
x
x
x
x
FBIGNDSTAT[1:0]
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
36
9.
I²C/SMBus Serial Interface
The MSL2041/2 operate as slaves that send and receive data through an I²C/SMBus compatible 2-wire serial
interface. The interface is not needed, but is provided to allow control and monitoring over some device functions and
advanced features. These functions include Efficiency Optimizer behavior and status, the disabling of individual
strings, putting the device to sleep without losing the register settings (as happens when EN is toggled) and fault
response behavior and status.
The MSL2041/2 I²C/SMBus compatible interface is suitable for 100kHz, 400kHz and 1MHz communication. The
interface uses bi-directional data line SDA and clock input SCL to achieve bidirectional communication between
master and slaves. The FLTB fault output optionally alerts the host system to faults detected by the MSL2041/2
(Figure 9-1 on page 37). During over temperature shutdown the serial interface is disabled.
The master, typically a microcontroller, initiates all data transfers, and generates the clock that synchronizes the
transfers. SDA operates as both an input and an open-drain output. SCL operates only as an input, and does not
perform clock-stretching. Pull-ups are required on SDA, SCL and FLTB.
Figure 9-1.
I2C Interface Connections.
VI2C
2 x 2.2k
TYPICAL
100k
MASTER SDA
SCL
INT
(μC)
SDA
SCL
FLTB
MSL2041
MSL2042
A transmission consists of a START condition sent by a master, a 7-bit slave address plus one R/W bit, an
acknowledge bit, none or many data bytes each separated by an acknowledge bit, and a STOP condition (Figure 9-2,
Figure 9-4 and Figure 9-5 on page 38).
Figure 9-2.
I2C serial interface timing details.
SDA
tBUF
tSU:DAT
tSU:STA
tHD:STA
tHD:DAT
tSU:STO
tLOW
SCL
tHIGH
tHD:STA
tR
START
CONDITION
9.1
tF
REPEATED START
CONDITION
START
STOP
CONDITION CONDITION
I2C Bus Timeout
The bus timeout feature allows the MSL2041/42 to reset the serial bus interface if a communication ceases before a
STOP condition is sent. If SCL or SDA is low for more than 30ms (typical), then the MSL2041/42 terminates the
transaction, releases SDA and waits for another START condition.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
37
9.2
I2C Bit Transfer
One data bit is transferred during each clock pulse. SDA must remain stable while SCL is high.
Figure 9-3. I2C bit transfer.
SDA
SCL
9.3
SDA ALLOWED TO
CHANGE LEVEL
SDA LEVEL STABLE
SDA DATA VALID
I2C START and STOP Conditions
Both SCL and SDA remain high when the interface is free. The master signals a transmission with a START condition
(S) by transitioning SDA from high to low while SCL is high. When the master has finished communicating with the
slave, it issues a STOP condition (P) by transitioning SDA from low to high while SCL is high. The bus is then free.
Figure 9-4. I2C START and STOP conditions.
SDA
S
P
START
CONDITION
STOP
CONDITION
SCL
9.4
I2C Acknowledge Bit
The acknowledge bit is a clocked 9th bit which the recipient uses to handshake receipt of each byte of data. The
master generates the 9th clock pulse, and the recipient holds SDA low during the high period of the clock pulse. When
the master is transmitting to the MSL2041/42, the MSL2041/42 pulls SDA low because the MSL2041/42 is the
recipient. When the MSL2041/42 is transmitting to the master, the master pulls SDA low because the master is the
recipient.
Figure 9-5. I2C acknowledge.
SCL
1
2
8
9
1
SDA
TRANSMITTER
S
A
START
CONDITION
ACKNOWLEDGE
BY RECEIVER
SDA
RECEIVER
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
38
I2C Slave Address
9.5
The MSL2041/42 has a 7-bit long slave address, 0b0100000, followed by an eighth bit, the R/W bit. The R/W bit is low
for a write to the MSL2041/42, high for a read from the MSL2041/42. All MSL2041/42 devices have the same slave
address; when using multiple devices and communicating with them through their serial interfaces, make external
provision to route the serial interface to the appropriate device. Note that development systems that use I2C often leftshift the address one position before they insert the R/W bit, and so expect a default address of 0x20 (not 0x40).
Figure 9-6. I2C slave address.
A7 = 1
SDA
A6 = 0
A5 = 1
A4 = 1
A5 =0
A6 = 0
A7 = 0
R/W
A
2
3
4
5
6
7
8
9
MSB
1
SCL
I2C Message Format for Writing to the MSL2041/42
9.6
A write to the MSL2041/42 contains the MSL2041/42’s slave address, the R/W bit cleared to 0, and at least 1 byte of
information (Figure 9-7 on page 39). The first byte of information is the register address byte. The register address
byte is stored as a register pointer, and determines which register the following byte is written into. If a STOP condition
is detected after the register address byte is received, then the MSL2041/42 takes no further action beyond setting the
register pointer.
Figure 9-7. I2C writing a register pointer.
ACKNOWLEDGE
FROM MSL2041/2
START
SDA
1
0
1
0
0
0
0
0
A
D7
.
SLAVE ADDRESS,
WRITE ACCESS
ACKNOWLEDGE
STOP
FROM MSL2041/2
.
.
.
.
.
D0
A
SET REGISTER
POINTER TO X
THE REGISTER POINTER NOW POINTS TO X; A SUBSEQUENT READ
ACCESS READS FROM REGISTER ADDRESS X
When no STOP condition is detected, the byte transmitted after the register address byte is a data byte, and is placed
into the register pointed to by the register address byte (Figure 9-8). To simplify writing to multiple consecutive
registers, the register pointer auto-increments during each following acknowledge period. Further data bytes
transmitted before a STOP condition fill subsequent registers.
I2C writing two data bytes.
Figure 9-8.
ACKNOWLEDGE
FROM MSL2041/2
START
SDA
1
0
1
0
0
0
SLAVE ADDRESS,
WRITE ACCESS
0
0
A
D7
.
ACKNOWLEDGE
FROM MSL2041/2
.
.
.
.
SET REGISTER
POINTER TO X
.
D0
A
D7
.
ACKNOWLEDGE
FROM MSL2041/2
.
.
.
.
.
DATA WRITES TO
REGISTER X
D0
A
D7
.
ACKNOWLEDGE
FROM MSL2041/2
.
.
.
.
.
D0
STOP
A
DATA WRITES TO
REGISTER X + 1
THE REGISTER POINTER NOW POINTS TO X + 2; A SUBSEQUENT READ
ACCESS BEGINS READING FROM REGISTER ADDRESS X + 2
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
39
9.7
I2C Message Format for Reading from the MSL2041/42
The first technique begins the same way as a write, by setting the register address pointer as shown in Figure 9-7,
including the STOP condition (note that even though the final objective is to read data, the R/W bit is first sent as a
write because the address pointer byte is being written into the device). Follow the Figure 9-7 transaction by what
shown in Figure 9-9, with a new START condition and the slave address, this time with the R/W bit set to 1 to indicate
a read. Then, after the slave initiated acknowledge bit, clock out as many bytes as desired, separated by master
initiated acknowledges. The pointer auto-increments during each master initiated acknowledge period. End the
transmission with a not-acknowledge followed by a stop condition.
I2C reading register data with preset register pointer.
Figure 9-9.
ACKNOWLEDGE
FROM MSL2041/2
START
SDA
1
0
1
0
0
0
0
1
A
.
D7
SLAVE ADDRESS,
READ ACCESS
ACKNOWLEDGE
FROM MASTER
.
.
.
.
.
D0
A
D7
NOT ACKNOWLEDGE
FROM MASTER
.
READ REGISTER
ADDRESS X
.
.
.
.
.
STOP
D0
A
READ REGISTER
ADDRESS X + 1
THE REGISTER POINTER NOW POINTS TO X + 2; A SUBSEQUENT
READ ACCESS READS FROM REGISTER ADDRESS X + 2
The second read technique is illustrated in Figure 9-10. Write to the MSL2041/42 to set the register pointer, send a
repeated START condition after the second acknowledge bit, then send the slave address again with the R/W bit set
to 1 to indicate a read. Then clock out the data bytes separated by master initiated acknowledge bits. The register
pointer auto-increments during each master initiated acknowledge period. End the transmission with a notacknowledge followed by a stop condition. This technique is recommended for buses with multiple masters, because
the read sequence is performed in one uninterruptible transaction.
I2C reading register data using a repeated START
Figure 9-10.
ACKNOWLEDGE
FROM MSL2041/2
START
SDA
1
0
1
0
0
0
SLAVE ADDRESS
WRITE ACCESS
9.8
0
0
A
D7
ACKNOWLEDGE
FROM MSL2041/2
.
.
.
.
.
.
SET REGISTER
POINTER
D0
REPEATED
START
A
1
ACKNOWLEDGE
FROM MSL2041/2
0
1
0
0
0
0
1
A
SLAVE ADDRESS
READ ACCESS
D7
NOT ACKNOWLEDGE
STOP
FROM MASTER
.
.
.
.
.
.
D0
A
READ REGISTERS
I2C Message Format for Broadcast Writing to Multiple devices
With a broadcast write to MSL2041/42, a master broadcasts the same register data to all MSL2041/42s on the bus.
First send the broadcast write slave address of 0x00, followed by the MSL2041/42 broadcast device ID of 0x42.
These two bytes are followed by the register address in the MSL2041/42s that the following data are to be written into,
and finally the data byte(s) to be written into all devices.
A broadcast write example is shown in Figure 9-11. Here, the same register address in every MSL2041/42 is written
to with identical data. If further data bytes are transmitted before the STOP condition, they are stored in subsequent
internal registers of each MSL2041/42.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
40
Figure 9-11. I2C broadcast writing a data byte.
ACKNOWLEDGE
FROM MSL2041/2
START
SDA
0
0
0
0
0
0
0
0
A
0
BROADCAST WRITE
SLAVE ADDRESS
1
ACKNOWLEDGE
FROM MSL2041/2
0
0
0
0
1
0
A
D7
.
ACKNOWLEDGE
FROM MSL2041/2
.
.
.
.
.
D0
A
D7
SETS ALL REGISTER
POINTERS TO X
MSL2041/2 BROADCAST ID
.
ACKNOWLEDGE
FROM MSL2041/2
.
.
.
.
.
D0
STOP
A
DATA WRITES TO ALL
REGISTER Xs
ALL REGISTER POINTERS NOW POINT TO X + 1; THE FIRST SUBSEQUENT READ
ACCESS OF EACH MSL2041/2 READS FROM REGISTER ADDRESS X + 1
There is no broadcast read. However, use a broadcast write to set up the internal register pointers of all the
MSL2041/2s in a system to speed up the subsequent individual reading, for example, all the status registers. Figure 912 illustrates a broadcast write that sets all the register pointers, and issues a STOP.
Figure 9-12. I2C broadcast writing a register pointer.
ACKNOWLEDGE
FROM MSL2041/2
START
SDA
0
0
0
0
0
0
0
BROADCAST WRITE
SLAVE ADDRESS
0
A
0
1
ACKNOWLEDGE
FROM MSL2041/2
0
0
0
0
1
0
MSL2041/2 BROADCAST ID
A
D7
.
ACKNOWLEDGE
FROM MSL2041/2
.
.
.
.
.
D0
STOP
A
SETS ALL REGISTER
POINTERS TO X
ALL REGISTER POINTERS NOW POINT TO X; THE FIRST SUBSEQUENT READ ACCESS
OF EACH MSL2041/2 BEGINS READING FROM REGISTER ADDRESS X
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
41
Packaging Information
(SIDE VIEW)
(TOP VIEW)
0.1 C
0.1 C
10.
D
28
d
d 0.08 C
SEATING PLANE
0.1 C
1
2
PIN 1 ID
E
A1
(A3)
A
D2
C
e
COMMON DIMENSIONS
(UNIT OF MEASURE=MM)
E2
PIN 1 ID
SYMBOL
2
1
K
-
0.85
0.90
0.00
-
0.05
D2
2. Dimension "b" applies to metalized terminal and is measured between
0.15mm and 0.30mm from the terminal tip. If the terminal has the optional
radius on the other end of the terminal, the dimension should not be
measured in that radius area.
E2
0.25
0.30
2
5.00 BSC
3.60
3.70
3.80
5.00 BSC
E
1. Refer to JEDEC Drawing MO-220 viaration VHHD-3 (SAW SINGULATION)
NOTE
0.203 REF
0.20
D
(BOTTOM VIEW)
MAX
A
b
28X b
NOM
A1
A3
28
28X L
MIN
3.60
e
3.70
3.80
0.50 BSC
L
0.35
0.40
0.45
K
0.20
-
-
7/12/2011
Package Drawing Contact:
[email protected]
TITLE
GPC
DRAWING NO.
REV.
28M2, 28-pad, 5x5x0.9mm Body, 0.50mm pitch,
3.70x3.70mm ePAD, Sawn Very-thin, Fine-pitch
Quad Flat No Lead Package (VQFN)
ZMH
28M2
A
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
42
11.
Datasheet Revision History
Doc. Rev.
Date
42225A
02/2014
Comments
Initial document release.
MSL2041/2042 [Preliminary Datasheet]
Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014
43
XXXXXX
Atmel Corporation
1600 Technology Drive, San Jose, CA 95110 USA
T: (+1)(408) 441.0311
F: (+1)(408) 436.4200
|
www.atmel.com
© 2014 Atmel Corporation. / Rev.: Atmel-42225A-AVR-LED Driver-MSL2041/2042-Datasheet_02/2014.
Atmel®, Atmel logo and combinations thereof, and others are registered trademarks or trademarks of Atmel Corporation or its subsidiaries. Other terms and product
names may be trademarks of others.
DISCLAIMER: The information in this document is provided in connection with Atmel products. No license, express or implied, by estoppel or otherwise, to any intellectual property right
is granted by this document or in connection with the sale of Atmel products. EXCEPT AS SET FORTH IN THE ATMEL TERMS AND CONDITIONS OF SALES LOCATED ON THE
ATMEL WEBSITE, ATMEL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY WARRANTY RELATING TO ITS PRODUCTS
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT
SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES
FOR LOSS AND PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF ATMEL HAS
BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Atmel makes no representations or warranties with respect to the accuracy or completeness of the contents of this
document and reserves the right to make changes to specifications and products descriptions at any time without notice. Atmel does not make any commitment to update the information
contained herein. Unless specifically provided otherwise, Atmel products are not suitable for, and shall not be used in, automotive applications. Atmel products are not intended,
authorized, or warranted for use as components in applications intended to support or sustain life.
SAFETY-CRITICAL, MILITARY, AND AUTOMOTIVE APPLICATIONS DISCLAIMER: Atmel products are not designed for and will not be used in connection with any applications where
the failure of such products would reasonably be expected to result in significant personal injury or death (“Safety-Critical Applications”) without an Atmel officer's specific written
consent. Safety-Critical Applications include, without limitation, life support devices and systems, equipment or systems for the operation of nuclear facilities and weapons systems.
Atmel products are not designed nor intended for use in military or aerospace applications or environments unless specifically designated by Atmel as military-grade. Atmel products are
not designed nor intended for use in automotive applications unless specifically designated by Atmel as automotive-grade.