Questions? Call us: +1 760-918-6722

DT022CTFT in RGB mode

Hello, I'm using the DT022CTFT display in RBG mode via the FT800 controller
(FTDI-Bridgetek). Unfortunately, after 2 weeks of attempts, I still haven't
been able to view any images.
In the forum I read that:
   "If your microcontroller has a RGB interface, the DT024CTFT should display
an image when IM3 and IM2 are pulled high. The serial interface is only used
to change the default display settings if you require something different."
I'm using DT022CTFT: it's the same?
Can you give me any support?

 

Replies

engineering_seacomp's picture
engineering_seacomp
July 23, 2019

Hi,

I am not familiar with the FTDI-Bridgetek.

What do you have your IM pins set to?  In general, for RGB you will see something on the screen, but it will be random lines if the RGB timing is off.  My understanding is that you have changed the RGB values on your device several times.  The ILI9341 datsheet shows the RGB timing.

Do you have the backlight on?

Thanks,

 

Logitronix's picture
Logitronix
July 25, 2019

Hi,

yes, I have the backlight on!

IM3 = 1, IM2 = 1, IM1 = 0, IM0 = 1

In attach, I send you the waveforms  captured by the oscilloscope:

Channel 1 - Yellow: DE (ENABLE)

Channel 2 - Blue: VSYNC

Channel 3 - Purple: HSYNC

Channel 4 - Green: DOTCLK

I don't understand what the problem is.

Thanks.

engineering_seacomp's picture
engineering_seacomp
July 30, 2019

Hello,

Your scope images appear to show your video timing is good. IM[2] should be high for RGB mode. The other three IM pins determine the type of serial port will be available to change the display settings. By default, the DT022CTFT should display a RGB image without needing to change the settings with the serial port. If you do need to make changes to the settings,  4-wire 8-bit data serial interface Ⅱ ( IM[1,1,1,0] ) is the serial mode closest to standard SPI bus. You will also need to use one of the FT800 GPIO pins to control the D/CX pin (RS, pin 32). This pin tells the display whether the incoming bits are part of a command or data byte.

Since you are still not seeing an image, could you post a screen shot of the portion of your schematic that shows the DT022CTFT display connections to the FT800 driver? There may be something that is hard for us to diagnose without seeing the connections. We also need to see the power and backlight circuit to make sure those are connected properly. 

Thankrs 

Logitronix's picture
Logitronix
July 31, 2019

Thanks for the reply,
I enclose the diagram concerning the display and the FT800 driver.
IM0..IM3 are set to 1101, which means 9-bit SPI.
 

engineering_seacomp's picture
engineering_seacomp
July 31, 2019

Hello,

1. It looks like you are using a parallel port of a microcontroller to talk to the serial port of the DT022CTFT. Remember that SDO (pin 29) is an output, so DB7 needs to be an input. I don't know if this is possible on your microcontroller or not. I'm assuming you have the ability to make each bit of the port a GPIO input or an output. If DB7 is an output, it could interfere with the operation of the display.

2. Remember, there actually is no true 9-bit SPI bus so you have to bit-bang the display serial port. Our demo code shows a bit-bang routine that works using GPIO's on a PIC. The 9th bit is the D/CX command that tells the display if the byte is data or command. Refer to the ILI9341 data sheet for timing details. Implementing it correctly is tricky and it is best to try and read a register with a fixed value such as "Read ID4" first to get your code working. The third and fourth bytes are always 0x93 and 0x41.

3. Make sure your DISP signal is low upon power up and then goes high once power is stable. This assures the display starts properly. If the reset pin stays low, you won't see an image.

4. RD and WR (pins 31 and 33) need to be pulled high since they are not used. The ILI9341 data sheet has more detail on this than the DT022CTFT data sheet. 

5. Make sure you actually have display backlight current flowing. Measure the voltage across your R60 and see if it is close to 600mV. Actually, it is better drive each LED individually since so that one LED will not draw more current than the others. The forward voltage of the backlight LED's is temperature sensitive and varys between LED's, so we recomment you use a LED driver chip similar to the CAT4104. V_BAT-LED-A needs to be at least 4V for the backlight current to be stable. 5V is better.

Logitronix's picture
Logitronix
September 16, 2019

Hi,

I connected WR and RD to + Vcc, and then, as recommended in point 2, I tried to read ID4 (D3h), but it always returns 0xff.

I then tried to Read Display Status (09h) and this works, returning 61h, as indicated on the datasheet.

I also have experienced that I cannot read all the registers that report: "Restriction EXTC should be high to enable this command"
What does it mean?

 

engineering_seacomp's picture
engineering_seacomp
September 16, 2019

Hello,

It sounds like you have your serial interface partly working. I suspect the reason you can't read the extended registers is the same reason you can't read ID4. Keep trying to get the ID4 read working and that should solve your extended register problem. Once you get it working, you can read the RCM bits in the RGB "Interface Signal Control" register (B0h). According to the ILI9341 data sheet, the RCM bits should be [1:0] to set RGB DE mode. This is the power up default, so I am surprised you aren't seeing an image already.

Logitronix's picture
Logitronix
September 26, 2019

Without getting any results, I have to redo the PCB, using the MCU mode.
I would like to know if IM0 ... IM3 must be configured before power on, or if they can be connected to the MCU port and configured after power on.

engineering_seacomp's picture
engineering_seacomp
September 27, 2019

Hi,

They need to be configured before power on.