Avago Technologies's Articles
Introduction to Driving LED Matrices
LEDs are current driven devices. It is relatively simple to drive several LEDs individually. However, as the number of LEDs increases, the amount of resources needed to operate these LEDs grows to an unmanageable level. As such, LEDs are often arranged in matrices in order to make efficient use of resources.
In a matrix format, LEDs are arranged in rows and columns. This arrangement is discussed in more detail later. What should be noted here is that the matrix arrangement demands that LEDs be driven in multiplex. The multiplex sequence inevitably requires more complex processing, but is more efficient compared to individually driving each LED.
This application note also describes how the brightness of each individual LED can be controlled in multiplex mode. This involves dividing the LED driving sequence into three levels in the time domain. The last section introduces several ICs that are widely used in driving LEDs.
This note is intended to support the design of messaging and video systems using LED tiles. However, the concepts and techniques introduced here apply to any LED matrix including arrays formed using discrete LEDs.
This application note is especially relevant to these products and applications:
- Single color and bi-color tiles
- 8×8 rich color tiles (HDSP-R881/R883)
- LED arrays (composed of LED lamps, chip LEDs, etc.)
- LED video screens
- Moving message panels
Basic Structure of an LED Matrix
Initially, discussion is confined to 4×4 matrices, as shown below in Figure 1. The underlying principle here is that each LED can be addressed by specifying its location in terms of rows and columns. For example, the top-left LED is addressed as (A,1) i.e., row A, column 1. This method of addressing also indicates the flow of electrical current. In order to turn LED (A,1) on, current is caused to flow from A to 1. If switches are attached to each port A to D and 1 to 4, then, to turn the top-left LED on, switches A and 1 are made to conduct. The other LEDs will not have any current flowing because either their row or column switch is non-conducting.
Figure 1 shows two different configurations. The difference is in the method that is used to drive the LEDs. With the common-row anode configuration, current sinks are attached to ports 1 to 4. With the common-row cathode, current sources are attached to ports 1 to 4.
Multiplexing an LED Matrix
Multiplexing is the technique employed to operate LED matrices. By multiplexing, only one row of the LED matrix is activated at any one time. This approach is required because one end of the LED (either the anode or the cathode) is tied to a single row. From Figure 2, we can see that if current is applied to both rows A and B at the same time, it becomes impossible to address an individual LED within those two rows.
Figure 2 If we energize both A and B at the same time, it becomes impossible to address individual LEDs within those two rows. For example, if line 1 is made to conduct when (A+B) is conducting, two LEDs will light up simultaneously. Note: this is not a recommended method of operation as the LEDs are driven in parallel.
Parallel drive of LEDs is discouraged because of “currenthogging.” This phenomenon occurs if the dynamic resistance of the LEDs in parallel differs by a large amount (see Application Brief D-007).
We will use the common-row anode configuration to illustrate the concepts of multiplexing.
The staircase sequence (A to D) shows that time division multiplex is employed here in Figure 3. Only one row is energized at any one time. During the period in which a given row is energized, the desired LEDs are lit by energizing the appropriate columns. Sometimes this process is known as scanning.
Figure 3 Multiplexing an LED matrix. Current fl ows when the switches are pressed. The fi gure on the left is a time chart showing when and which switches are pressed. The circles in the fi gure on the right indicate which LEDs are lit when the sequence is deployed.
Basic Structure of a Driving System
Figure 4 only shows a section of the matrix. The driving scheme can be extended to very large arrays of LEDs. The maximum size depends on the maximum rate at which the electronics can distribute and process data. For a common-row cathode configuration, the driving system needs constant-current sources and sink drivers instead.
Brightness Control Via Pulse Width Modulation (PWM)
We know that the light output of an LED is dependent on the current fl owing through it. However, that is not a recommended method of controlling brightness because we will need a very precise current source/sink. The preferred technique for brightness control is through pulse width modulation (PWM). This concept is illustrated in Figure 5.
However, the driving system shown in Figure 4 will activate an entire row at the same time. How do we control the brightness of each individual LED? The answer is to divide each scanning period into time slots. Thus, we now have a time domain hierarchy.
Figure 4 Implementation of a driving system. Electronic switches are used at the high-side while current sinks are used at the low-side. Shift registers are used to accept the switching sequence in digital form.
Sign Up for Avago Now Newsletter