I am able to program my display but i'm getting white screen on the display. If I tilt the screen and see from the sideways, screen seems to display images but if I see front its just white. Interestingly, when I press reset button, it shows test display (Image attached)
I also tried with USB asp program with MightyCore board, the display was working however too slow to show up contents. But with arduino, programs(ada fruit graphicstest) takes just 5 second to upload but nothing shows up. Attaching images for reference.
its working with MiniCore board but wasa too slow when I was using USBasp programmer. Then I ordered UNO board to program it. So i guess voltage is not an issue. Also you see J1 jumper, if I connect then it will work on 3.3 but I'm ok with 5V.
Display controllers are specified for nominal 3.3V control and data levels. Maximum may be ~4.5V, with reduced life expectancy. Your UNO will power the controller through the protection diodes on input signals, which will distort SPI signals.
Any display made for use with Arduino UNO has (or should have) level converters or resistive voltage dividers (or diodes and pull-up resistors on some exotic one).
@silentobserver somehow the LCD works when I program it with USBASP using MightyCore board with ATMEGA16. But the problem was, display was too slow to show up the contents (atleast 10x slower than expected). This might be due to internal frequency. I'm not sure about. Then I moved to arduino board and got this white screen issue.
I think something is going wrong with digital pin 7, in your picture there is nothing connected to pin 7, butt you declare pin 7 for CS for the display.
First it will be using
// For the Adafruit shield, these are the default. #define TFT_DC 9 #define TFT_CS 10 #define TFT_RST 8
// Use hardware SPI (on Uno, #13, #12, #11) and the above for CS/DC
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC,TFT_RST);
// If using the breakout, change pins as desired
//Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_MOSI, TFT_CLK, TFT_RST, TFT_MISO);
I think I have to R&D with atmega16 using mighty core, seems working but was too slow. I will try to correct the clock rate and see if that's helpful but question still remains, it should have work with arduino uno.
I was able to manage to run the display using esp32 board(bought new for this). However while testing 240x320 test example. My screen is not fully filled and shows content upto 80% screen only. Can anyone help me out on this? if something in the code I need to change?
Also, i'm connecting esp32 board directly with my laptop USB port to provide power. It is throwing 4V as checked in multimeter. How can I limit that? My esp32 board hasn't fried up yet.