I have to use a TFT panel but I have never used any before and I really can't get how it works and how I can interface it with a microcontroller.

I found INT057ATFT which seems to have an integrated TFT controller so I guess I just interface it with the 8080 interface of my microcontroller.

But I have been advised to use a TFT like the TM056KDH01 and this one I really don't get how I can interface it with a microcontroller. On the pin descriptions I don't even see the RGB pins.

Could you explain me how these screens work and how to use and interface them? For the microcontroller I will choose it depending on the screen I take so I don't have made my choice yet. I will take something which is possible to interface with the screen.

Another thing is: is there any advantages using one or the other type?

After some research I found out that it would not be easy to interface a tft panel with an RGB digital interface with the microcontroller. Then I thought about using a tft controller and I found the SSD1963 which seems great because it can drive tft with a resolution up to 800/480 but it needs 3.3V supply AND 1.2V supply.

Does anyone know about another controller with the same caracteristic but with only the 3.3V supply?

  • 2
    \$\begingroup\$ On the TM056KDH01 pins 22-24 are colour pins, but I note that those are analogue RGB. Why have you been advised to use it? \$\endgroup\$
    – pjc50
    Oct 8, 2012 at 13:15
  • \$\begingroup\$ For an analogue RGB system, you'll need to generate analogue video signals (ala VGA) \$\endgroup\$ Oct 8, 2012 at 13:17
  • \$\begingroup\$ Oh okay i may have misunderstood this information. So there is digital and analog RGB? What is the difference? \$\endgroup\$
    – damien
    Oct 8, 2012 at 13:22
  • 2
    \$\begingroup\$ With analogue RGB, there is one wire per colour channel with the intensity represented by a varying voltage. With digital, there will be multiple wires with the bit pattern on the wires giving the intensity \$\endgroup\$ Oct 8, 2012 at 13:27
  • \$\begingroup\$ Oh okay so I guess it is easier to use a digital one since I don't have to use a D/A converter. And is it better to use a digital RGB like this one or one like the INT057ATFT I mentionned? \$\endgroup\$
    – damien
    Oct 8, 2012 at 13:30

1 Answer 1


The INT057ATFT uses an SSD1961 controller, whose I/O can be configured in Motorola 6800 mode or Intel 8080 mode. So if your microcontroller has an 8080 type interface you can connect it without problems. But also a microcontroller without external address or data bus can talk to the LCD controller, of course.

enter image description here

The left side connections are the only ones you should look at. The ones on the right are the controller's business; you don't have to worry about those. That's very different from the TM056KDH01 you refer to in a comment. That's an LCD controller which needs continuous data, combined with vertical and horizontal sync. You can compare it somewhat with video + sync: if you stop supplying a video signal you won't have a picture. Only here you have 18 digital lines instead of one analog. The SSD1961's microcontroller interface runs asynchronous of the LCD refresh. You just have to fill the buffer.

There are a couple of control lines, like D/C (Data/Control) select, R/W and enable, which will be familiar for users who have worked with text LCD modules with a 44780 controller. The SSD1961 datasheet has a list of commands you can use to configure the LCD. You supply the commands via the 18-bit data bus. That allows to send a complete pixel data of 3 x 6 bit (RGB) simultaneously. An 8080 microcontroller only has an 8 bit bus, and you can configure the device to use only 8-bit; the unused data lines should remain floating. In 8-bit mode you need less I/O pins on you microcontroller, but each pixel will need three successive writes.

  • \$\begingroup\$ Said like that it seems a better option than the one without the integrated controller. \$\endgroup\$
    – damien
    Oct 8, 2012 at 13:58
  • \$\begingroup\$ @damien - Yes, I compare those in the addition to my answer. \$\endgroup\$
    – stevenvh
    Oct 8, 2012 at 14:01
  • \$\begingroup\$ Thank you for your explanation it's a little clearer now. Just one thingreferring to what you said: I have to write continuously on the data bus if I want to keep a static image on my screen? \$\endgroup\$
    – damien
    Oct 8, 2012 at 14:58
  • \$\begingroup\$ @damien - not with the INT057ATFT you first mentioned. You write the data once, the controller will place it in the frame buffer, and the display controller will read continuously from that to refresh the display. You only have to write to it when you want to change the display content. \$\endgroup\$
    – stevenvh
    Oct 8, 2012 at 15:13
  • \$\begingroup\$ I got two others question about TFT. Is it possible to display bitmap picture on it easily? And if I choose a tft panel with numeric RGB communication, is it possible to interface it easily with a bus 8080/6800 like there is on the STM32F217ZG because it is written LCD interface but is it easy to drive like 565 or 666 RGB TFT panel? Or is there some microcontrollers that have dedicated bus for 565 or 66 RGB TFT panel? \$\endgroup\$
    – damien
    Oct 9, 2012 at 13:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.