
Where a frame lives
Stop the upstream data and some screens keep their picture while others cannot. The difference is where the frame buffer lives, in the controller's own GRAM or upstream with the host, and the interface name alone does not tell you.
A screen can show a picture without telling you where its pixels are stored. The test is to stop the sender.
GRAM and stream
With a GRAM display the controller holds the pixels itself. The MCU stops sending, and the last picture remains because the controller still has the data. This is the lesson two picture: hand the artwork to the projectionist and you can walk away.
With a stream display the frame buffer is upstream. The host must keep sending pixels in time with the panel, as with a live broadcast. Stop the stream and normal refresh cannot continue. What the panel visibly does next, whether blank, frozen or corrupted, depends on its electronics.
The picture answers one question, who keeps the picture.
Do not classify by the name
On an ESP32-S3, an RGB display commonly keeps its frame buffer on the MCU side, often in PSRAM. Many I²C, SPI and 8080 controllers have their own GRAM. That is a tendency, not a rule. A controller such as the ILI9341 can take an RGB interface while the incoming data is still written into its internal GRAM, depending on its mode.
So read the controller datasheet and find the mode in use. The interface name is a hint.
The next problem
When the frame lives beside the processor, the processor has to get it to the panel on time. Memory that holds a frame is one thing, and memory that can feed a display is another. The next lesson counts what that takes.
Common mistakes
- Every screen goes black when the sender stops. A GRAM display keeps showing the last picture, because the controller keeps the pixels and keeps driving the panel.
- A stream display just freezes. The host is the only source of the picture. What the panel does without it is down to its electronics, and normal refresh cannot continue.
- Sorting displays by interface alone. An RGB interface can still write into GRAM inside the controller. Check the controller and the mode.
Edit this page — content/fundamentals/screens/where-a-frame-lives.mdx
Discuss this article
Ask about this page. The answer stays here, on the page it belongs to, for whoever hits the same wall next.