Loading…
Loading…
DIP-24 / SOP-24 · MAX7219
Maxim Integrated · DIP-24 / SOP-24 · 7-Segment / LED Matrix Driver
Price on Request
Get a competitive quote within 24 hours. Volume discounts available. Shenzhen stock ships in 1-2 business days.
The MAX7219 is Maxim Integrated's (now Analog Devices') compact serial input/output common-cathode display driver, and it remains the simplest way to hang eight 7-segment digits, a bar graph or 64 individual LEDs off a microcontroller using four wires. Data enters on DIN and is loaded into an internal 16-bit shift register on the rising edge of CLK, at speeds to 10 MHz; LOAD (or CS) then transfers the word into one of the internal registers. DOUT provides the same data 16.5 clock cycles later and is never high-impedance, so devices daisy-chain by connecting LOAD/CS together and DOUT to the next DIN — use the no-op register to pass data through devices you do not want to change. An internal 8x8 dual-port SRAM holds the digit data, so individual digits can be addressed and updated without rewriting the entire display, and code-B decoding or no-decode can be selected per digit.
Segment current is set by one external resistor. RSET connects from ISET to V+ and the current per segment is approximately 100 times the current in ISET. The datasheet electrical characteristics are specified with RSET = 9.53 kΩ ±1 percent, which yields a segment drive source current of -40 mA typical at V+ = 5 V (-30 mA minimum, -45 mA maximum) with the output at V+ minus 1 V, and segment-to-segment current matching of 3.0 percent. The maximum recommended segment current is 40 mA; above that you must use external digit drivers, and when the MAX7219 serves only as a controller for external segment current sources RSET = 47 kΩ conserves power. Digit drivers sink up to 320 mA at V+ = 5 V with the output at 0.65 V. There is a derating table you must respect: when fewer than four digits are scanned the digit drivers dissipate more, so the maximum segment current is capped at 10 mA for one digit, 20 mA for two and 30 mA for three. Display scan rate is 500 Hz minimum, 800 Hz typical and 1300 Hz maximum with eight digits, which is well above the flicker-fusion threshold and safe for camera use.
Brightness and power management are handled in registers rather than external components. A 16-step digital intensity register drives an internal pulse-width modulator that scales average segment current from 31/32 down to 1/32 of the RSET peak, with a minimum interdigit blanking time of 1/32 of a cycle. The scan-limit register selects one to eight digits, the shutdown register puts the device into a 150 µA low-power mode with all data retained, and the display-test register lights all LEDs at 31/32 duty without altering the digit registers. The display is blanked on power-up and the device stays in display-test mode until the test register is reconfigured for normal operation — a detail that surprises first-time users. Supply range is 4.0 V to 5.5 V, so this is a 5 V part. The MAX7219 and MAX7221 share a die family but are not identical. The MAX7221 adds an SPI, QSPI and MICROWIRE-compatible serial interface, slew-rate-limited segment drivers for lower EMI, and high-impedance off-states on both digit and segment drivers. The MAX7219 has a plain three-wire serial interface and pulls digit outputs to V+ and segments to GND when they are turned off, which matters if you are multiplexing shared wiring. Packages are the 24-pin narrow plastic DIP (MAX7219CNG for 0 °C to +70 °C, MAX7219ENG for -40 °C to +85 °C), the 24-pin wide SO (CWG and EWG) and a CERDIP military option.
Sourcing note: because the MAX7219 ships in enormous volume inside 8x8 LED matrix modules, it is one of the most counterfeited display drivers on the Shenzhen market. Clones commonly fail above a 5 MHz clock, show poor segment current matching against the 3.0 percent specification, drop digits at maximum intensity, or are actually MAX7221 parts sold as MAX7219 (visible because the off-state driver behaviour differs). Verify a lot by running the clock at 10 MHz, driving all 64 outputs at maximum intensity with the correct RSET, and measuring segment current matching. MOQ is one tube of 15 pcs for the DIP, 1000 pcs on reel for the wide SO, or assembled 8x8 matrix modules in packs of 10. Shenzhen stock ships same-day; Analog Devices authorized-channel lead time is eight to sixteen weeks.
Buy a 1 percent 9.53 kΩ resistor as a matched BOM line item with the driver, since segment current accuracy depends entirely on it, and specify the temperature grade explicitly (CNG for 0 °C to +70 °C, ENG for -40 °C to +85 °C). If you are sourcing assembled 8x8 matrix modules rather than bare ICs, request a sample lot and confirm the onboard driver is genuine before releasing volume.
They are pin-compatible and share the register map, but not fully interchangeable. The MAX7221 adds an SPI, QSPI and MICROWIRE-compatible interface, slew-rate-limited segment drivers for lower EMI, and high-impedance off-states on the digit and segment drivers. The MAX7219 uses a plain three-wire serial interface and, when a driver is off, pulls digit outputs to V+ and segments to GND. That difference matters when segments or digits are shared with other circuitry. For a new noise-sensitive design choose the MAX7221; for legacy replacement and the huge installed base of matrix modules, the MAX7219 is what you will find.
Segment current is approximately 100 times the ISET current, and the standard value from the datasheet electrical characteristics is 9.53 kΩ ±1 percent, which gives about 40 mA peak segment current at V+ = 5 V with typical 2 V red LEDs. Use TI's table logic: raise RSET as the LED forward voltage rises, because less headroom is available. The maximum recommended segment current is 40 mA — beyond that you need external digit drivers, and if the MAX7219 is only acting as a controller for external segment sources, use 47 kΩ to save power. Respect the derating rule too: with one digit scanned the segment current cap is 10 mA, with two it is 20 mA and with three it is 30 mA.
The MAX7219 gives 64 constant-current-capable outputs at 40 mA per segment over a 10 MHz three-wire interface with hardware multiplexing and digital brightness, using one resistor. The HT16K33 does the same job over I2C with a key-scan option, so it is better when your bus is already I2C. The TM1638 adds buttons and is cheaper in Chinese modules but has weaker documentation. A 74HC595 plus ULN2803 or TIP120 array is the lowest-cost route and gives you arbitrary voltage and current, but you must do all the multiplexing and current limiting in software and discrete components. For 8 digits or 64 LEDs on a 5 V rail, the MAX7219 is still the fastest design-in.
That is normal. The MAX7219 and MAX7221 remain in display-test mode, with all LEDs on at 31/32 duty, until the display-test register is written with a zero in the LSB. Send register address 0x0F with data 0x00 during initialisation, then configure shutdown (0x0C = 0x01), decode mode (0x09), scan limit (0x0B) and intensity (0x0A). Until you do that the device will look stuck. Note also that the display is blanked on power-up until shutdown mode is exited.
An 8x8 matrix works directly: map rows to DIG0-DIG7 and columns to SEG A-G plus DP, using no-decode mode and writing your own font bitmaps. Common-anode displays do not — the MAX7219 is a common-cathode driver, with digit drivers sinking current from the display common and segment drivers sourcing current to the segments. For common-anode displays use the MAX7221-based alternatives with inverted logic, or a dedicated common-anode driver, or invert the display by swapping the row and column roles where the wiring allows.
Wire all CLK and all LOAD/CS lines in parallel, connect DOUT of one device to DIN of the next, and give every device its own RSET. Electrically you can chain many tens; practically you are limited by clock loading and by the 16.5-clock-cycle latency from DIN to DOUT. Each 16-bit word must contain a register address in bits D11-D8 and data in D7-D0, and you use the no-op register for devices you do not want to modify. Keep the clock at or below 10 MHz, and if the chain is long, reduce the clock rate and add a series termination resistor at the source.
Test at the limits. Run the clock at 10 MHz and confirm reliable writes — clones often work at 1 MHz and corrupt data above 5 MHz. Then set RSET to 9.53 kΩ, drive all 64 outputs at maximum intensity in display-test mode, and measure segment current and matching: the datasheet specifies 3.0 percent segment-to-segment matching, and fakes scatter far wider or drop digits as the package heats. Check whether off-state segments are pulled to GND (MAX7219) or left high-impedance (MAX7221) to catch mislabelled parts, and inspect the laser marking and date code. We electrically sample-test every lot.
MOQ is one tube of 15 pcs for the 24-pin DIP (MAX7219CNG or MAX7219ENG), 1000 pcs on reel for the 24-pin wide SO, or assembled 8x8 matrix modules in packs of 10 for prototyping. Shenzhen stock ships same-day or next-day; Analog Devices authorized-channel lead time is eight to sixteen weeks. If you are buying finished matrix modules, ask whether the onboard driver is a genuine MAX7219 or a clone — that is where most quality problems in this category originate.
Submit an RFQ — we reply within 24 hours with stock, pricing, lead time and packaging options.
Request a Quote →