As far as I know CRT monitor, "paints" a frame pixel after pixel, line after line.
Starting from the top left edge of the screen down to the bottom right edge.
My question:
Does an LCD screen work the same way?
Does it also "paint" pixel after pixel, line after line?
OK,
But what is the "painting" sequence of a frame?
Does one pixel gets lit at a time ?
Does a whole line of pixels gets lit at a time ?
Does the whole frame gets lit at once ?
I don't think so. In a CRT display, the screen phospor is scanned and "lited" sequentially. It has a certain afterglow smoothing the light pulses, but the screen flicker with e.g. 50 Hz vertical frequency can be clearly detected. Screen pointers of electronic games even utilized the scan for localization. Also the data transfer is purely serial, going from the video signal directly to the cathode ray tube.
This is completely different in TFT LCD. It doesn't have the screen flicker, only discontinuous image update. And as previously suggested, the data transfer inside the TFT display is rather row parallel than pixel serial.
As far as I know CRT monitor, "paints" a frame pixel after pixel, line after line.
Starting from the top left edge of the screen down to the bottom right edge.
My question:
Does an LCD screen work the same way?
Does it also "paint" pixel after pixel, line after line?
The TFT controller has a RAM that keeps 3 bytes of data for each pixel, 1 byte for each color. The controller transfers the RAM data to the display line by line. This is an independent process that runs all the time.
When you use the TFT you enter the location and color of one pixel at a time and the controller writes it to the RAM, it remains in the RAM until you change it or turn the power off.
A pixel is not lit , it is a LCD that changes transparency depending on the voltage on it.
The TFT controller is divided to 2 controllers. Controller 1 transfer the RAM to the LCD display continuously, it repeats transferring the whole screen 50 to 80 times a second (refresh rate). This controller cycle is completely independent of data written to the RAM. If you don't write any it displays the random data that the RAM had on power up.
Controller 2 takes your input and writes one pixel at a time 3 bytes per pixel, in the x y location you give. The RAM is written as you send the data and at the time you send the data. If say it takes you 1 second to send all the pixels of a complete screen, each time that the other controller refreshes the screen (at 50Hz) it will show 1/50 portion of the screen with the new RAM data and the rest of the screen with old RAM data. You will see gradually over 1 second new screen written over the old one.
If you send data of one pixel only then that pixel will be displayed immediately.
From your explanation,
I understand that the "user" communicates only with controller #2.
While controller #1 uses the data received from the user by controller #2 to drive every pixel at a preset timing.
I've learnt it from small TFT datasheets that I used for my own projects. Google and download the datasheets of ILI9341,ST7735,HX8353 any of them can be a good read. Just don't get upset at the translation from Chinese.