People are mostly visual and over the years Microcontrollers were having ways to optically interact with users.
Here is a quick summary of the various display interfaces and technologies supported by the STM32 family.
LEDs: This is the simplest way for a microcontroller (MCU) to optically interact. Each LED will consume 5mA for decent brightness, however, remember that 4 LEDS will consume as much as an STM32L4 at 80MHz... LEDs can be smartly connected to a TIMER.CC channel to be brightness modulated by PWM (Pulse Width Modulation).
LCD Displays: Some are backlighted, some are reflective (as you calculator), some are transflective (both).
Some are Black and White, some have Greyscale and some have Colors (which number depends on the driver chipset)
Some will have a capacitive touch screen overlaid (On Cell) with typically I2C interface plus interrupt pin, some will have the capacitive layer within the display plane and are called In Cell (In LCD Pixel Cell).
A simple segmented LCD Display can be directly driven by some STM32.
Dot matrix LCD Display come with a display controller with specific interfaces to communicate with MCU.
Here are the typical interfaces:
I2C LCD Display : Quite rare however handy for debug because you need only 2 GPIOs to generate an I2C bus.
If the LCD is character base, it won't require lots of Flash/RAM resources from the STM32.
SPI LCD Display: This enables higher throughput which could be dot matrix display type
Then for higher throughput of pixel update, there is the typically 8 bit parallel interface called 8080/6800 type LCD Display
When the display resolution increases and the color depth is also increasing to become close to smart phone, the quantity of information to throughput grows significantly, especially if video animation is a demand.
Historically, you'll have a pixel interface:
16 Million colors = 256 Red x 256 Green x 256 Blue = 24 bit for one pixel = 24 GPIO for the color information
This is the 24 bit parallel interface. Add a pixel clock and some sync signals (DE=Data Enable) and that's all what is needed to drive such type of display.
Need to use less pins?
Exist 16 bit mode color palette would be reduced to 5:6:5 (32 Red, 64 Green, 32 Blue Levels for 65k Colors)
If the resolution is VGA = 640x480 pixels refreshed at 50 Hz, the data throughput is getting tough.
For long video cables a specific technology was introduced named LVDS (Low Voltage Differential Signaling)
With this, multiple CMOS lines are replaced by a PLL used to serialize bits in a differential pair which can pass more bitrate than the CMOS equivalent. In display usually 7 digital signals are stuffed in one differential pair.
TTL to LVDS, LVDS to TTL conversion chipsets are available to stretch the length of the video cable whenever needed.
This was typically used in laptop between the motherboard and the display, using a hidden flex ribbon.
Detail: HSYNC and VSYNC are typically no longer needed, DE (Display Enable) toggles at pixel frequency and tells if the pixel is valid or not (blanking pixels or lines). In the display the LVDS receiver is called TCON (Timing Controller).
For short distance when power consumption and pincount is critical, a newer standard was created : DSI (Display Serial Interface) from MIPI a standardization organisation aiming a smartphone design. This interface enables even higher data rate to reduce the number of differential pairs needed. This DSI interface is also available on some of the latest STM32 such as STM32F469.
LCD : Light polarisation modulated by liquid crystals. Mature technology
OLED : Light is emitted by each pixel (array of LEDs). Trying to replace LCD technology. Better contrast.
e-Paper : Bistable Displays which only require energy when the display content changes. Slow and Low power
Hope this help.
More details will be added as time goes.