Это видео недоступно.
Сожалеем об этом.
How to fix white screen of tft touch screen with arduino | TFT unknown driver Fix
HTML-код
- Опубликовано: 31 дек 2017
- TFT display is commonly used in many electronic applications, projects.One of the cheapest Arduino compatible TFT display is shown in the video.But one of the major drawbacks is that after connecting with Arduino it becomes white.So we often could not use it for its white screen problem.Let us see why this TFT white screen problem occurs and how to fix it.The process shown in the video will become helpful in most of the cases.Try it.....
Link to download the library:
Touch screen library
goo.gl/xVRJfk
TFT LCD library
goo.gl/DDuwXF
GFX library
goo.gl/PcuL7E
Watch more:
Interfacing PIR sensor with arduino | PIR sensor automatic motion detection light tutorial
goo.gl/t91dhB
R305 fingerprint module interfacing with arduino | Getting started with fingerprint module
goo.gl/U2CN2D
How to interface keypad with arduino | How to make a keypad lock with an arduino
goo.gl/w8hrGw
Arduino tft touch screen tutorial | paint | image | displaying patterns
goo.gl/T9Wwda
How to fix white screen of tft touch screen with arduino | TFT unknown driver Fix
goo.gl/5PdD32
Arduino GSM SMS | Gsm SIM900a tutorial
goo.gl/bMLFbK
GSM SIM900a Arduino (Call) | Arduino GSM module tutorial
goo.gl/BnsAbo
Ive not had my TFT long, and was tearing my hair out, all working now, thank you.
you sir. saved me soooo much, was making a present for my girlfriend was getting too close for comfort!!Thank You!!!
Are there any other identifiers? I've tried using all of them, still white screen. I would appreciate if you could take some time and help me out.
If anyone is having problems with not being able to find the port or connecting to the board I highly recommend getting a new cable, I didn't think it would be a problem to do with the cable since it was making the screen go white, but it was and its all working perfectly fine with a new cable!
Kudos to you DPV Tech, I spent a few hours looking to resolve the white screen issue, mucking around with install of libraries and so on, your tutorial fixed my issue immediately! Awesome, thank you...
Could you please help me out. I could not find the right identifier. I've tried all of them
I am using 3.5 TFT display
And I am get
Unknown lcd driver chip : 0
Pls help me
same with me
Just connect the RESET pin of the display to the RST pin of the Arduino. This fixes a proper reset at power up.
Yes exactly correct!
I have been trying to use software reset command at the beginning of my code.
It didn’t work... white screen all the time!
As soon as I arrange hardware reset the display started working !
The only disappointing thing here is that u have to use a pin on microcontroller for just that purpose which is stupid loss...
hi mate, i did change the identifier the screen work but i have inverted screen i need to read from right to left and some letters are upset down can u help ?
I just received a 2.4 inch display and tried to get it going on the Uno. There's not much on the board to identify it but it is a Mcufriend display. It simply had printed on the back of the board "www.mucfriend.com" "tftlcd for arduino uno (spiflash). Running graphictest gives blank screen, serial port output reports:
Serial took 0ms to start
ID = 0xC0C0
That's it and the screen stays white. Is there some configuration I have to do or is this screen not supported? Any help greatly appreciated.
the prolem white screen of mine is with esp32, so the solution is the same?
Thank you sir, I couldn't make without your help!
It worked!
Setting the identifier manually hasn't fixed the white screen problem in my case.
When I don't change anything, the ID shows up as "0"...
set it to 0x9341
@@it0it0 how bout 9300
Paint!
Unknown LCD driver chip: 0
If using the Adafruit 2.8" TFT Arduino shield, the line:
#define USE_ADAFRUIT_SHIELD_PINOUT
should appear in the library header (Adafruit_TFT.h).
If using the breakout board, it should NOT be #defined!
Also if using the breakout, double-check that all wiring
matches the tutorial.
他是0怎麼辦
#include // Core graphics library
#include // Hardware-specific library
#include
#if defined(__SAM3X8E__)
#undef __FlashStringHelper::F(string_literal)
#define F(string_literal) string_literal
#endif
// When using the BREAKOUT BOARD only, use these 8 data lines to the LCD:
// For the Arduino Uno, Duemilanove, Diecimila, etc.:
// D0 connects to digital pin 8 (Notice these are
// D1 connects to digital pin 9 NOT in order!)
// D2 connects to digital pin 2
// D3 connects to digital pin 3
// D4 connects to digital pin 4
// D5 connects to digital pin 5
// D6 connects to digital pin 6
// D7 connects to digital pin 7
// For the Arduino Mega, use digital pins 22 through 29
// (on the 2-row header at the end of the board).
// D0 connects to digital pin 22
// D1 connects to digital pin 23
// D2 connects to digital pin 24
// D3 connects to digital pin 25
// D4 connects to digital pin 26
// D5 connects to digital pin 27
// D6 connects to digital pin 28
// D7 connects to digital pin 29
// For the Arduino Due, use digital pins 33 through 40
// (on the 2-row header at the end of the board).
// D0 connects to digital pin 33
// D1 connects to digital pin 34
// D2 connects to digital pin 35
// D3 connects to digital pin 36
// D4 connects to digital pin 37
// D5 connects to digital pin 38
// D6 connects to digital pin 39
// D7 connects to digital pin 40
#define YP A3 // must be an analog pin, use "An" notation!
#define XM A2 // must be an analog pin, use "An" notation!
#define YM 9 // can be a digital pin
#define XP 8 // can be a digital pin
#define TS_MINX 150
#define TS_MINY 120
#define TS_MAXX 920
#define TS_MAXY 940
// For better pressure precision, we need to know the resistance
// between X+ and X- Use any multimeter to read it
// For the one we're using, its 300 ohms across the X plate
TouchScreen ts = TouchScreen(XP, YP, XM, YM, 300);
#define LCD_CS A3
#define LCD_CD A2
#define LCD_WR A1
#define LCD_RD A0
// optional
#define LCD_RESET A4
// Assign human-readable names to some common 16-bit color values:
#define BLACK 0x0000
#define BLUE 0x001F
#define RED 0xF800
#define GREEN 0x07E0
#define CYAN 0x07FF
#define MAGENTA 0xF81F
#define YELLOW 0xFFE0
#define WHITE 0xFFFF
Adafruit_TFTLCD tft(LCD_CS, LCD_CD, LCD_WR, LCD_RD, LCD_RESET);
#define BOXSIZE 40
#define PENRADIUS 3
int oldcolor, currentcolor;
void setup(void) {
Serial.begin(9600);
Serial.println(F("Paint!"));
tft.reset();
uint16_t identifier = tft.readID();
if(identifier == 0x9325) {
Serial.println(F("Found ILI9325 LCD driver"));
} else if(identifier == 0x9328) {
Serial.println(F("Found ILI9328 LCD driver"));
} else if(identifier == 0x7575) {
Serial.println(F("Found HX8347G LCD driver"));
} else if(identifier == 0x9341) {
Serial.println(F("Found ILI9341 LCD driver"));
} else if(identifier == 0x8357) {
Serial.println(F("Found HX8357D LCD driver"));
} else {
Serial.print(F("Unknown LCD driver chip: "));
Serial.println(identifier, HEX);
Serial.println(F("If using the Adafruit 2.8\" TFT Arduino shield, the line:"));
Serial.println(F(" #define USE_ADAFRUIT_SHIELD_PINOUT"));
Serial.println(F("should appear in the library header (Adafruit_TFT.h)."));
Serial.println(F("If using the breakout board, it should NOT be #defined!"));
Serial.println(F("Also if using the breakout, double-check that all wiring"));
Serial.println(F("matches the tutorial."));
return;
}
tft.begin(identifier);
tft.fillScreen(BLACK);
tft.fillRect(0, 0, BOXSIZE, BOXSIZE, RED);
tft.fillRect(BOXSIZE, 0, BOXSIZE, BOXSIZE, YELLOW);
tft.fillRect(BOXSIZE*2, 0, BOXSIZE, BOXSIZE, GREEN);
tft.fillRect(BOXSIZE*3, 0, BOXSIZE, BOXSIZE, CYAN);
tft.fillRect(BOXSIZE*4, 0, BOXSIZE, BOXSIZE, BLUE);
tft.fillRect(BOXSIZE*5, 0, BOXSIZE, BOXSIZE, MAGENTA);
// tft.fillRect(BOXSIZE*6, 0, BOXSIZE, BOXSIZE, WHITE);
tft.drawRect(0, 0, BOXSIZE, BOXSIZE, WHITE);
currentcolor = RED;
pinMode(13, OUTPUT);
}
#define MINPRESSURE 10
#define MAXPRESSURE 1000
void loop()
{
digitalWrite(13, HIGH);
TSPoint p = ts.getPoint();
digitalWrite(13, LOW);
// if sharing pins, you'll need to fix the directions of the touchscreen pins
//pinMode(XP, OUTPUT);
pinMode(XM, OUTPUT);
pinMode(YP, OUTPUT);
//pinMode(YM, OUTPUT);
// we have some minimum pressure we consider 'valid'
// pressure of 0 means no pressing!
if (p.z > MINPRESSURE && p.z < MAXPRESSURE) {
/*
Serial.print("X = "); Serial.print(p.x);
Serial.print("\tY = "); Serial.print(p.y);
Serial.print("\tPressure = "); Serial.println(p.z);
*/
if (p.y < (TS_MINY-5)) {
Serial.println("erase");
// press the bottom of the screen to erase
tft.fillRect(0, BOXSIZE, tft.width(), tft.height()-BOXSIZE, BLACK);
}
// scale from 0->1023 to tft.width
p.x = map(p.x, TS_MINX, TS_MAXX, tft.width(), 0);
p.y = map(p.y, TS_MINY, TS_MAXY, tft.height(), 0);
/*
Serial.print("("); Serial.print(p.x);
Serial.print(", "); Serial.print(p.y);
Serial.println(")");
*/
if (p.y < BOXSIZE) {
oldcolor = currentcolor;
if (p.x < BOXSIZE) {
currentcolor = RED;
tft.drawRect(0, 0, BOXSIZE, BOXSIZE, WHITE);
} else if (p.x < BOXSIZE*2) {
currentcolor = YELLOW;
tft.drawRect(BOXSIZE, 0, BOXSIZE, BOXSIZE, WHITE);
} else if (p.x < BOXSIZE*3) {
currentcolor = GREEN;
tft.drawRect(BOXSIZE*2, 0, BOXSIZE, BOXSIZE, WHITE);
} else if (p.x < BOXSIZE*4) {
currentcolor = CYAN;
tft.drawRect(BOXSIZE*3, 0, BOXSIZE, BOXSIZE, WHITE);
} else if (p.x < BOXSIZE*5) {
currentcolor = BLUE;
tft.drawRect(BOXSIZE*4, 0, BOXSIZE, BOXSIZE, WHITE);
} else if (p.x < BOXSIZE*6) {
currentcolor = MAGENTA;
tft.drawRect(BOXSIZE*5, 0, BOXSIZE, BOXSIZE, WHITE);
}
if (oldcolor != currentcolor) {
if (oldcolor == RED) tft.fillRect(0, 0, BOXSIZE, BOXSIZE, RED);
if (oldcolor == YELLOW) tft.fillRect(BOXSIZE, 0, BOXSIZE, BOXSIZE, YELLOW);
if (oldcolor == GREEN) tft.fillRect(BOXSIZE*2, 0, BOXSIZE, BOXSIZE, GREEN);
if (oldcolor == CYAN) tft.fillRect(BOXSIZE*3, 0, BOXSIZE, BOXSIZE, CYAN);
if (oldcolor == BLUE) tft.fillRect(BOXSIZE*4, 0, BOXSIZE, BOXSIZE, BLUE);
if (oldcolor == MAGENTA) tft.fillRect(BOXSIZE*5, 0, BOXSIZE, BOXSIZE, MAGENTA);
}
}
if (((p.y-PENRADIUS) > BOXSIZE) && ((p.y+PENRADIUS) < tft.height())) {
tft.fillCircle(p.x, p.y, PENRADIUS, currentcolor);
}
}
}
謝謝教導我測試成功了,抱歉我以為她會跑else if(identifier == 0x9341) {}原來要一個個測試,等等我把他轉二進制,測試看看會不會跑if
When I use the 9325 and 9328 I get color and movement but not the correct display. Mostly full pink screen turning to blue back to pink. Should I try other Identifiers? The seller just sent me a folder which contained this file _9341uno. When I try it I get an error: a sub folder of your sketchbook is not a valid library .Does that mean they think it is ID 9341? This was the Zip file they sent 2.4inch_Arduino_ILI9341_V2.0
What if the screen shows what it's supposed to when you press the reset button but stays white any other time?
Sir i'm using Arduino Mega 2560 with 1.8 TFT st7735 the code is compiling but showing a white screen on TFT. After checking the serial monitor it is displaying present time.
Hi, I want to use the TFT screen just as a monitor in my PC case (for displaying temperature information and stuff)
How can i proceed as long as I dont have "arduino" file to copy the file in ??
thank you :(
Thanks very much, this worked and I managed to get my display working :-)
Unfortunately I then removed the protective cover and discovered the screen is cracked Doh!
This is the only video that helped me. Thanks
PLS friend! Can you send me full instruction How to sorve that problem TFT LCD ILI 9488 Shield with Arduino Mega 2560 thank you
Thx for the video.Great fix.You´ve got a new subscriber.
its work for me think you so much i try it with 0x9341 and its work for me
hello. sorry for my bad English .I am trying to resolve my white screen problem. I have try all library whithout solution. now i think that it's about my register and i upload LCD_ID redreg library to show a different values of my registers and i found this:Unknow LCD driver C0C0. i am using a 2.4 TFT SPI 240x320 whith arduino uno. I need help.
Thank you for your comment..Try to replace your driver instead of the driver given in the program.But I did not check that. If it will not work, please try with the following--
www.instructables.com/id/How-to-use-24-inch-TFT-LCD-SPFD5408-with-Arduino-U/
The problem with these displays is the reset. The software reset in the driver on pin A4 doesn't work. Connect it to the Arduino RESET and it all works as expected. No need to manually configure the identifier!!! Sort out the root cause of the problem, not workaround it!
Hello, can you tell me how to do the wiring of tft screen with an arduino nano ?
Still didn't work for me. Maybe my screen is dead. It's white but none of the hex numbers work. Also, it doesn't seem to recognize any driver chip like in your video. You got "6809". All I get is "0".
TFT LCD test
Using Adafruit 2.8" TFT Arduino Shield Pinout
TFT size is 240x320
Unknown LCD driver chip: 0
Sorry for that. It works for most of the cases. But you try in google. You may get different methods. If it is white, it may not be dead. Most of the cases, we get the hex code as given by Adafruit Industry. But most of the boards come from China and they use different Drivers and therefor this white screen problem occurs.
If you woun't get any solution, then buy boards from Adafruit directly from there website(I am not advertising their brand), it will be little costly, but you will not get any problem.
You can visit to our "dpvtechnology"website for other components (till now,it is only for india).
Thanks for the help DPV TECHNOLOGY. After some searching around google, it seems like there are numerous versions of this display that all look almost identical but have different driver chips. Therefore, no one solution will work for them all. You have to try multiple different methods. I think you're right -- if the screen is white, it's probably a sketch and/or library issue and not a hardware issue.
My advice to anyone else having the white screen problem -- try the steps in DPV TECHNOLOGY's video and if that doesn't work, keep trying other methods until you find one that works. Google can help find the other methods.
@@Samuel-km5yf Did you find it?
Hello,
I'll use it for an operating system for a cellphone but i can't manage it.Help me plz
Thanks for the video it finally worked!
It finally worked!
Many thanks, I finally got may LCD to work. :)
hello DPV TECHNOLOGY.i have used all things that you showed on your video but my white screen problem hav'nt changed
Der Jean François Houssou ,in most of the cases,the given method works fine.But if the driver configuration is not similar to the given driver,it will not work.For that it is difficult to solve the problem.try to google to fix in your case.If you find any solution for your case,please upload a video so that other people also get benefited.Thank you.
If u r using mcufrind shield then download mcufriend tft libraries & try the examples if u still get white screen then go to this link forum.arduino.cc/index.php?topic=450176.0
Try the MCUFRIEND_kbv-master Library then uncomment your particular tft screen in MCUFRIEND_kbv.cpp
@@johndripper I am having similar issues, white screen, I added the kvb libraries, graphicstest reports 0XC0C0 as identifier, and I don't know where to go from here. BTW I don't see a link in your reply.
@@googleuser6875 why so its right there under my reply
I am facing problem in library LCDWIKI_SPI.h can you please 🙏 help me I want this file lcdwiki_spi.h
Thank you, this was very helpful!!
Thank you for this video. It helped me a lot.
Welcome :)
Thanks so much this tutorial has been helpful.
Thank you! I can work with my tft ... but now everything its mirroring, somebody knows how I can solve this detail?
Very helpful. Thanks for explaining.
thanks bro it worked ''(2023)"
Im using GT610!!
thanks so much sir!!! This method fixed my problem!!
if you get an error "couldn't compile for arduino mega" try installing Adafruit BUS I/O library....github.com/adafruit/Adafruit-GFX-Library
Thanks man! Super helpful!
Hello, i found my ID is 0x9481 from the seller because i didn't find it ont the code, i put it in the same place as you did, but the screen steel white!! nothing appears!!
Very helpful. It worked thanks!
You are welcome .
thank you very much! it worked!
Oh nice it works! Mine is 0x7575.
Thanks
that worked perfectly. Thank you.
I have tried all the identifiers but my TFT is not working , kindly tell what to do now
If this method is not working, then please contact the seller to know the identifier or you google it to find another method..We don't have other methods to do find out the identifier .Thank you
Thank you!
Thank you so very much, it works now.
Thank you very much!
have same problem in ili9225 in arduino uno , but cant fix
How to turn off and dim the tft screen light?
I tried all the hex values for each driver. No luck still white screen. My tft id =0xD3D3.
Same i have white screen and that dosent help me
were did the links go???
my screen is not showing anything
Thank you very much .
Thank you, it works.
Good video but the music is distracting
Thank you for you comment. We will try to improve the music.
thanks for the video
Is your problem solved
I am still facing this issue
Thanks broo.. it works...!!
thank you it works fine
thank you
you are saver thanks loooooooooooooooooooooooooooooooottttttttttt
thanks a lot
ma i have the code please?
ty very much
Nice tutorial Joi aai axom ;)
+John Dripper, thank you. Jai aai axom
Good job
Thanks bro It works
+Volkan Bay
You are most welcome
Thank you also Bro.Hope You Like Us
Thanks its help :)
thx!
"With Uno works, but with Mega doesn't. What's wrong?"
Buddy links gone. not working anymore. kindly help
NOT GETTING YOUR QUESTION YAAR
the three links in discription are not working any more kindly help
Touch screen library
github.com/adafruit/Touch-Scr...
TFT LCD library
github.com/adafruit/TFTLCD-Li...
GFX library
github.com/adafruit/Adafruit-...
iam using it on wemos D1 hope it will work
Thank you for your comment.we will fix it soon by today..
link has been fixed.you can try
tankyou great
Welcome
i only get tons of errors
damn it pisses me of, all those folders are a mess, cant see the one u pull in Example, i get tons of errors..
There is a new video in our channel how to fix white screen error. You can try that trick if it won't work for you.
Please go to the channel and find that video.
I LOVE YOU
Based, saved my fukin life
Background noise distracting. otherwise informative
Bonjour à tous, suivez le lien ci-dessous c'est un WIKI Chinois en ENGLISH la solution entière pour l'écran ILI9341 qui ressort une ID 0x0 lien www.lcdwiki.com/2.4inch_Arduino_Display tout y est expliqué.Bon amusement
GG India.