You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I encountered an issue using the graphicstest sketch with an ILI9341 controller.
If readID() is called directly after reset() ( as the graphicstest sketch does )
the ILI9341 does not have enough time to properly reset before readID() is called.
In my case this caused an erroneous id of: 0xC0C0 to be reported.
Adding a delay of 2 ms. between readID() and reset() resolves this issue.
Rather than modifying each sketch, a better solution would of course be to add the
delay to the reset() function within Adafruit_TFTLCD.cpp as follows:
I encountered an issue using the graphicstest sketch with an ILI9341 controller.
If readID() is called directly after reset() ( as the graphicstest sketch does )
the ILI9341 does not have enough time to properly reset before readID() is called.
In my case this caused an erroneous id of: 0xC0C0 to be reported.
Adding a delay of 2 ms. between readID() and reset() resolves this issue.
Rather than modifying each sketch, a better solution would of course be to add the
delay to the reset() function within Adafruit_TFTLCD.cpp as follows:
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
void Adafruit_TFTLCD::reset(void) {
CS_IDLE;
// CD_DATA;
WR_IDLE;
RD_IDLE;
ifdef USE_ADAFRUIT_SHIELD_PINOUT
digitalWrite(5, LOW);
delay(2);
digitalWrite(5, HIGH);
else
if(_reset) {
digitalWrite(_reset, LOW);
delay(2);
digitalWrite(_reset, HIGH);
}
endif
// Data transfer sync
CS_ACTIVE;
CD_COMMAND;
write8(0x00);
for(uint8_t i=0; i<3; i++) WR_STROBE; // Three extra 0x00s
CS_IDLE;
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Cheers,
Russ
The text was updated successfully, but these errors were encountered: