You are here

LED Matrix

Dual Color Common Cathode LED Matrix (datasheet)

An 8 x 8 matrix of dual color LEDs, with common cathode rows. WLG M20088A/BEG.
 
It is very difficult from the datasheet to figure out which pins correspond to what.
 
Use this handy pinout reference.
 
Looking at the underside of the display with the text oriented so it is legible, pins are numbered starting from the upper right. 1-12 from right to left on the top row, 13-24 from left to right on the bottom.

Multiplexing

This is the simplest way to drive a display. We have one wire per row, and one wire per column. We cycle through the rows, turning on the appropriate data columns for that row. This makes a binary display.

Simple Multiplexing

  • Arduino 2 - 9 are connected to Display [1-4, 24 - 21]
  • Arduino 10-17 are connected to Display [5-12]. (NOTE: Arduino 14-17 are A0-A3)

Varying Refresh Rate

Varying the delay between successive lines reveals the effect of Persistence of Vision (POV). Past a certain rate, the image seems coherent. The following program uses a potentiometer on analog input 5 to vary the rate.

Animation

Make this happen. As a hint, you could make a separate array for each frame of the animation, or turn the boolean img[] into a two dimensional array, with each frame of the animation being one member of the array.

Multichannel PWM Chip

TLC5940 - 16 Channel, 12 bit resolution PWM driver.

Dedicated LED Driver Chip

MAX7219 Serially Interfaced, 8-Digit LED Display Driver (datasheet)

Hardware Solutions

Dedicated hardware solutions