Skip to main content
added 2183 characters in body
Source Link
Oli Glaser
  • 55.5k
  • 3
  • 77
  • 148

LEDs are not ideal diodes, so the "turn on" point (Vf) is not a perfectly sharp transition. If we look at the I-V curve for a typical LED, we can see this:

LED I-V Curves

The Vf is often taken at e.g. 20mA (some datasheets will give a couple of Vfs at different currents)

From this we can see that it's hard to control an LED by altering the voltage across it, so for the best control a constant current driver is needed. You can buy lots of ICs dedicated to this task, or you can roll your own simple source.
With a constant current driver, if the LEDs Vf varies (process, temperature, etc) then the driver compensates to keep the current constant, so this is the way to do things if you want the current to be exact irrespective of part variability (note the brightness at XmA may be different though, as this varies too)


Driving LEDs with a supply voltage above, below or above/below your output voltage

There are different types of LED drivers - some are just a basic constant current limiter, and some use a boost (or buck) topology or charge pump to provide a wider compliance range for the constant current.

Simple constant current driver:

A simple constant current driver will lose regulation as the voltage approaches the supply voltage (due to the drop across the limiting element) This will be given in the datasheet (see lowest supply overhead in this example part datasheet, pg.10)

Simple LED Driver

Boost LED Driver

A LED driver that uses a boost topology (just like a switching regulator but set for constant current rather than voltage) will still provide a constant current, but it increases it's voltage above the supply range to enable driving of LEDs in series with a total Vf above the supply voltage:

LED Boost Driver

SEPIC, Buck-Boost, Cuk LED drivers

Okay, so what about the case when your input voltage varies above and below the output voltage? A typical case could be when using a Li-Ion battery which can vary over ~4.3V - ~2.7V and an output of 3V is needed to push the desired current through the LEDs.
In this case we use either a SEPIC, buck-boost or Cuk driver. All can do the same thing here but have different topologies (why you would pick one over the other is further reading you may want to do - plenty of Books/App notes out there...)

Anyway, here's an example of a SEPIC circuit using the LM3410:

LED SEPIC Driver

And here is a table of the efficiency at input voltage above and below the output voltage, you can see regulation of the LED current is maintained perfectly:

LED SEPIC efficiency

LEDs are not ideal diodes, so the "turn on" point (Vf) is not a perfectly sharp transition. If we look at the I-V curve for a typical LED, we can see this:

LED I-V Curves

The Vf is often taken at e.g. 20mA (some datasheets will give a couple of Vfs at different currents)

From this we can see that it's hard to control an LED by altering the voltage across it, so for the best control a constant current driver is needed. You can buy lots of ICs dedicated to this task, or you can roll your own simple source.
With a constant current driver, if the LEDs Vf varies (process, temperature, etc) then the driver compensates to keep the current constant, so this is the way to do things if you want the current to be exact irrespective of part variability (note the brightness at XmA may be different though, as this varies too)

LEDs are not ideal diodes, so the "turn on" point (Vf) is not a perfectly sharp transition. If we look at the I-V curve for a typical LED, we can see this:

LED I-V Curves

The Vf is often taken at e.g. 20mA (some datasheets will give a couple of Vfs at different currents)

From this we can see that it's hard to control an LED by altering the voltage across it, so for the best control a constant current driver is needed. You can buy lots of ICs dedicated to this task, or you can roll your own simple source.
With a constant current driver, if the LEDs Vf varies (process, temperature, etc) then the driver compensates to keep the current constant, so this is the way to do things if you want the current to be exact irrespective of part variability (note the brightness at XmA may be different though, as this varies too)


Driving LEDs with a supply voltage above, below or above/below your output voltage

There are different types of LED drivers - some are just a basic constant current limiter, and some use a boost (or buck) topology or charge pump to provide a wider compliance range for the constant current.

Simple constant current driver:

A simple constant current driver will lose regulation as the voltage approaches the supply voltage (due to the drop across the limiting element) This will be given in the datasheet (see lowest supply overhead in this example part datasheet, pg.10)

Simple LED Driver

Boost LED Driver

A LED driver that uses a boost topology (just like a switching regulator but set for constant current rather than voltage) will still provide a constant current, but it increases it's voltage above the supply range to enable driving of LEDs in series with a total Vf above the supply voltage:

LED Boost Driver

SEPIC, Buck-Boost, Cuk LED drivers

Okay, so what about the case when your input voltage varies above and below the output voltage? A typical case could be when using a Li-Ion battery which can vary over ~4.3V - ~2.7V and an output of 3V is needed to push the desired current through the LEDs.
In this case we use either a SEPIC, buck-boost or Cuk driver. All can do the same thing here but have different topologies (why you would pick one over the other is further reading you may want to do - plenty of Books/App notes out there...)

Anyway, here's an example of a SEPIC circuit using the LM3410:

LED SEPIC Driver

And here is a table of the efficiency at input voltage above and below the output voltage, you can see regulation of the LED current is maintained perfectly:

LED SEPIC efficiency

Source Link
Oli Glaser
  • 55.5k
  • 3
  • 77
  • 148

LEDs are not ideal diodes, so the "turn on" point (Vf) is not a perfectly sharp transition. If we look at the I-V curve for a typical LED, we can see this:

LED I-V Curves

The Vf is often taken at e.g. 20mA (some datasheets will give a couple of Vfs at different currents)

From this we can see that it's hard to control an LED by altering the voltage across it, so for the best control a constant current driver is needed. You can buy lots of ICs dedicated to this task, or you can roll your own simple source.
With a constant current driver, if the LEDs Vf varies (process, temperature, etc) then the driver compensates to keep the current constant, so this is the way to do things if you want the current to be exact irrespective of part variability (note the brightness at XmA may be different though, as this varies too)