RGB and Color Depth

How do TFTs show color? What is color depth for RGB displays? What is the difference between 16.7M colors and 262k? Let’s explore it!

How Do TFT LCDs Show Color?

To start, let’s discuss how RGB LCDs work. TFT LCDs (thin film transistor liquid crystal displays) comprise a series of layers:

Each pixel of a TFT LCD is made up of three subpixels. One each for red, green, and blue. Each of these subpixels has an individual transistor from the thin film transistor layer that controls the amount of current at the subpixel. The liquid crystals for each subpixel are affected by the voltage level at the transistor, which causes their structure to change relative to the voltage level. Different liquid crystal structures allow different amounts of light from the backlight through the subpixel. Then the color filter makes that light either red, green, or blue. The colors from the three subpixels combine to create the desired color.

What does this have to do with color depth?

Color depth refers to the number of different possible displayable colors. The LCD controller chip in the tail of our RGB TFTs dictates that display’s color depth. The chips accept and control a certain number of steps for each color. This will be described in our datasheet as well as the LCD controller datasheet. The color depth may not be directly stated, but instead be referred to as ___-bit RGB. For example:

  • 24-bit RGB uses a full byte per color and specifies16.7 million colors
  • 18-bit RGB each color has 6 lines, leading to approximately 262,000 possible colors
  • 16-bit RGB uses R5G6B5 or 565 (5 bits for red, 6 for green, 5 for blue) and describes up to 65,000 colors

The below images show three different color depths. The color depth drops off quickly in this example, giving a clear example of how color depth affects image quality.

16.7 million colors
256 colors
16 colors

Comparison of High and Low Color Depth

Pros to high color resolution

  • Smooth color transitions
  • More realistic color representation

Cons to high color resolution

  • More colors need more bits to be described, which requires a faster processor or more time.
  • Slower processors may slow down the refresh rate because the required data cannot be sent quickly enough.
  • Often, more GPIOs are required to provide the color data
  • When combined with a higher resolution, some display controllers do not support full color on different interfaces.
    • Usually, I2C is the first one out followed by SPI, then parallel, then RGB

Cons to low color resolution

  • Colors do not smoothly transition between pixels
  • Images can appear grainy

Pros to low color resolution

  • Smaller processors can drive these displays
  • Large processors can achieve high refresh rates
  • Fewer GPIOs required
  • Interfaces such as SPI and I2C are viable solutions to driving the display
    • I2C typically is not supported for TFT displays

Driving RGB Displays

Confusingly, RGB can refer both to a display using RGB color and to the display using an RGB interface. The RGB interface typically writes image data directly from the 16 to 24-bit RGB data bus to the display without storing it. This differs from MCU Interfaces such as 6800 or 8080 parallel, which use read/write/enable signals to write data to device memory, and typically uses 8 to 18 bit data transfers.

Some RGB interface displays require a SPI initialization to ensure the display settings are correct, while others have no way to send commands to the controller.

Due to the large number of GPIOs required to control an RGB interface display, we use the EVE chip to bring up our RGB displays in-house. The EVE family of displays allows interfacing to be done in SPI while still achieving the quick data transfer possible with the RGB interface.

Further Reading:

https://www.orientdisplay.com/knowledge-base/tft-basics/how-does-tft-displays-work/

http://www.bigshotcamera.com/learn/lcd-display/lcd

https://people.eecs.berkeley.edu/~tking/tft.html

Contact Us

If you have any questions, we can be reached at support@crystalfontz.com, we also provide chat and telephone support Monday through Friday during our open hours.

We love to hear about your projects! Find us around the web (YouTubeFacebookInstagramLinkedIn,  Twitter, Forum) and let us know what you’re working on.