Advanced light-emitting diode (LED) animation effects like “deep breathing” and “color chasing” are becoming increasingly popular. However, a common issue designers’ face is that the microcontroller (MCU) is overloaded by captivating but complex lighting patterns. Is it possible for the LED driver to operate autonomously without MCU control? It is – with a programmable lighting engine.
Figure 1 shows a block diagram with a typical red-green-blue (RGB) LED driver, which includes a digital interface and multichannel output stage. An LED driver with an integrated programmable lighting engine includes programmable memory and a command-based pattern generator. This enables the coding of all lighting patterns as commands, which are stored in program memory inside the LED driver. When an animation effect starts, the pattern generator converts the commands and controls the output stage automatically.
Figure 1: LED driver block diagram
Without an integrated lighting engine, a system’s MCU takes full ownership of controlling and refreshing the necessary lighting patterns. This means that the MCU has to remain on, draining system power. When using a programmable lighting engine, the MCU loads the commands into the LED driver once. After that, the LED driver works as a commander to deliver programmed lighting effects autonomously, while the MCU sleeps, saving system standby power.
Let’s look at the deep breathing lighting effect as an example to better understand the benefits of a programmable lighting engine. Figure 2 shows an example.
Figure 2: LED animation effect example
Achieving a smooth and vivid breathing effect is easy through the commands. With the initial LEDs’ mapping configuration, you can use the ramp command to achieve programmable fade-in/fade-out effects, and set the dimming steps and dimming cycle as well. Figure 3 shows sample code.
Figure 3: Sample code of breathing with ramp command
Figure 4 compares MCU occupancy with and without a programmable lighting engine. With a normal solution the MCU is almost fully occupied; however, with the programmable lighting engine, the total MCU occupancy for the codes shown in Figure 3 is only 0.72mS. Obviously, the programmable lighting engine makes a real difference.
Figure 4: MCU occupancy comparison
TI has a complete portfolio of RGB LED drivers with integrated programmable lighting engines, including different channel and function options.