All projects

Display

Mini colour TV (SPI TFT)

Advanced75 min

The finish line of a 10-project display series: from a single pixel to a colour panel driven over SPI.

What you get

An ST7789 panel showing colour images and text, with a mastered addressing window and partial refresh.

Parts (simulated)

  • Arduino UNO board
  • ST7789 TFT display (SPI)
  • LEDs and LED matrix
  • 220 Ω resistors

Nothing to buy: every component here is simulated in the browser.

Project steps

  1. 01Understand that an LED is a pixel, and why it needs a resistor.
  2. 02Move to grey levels with PWM, then apply gamma correction.
  3. 03Multiplex a matrix to save pins, and deal with ghosting.
  4. 04Build a framebuffer in RAM and measure the bus cost.
  5. 05Drive the ST7789 panel over SPI in RGB565 colour.

What you learn

  • Time multiplexing and persistence of vision
  • Binary-coded modulation (BAM)
  • Charlieplexing
  • RGB565 colour format and addressing window

Other projects