这个TFT模块是跟着合宙9.9包邮的ESP32C3真香板一起购买的,在arduino下引用Adafruit_ST7735.h会出现色彩错误。
Adafruit_ST7735库中160X80屏幕默认定义的是RGB,而合宙的TFT模块可能是BGR(具体是库文件出错,还是合宙用的屏幕参数不同,我也不知道。在库里,这个TFT色彩确实应该按照BGR屏幕进行定义。)
我是参考了这位作者的文章,《Arduin环境下ST7735显示颜色错误的问题》,该作者修改了Adafruit_ST7735.cpp中相关代码,将case选择的if判断中,把160X80屏幕注释掉,直接跳转到else中。
case 0:
if ((tabcolor == INITR_BLACKTAB)/* || (tabcolor == INITR_MINI160x80)*/) {
madctl = ST77XX_MADCTL_MX | ST77XX_MADCTL_MY | ST77XX_MADCTL_RGB;
} else {
madctl = ST77XX_MADCTL_MX | ST77XX_MADCTL_MY | ST7735_MADCTL_BGR;
}
————————————————
版权声明:本文为CSDN博主「Glacier_235」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Glacier_235/article/details/123690233