Objective: Explore addressing techniques in designing LED (microLED & OLED) display technologies
LED displays use arrays of light-emitting diodes to create the RGB pixels to display images and videos. Through the bendable and ultra-thin OLED technology and the high-brightness GaN based microLED displays, LED displays have been a hot topic in the technology world. This lab will focus on the addressing techniques for an inorganic LED dot matrix. These techniques highlight the challenges and process for implementing large scale LED based technologies.
Lab Components
- One 5x7 Common Cathode Array Datasheet (http://www.kingbrightusa.com/images/catalog/SPEC/TA07-11SRWA.pdf)
- Resistors (5*220 Ω)
- Solder-less Protoboard
- Jumper Wires
- Arduino Leonardo
Part 1: The LED Dot Matrix
This part of the lab will involve getting familiar with the 5x7 common cathode array.This LED pixel array is arranged such that their cathodes pins are on the rows (pins 2,4,5,6,9,11,12) and their anode pins are on the columns (pins 1,3,7,8,10).
Procedure:
- Write a simple program in Arduino IDE that counts incrementally from 0 to 9 on the common cathode array. Choose an acceptable refresh rate (Notes: Use the 220 Ω resistors between the matrix's anodes and the arduino's digital pins. Read the circuit design notes on the data sheet for more details on wiring)
- The program should use as little power as possible. How can we take advantage of humans' perception to reduce the power consumption? (hint: If we wanted to turn every LED on do we need to actually have all the LEDs on at the same time or is there a way that we can "trick" our brains into perceiving all the LEDs being on at the same time?)
- Save a video of the display in action along with any relevant code
Part 2: The 1 Train, Columbia University-116th St. Station
The red LED array is very similar in color to Columbia's favorite train line, the 1 line train. Lets make our own scrolling subway sign.
Procedure:
- Write a simple program in Arduino IDE that displays a scrolling version (right to left) of a model subway platform sign. Please use the 1 train symbol shown below (this doesnt need to be a circle, it can be a rectangle. Note that the border of the number is red and the number itself wont be illuminated) and follow it with "Columbia University-116th Street Station". Choose an acceptable refresh rate and scrolling speed. (Notes: Use the 220 Ω resistors between the matrix's anodes and the arduino's digital pins. Read the circuit design notes on the data sheet for more details on wiring)
- The program should use as little power as possible. How can we take advantage of humans' perception to save out power? (hint: If we wanted to turn every LED on do we need to actually have all the LEDs on at the same time or is there a way that we can "trick" our brains into perceiving all the LEDs being on at the same time?)
- Be creative! Try your best to incorporate all the characters. If a character can't be displayed give it your best approximation.
- Save a video of the display in action along with any relevant code
Questions:
- As the display resolution increases, more row and column lines are necessary. With each new row/column needing its own digital control pin. This quickly get difficult to manage. How can we alleviate this issue as we scale our technology?
- How can we reduce the current draw through the display at any given time leveraging our human perception (in)ability?
- What are the pros of LED display technology? what are the cons?