Adding Global LED Intensity Control to the MAX6954 and MAX6955 LED Drivers
Abstract
This application note discusses techniques to simultaneously change the intensity (i.e., global intensity control) of all the LED digits of a display that is driven by the MAX6954 or MAX6955 multiplexed LED drivers. This global control is additional to the digit-by-digit adjustment that the drivers offer already. The note includes a spreadsheet calculator to assist design.
This application note discusses a technique for adding global LED intensity control to the MAX6954 and MAX6955 LED drivers. These drivers already have 16-step individual-digit current control. The additional global control provides a master intensity control that simultaneously reduces all the individual digit currents in 4, 8, or 16 steps.
The MAX6954 and MAX6955 are 4-wire and 2-wire, respectively, serial-interfaced LED drivers that control up to 7-segment, 14-segment, and 16-segment LED digits or an array of 16 × 8 LEDs. Each driver also includes five I/O expander (GPIO) ports and logic for using some, or all, of these ports to scan and debounce a key matrix up to 32 keys.
A single external resistor, RISET, controls the peak segment current for all the segments. RISET sinks a current from the driver's internal voltage reference, and this small current is mirrored internally to set the peak segment current up to 40mA. The peak segment current can be controlled on the fly by adjusting the effective value of RISET. Because adjusting RISET changes the peak segment current of all the drivers simultaneously, RISET operates as a global intensity control.
Global intensity control can be achieved by replacing the fixed RISET resistor with a digital resistor, such as the 32-step MAX5160 digital potentiometer. Alternatively, if fewer steps are required and spare MAX6954/MAX6955 ports are available, then these spare ports can be used to directly control the full-scale segment current. The ports drive discrete resistors to build a simple R-2R-4R-type DAC directly at the RISET pin. The design software is an Excel® spreadsheet which calculates the resistor values used for a 2-bit DAC (resistors RA and RB), a 3-bit DAC (resistors RA, RB, and RC), and a 4-bit DAC (resistors RA, RB, RC, and RD). These DACs provide 4, 8, and 16 steps of intensity control, respectively (Figure 1).
It is important to note that RISET affects the oscillator frequency and the peak segment current. The equation from the MAX6954 data sheet is restated here as:
fOSC = kF/(RSET × CSET) MHz
Where kF is a constant equal to 10,000 for the MAX6955 and 5,376 for the MAX6954. The Excel spreadsheet shows an example of 4-bit (16-step) intensity control with a dynamic-range intensity control from 2.5mA (RSET = 896kΩ) to 40mA (RSET = 56kΩ). Using the MAX6954 as an example, substituting 896kΩ as RSET in the oscillator equation above with a typical CSET of 22pF gives an oscillator frequency of approximately 272kHz. The issue here is that the minimum master-clock frequency of the MAX6954 is specified from 1MHz to 8MHz. Therefore, the oscillator frequency would be set out of range. Although the LED driver may still provide 2.5mA, there is a potential drawback: possible flicker at colder temperatures due to the shortfall in oscillator frequency and a large RISET resistor. Some improvements can be made by decreasing the value of CSET or driving the OSC pin externally if frequency is a concern.
The user will have to provide software to control the DAC ports to adjust the global intensity. The ports should be switched between a logic-low output for a DAC code of 0, and a logic input without pullup (i.e., high impedance) for a DAC code of 1.