Electrical – Using 320QVT TFT display module with stm32f407

microcontrollerstm32f4

I'm having a bit of trouble trying to get a small 320QVT TFT module up and running. The documentation available is quite vague, but I know the module used a SSD1289 TFT driver, and that 16 address pins are brought out on the module, as well as control lines. Although the module has an SD slot, and touchscreen ability, at the moment I'm just trying to get the display working.

This is a pinout of the available connections on the board.

enter image description here

I currently have pins dealing with touchscreen and SD card left floating (pins 29 – 40). There is one pin (16) labeled F_CS, which I am unsure what to do with, so at present it is also currently left floating.

I managed to find some documents which allegedly contains an initialisation and basic functions for the screen, which I have configured to run on the MCU I am using, which is an stm32f407VG (discovery board). But, unfortunately I'm still not able to get any control of the device. The thing lights up when powered on, but nothing else occurs.

I have included my project code in the link below (after doing my nut trying to post formatted code).

http://www.filedropper.com/tftscreen

I'm wondering if anyone else has used one of these with much success with one of these and can see any problems in the code, or has example code, or just advice.

Cheers.

Best Answer

I didn't look at your code, I'm allergic to files. We look at the lines on this pinout for the module and there are two interfaces a parallel and serial, do you know what the code uses? I found this on the internet for the same module. I see that at least this library uses the serial lines to communicate with the TFT display.

#define LCD_RS   38         
#define LCD_WR   39     
#define LCD_CS   40       
#define LCD_REST 41

#define DCLK     6
#define CS       5  
#define DIN      4 
#define DOUT     3
#define IRQ      2

Information has to travel between your processor and the TFT display for there to be a physical change. If it isn't working then you need to start debugging. Start asking by asking questions. The data has to be getting from point A to point B, where in the code does this happen. (in the module I found there is a function called digitalwrite). What kind of waveform does the TFT display need? You can find that in the datasheet. If you have a scope or a logic analyzer this can make life easier, and you can get cheap ones that will run at the speed you need on ebay for 50$ If the system doesn't work you have to break it apart piece by piece and figure out where it isn't working, you also have to have some understanding of how each piece works. If you can get things to work by plugging them in the first time, your awesome, otherwise you'll have to do some debugging and learning.