Register / Login  |  Desktop view  |  Jump to bottom of page

LED Display library » Manual declaration and configuration of AdaFruit GFX is difficult to understand

Author: cjzg2011
19/08/2021 13:17:46
How can McUfriend_kbv.h and AdaFruit GFX be configured to achieve the desired display results? Is there a more comprehensive example? How to switch between multi-level menus and the main screen?

Author: davetcc
20/08/2021 07:54:26
What board are you targetting?

This seems like an Uno shield, and we DO NOT recommend the use of color graphical displays on Uno as the rendering is too heavy for it.

Also, we don't yet support that library directly although it MAY work through the custom rendering options, for advanced users.

Author: davetcc
20/08/2021 08:26:29
https://www.thecoderscorner.com/products/arduino-libraries/tc-menu/tcmenu-plugins/adafruit_gfx-renderer-plugin/#manual-configuration

Author: davetcc
20/08/2021 09:21:43
https://www.thecoderscorner.com/products/arduino-libraries/tc-menu/renderer-take-over-display/

Author: cjzg2011
20/08/2021 10:22:05
 
davetcc wrote:What board are you targetting?

This seems like an Uno shield, and we DO NOT recommend the use of color graphical displays on Uno as the rendering is too heavy for it.

Also, we don't yet support that library directly although it MAY work through the custom rendering options, for advanced users.

The mega2560 board and the TFT LCD driven by ili9486 are selected.

Author: cjzg2011
20/08/2021 10:29:59
More fault-tolerant codes are recommended as follows:

#include <MCUFRIEND_kbv.h>
#include <Adafruit_GFX.h>

MCUFRIEND_kbv tft;
void setup(void) {
Serial.begin(9600);
Serial.println(F("TFT LCD test"));
tft.reset();
uint16_t identifier = tft.readID();
if(identifier == 0x9325) {
Serial.println(F("Found ILI9325 LCD driver"));
} else if(identifier == 0x932 smilie {
Serial.println(F("Found ILI9328 LCD driver"));
}else if(identifier == 0x9327) {
Serial.println(F("Found ILI9327 LCD driver"));
}else if(identifier == 0x4535) {
Serial.println(F("Found LGDP4535 LCD driver"));
}else if(identifier == 0x7575) {
Serial.println(F("Found HX8347G LCD driver"));
} else if(identifier == 0x9595) {
Serial.println(F("Found HX8347-I LCD driver"));
} else if(identifier == 0x4747) {
Serial.println(F("Found HX8347-D LCD driver"));
} else if(identifier == 0x8347) {
Serial.println(F("Found HX8347-A LCD driver"));
}else if(identifier == 0x9341) {
Serial.println(F("Found ILI9341 LCD driver"));
}else if(identifier == 0x7783) {
Serial.println(F("Found ST7781 LCD driver"));
}else if(identifier == 0x8230) {
Serial.println(F("Found UC8230 LCD driver"));
}else if(identifier == 0x8357) {
Serial.println(F("Found HX8357D LCD driver"));
} else if(identifier==0x0101){
identifier=0x9341;
Serial.println(F("Found 0x9341 LCD driver"));
}else if(identifier==0x7793){
Serial.println(F("Found ST7793 LCD driver"));
}else if(identifier==0xB509){
Serial.println(F("Found R61509 LCD driver"));
}else if(identifier==0x9486){
Serial.println(F("Found ILI9486 LCD driver"));
}else if(identifier==0x948 smilie{
Serial.println(F("Found ILI9488 LCD driver"));
}else {

Author: davetcc
20/08/2021 11:35:09
 
More fault-tolerant codes are recommended as follows:


Not sure what this means sorry?

Author: davetcc
20/08/2021 12:02:54
To be honest, let's draw a line under this here.

1. the library you want to use is not presently available for quickstart.
2. we'll try and add the library in the future, but we don't have the board available, and given present circumstances may not be soon.
3. you can try and setup the graphics library manually, but you have to understand that you are using an open-source product, so you need to research the options yourself.
[EDIT] 4. we are building a new tutorial as we discussed earlier that covers code generator and graphical displays setup. It will be available soon.

If you're looking for a fast-start, tailored solution for your problem, maybe you need to look at commercial options. On that front, at the moment we have no capacity.




Register / Login  |  Desktop view  |  Jump to top of page