合宙ESP32C3使用TFT_eSPI库操作ST7735s屏幕 (上)
本帖最后由 topdog 于 2022-5-20 23:02 编辑TFT_eSPI库升级到2.4.61版本可以完美的支持的合宙ESP32C3操作ST7735s屏幕。合宙ESP32C3和ST7735管脚配置图参见前期文章。
一、修改\Arduino\libraries\TFT_eSPI文件夹下的User_Setup.h配置
#define ST7735_DRIVER
#define TFT_WIDTH80
#define TFT_HEIGHT 160
#define ST7735_REDTAB160x80
#define TFT_RGB_ORDER TFT_BGR
#define TFT_MISO -1
#define TFT_MOSI3
#define TFT_SCLK2
#define TFT_CS 7
#define TFT_DC 6
#define TFT_RST 10
#define LOAD_GLCD
#define LOAD_FONT2
#define LOAD_FONT4
#define LOAD_FONT6
#define LOAD_FONT7
#define LOAD_FONT8
#define LOAD_GFXFF
#define SMOOTH_FONT
#define SPI_FREQUENCY27000000
二:刷入示例程序:
观察一下色彩、横竖屏、屏幕定位和默认的字体大小。
#include <SPI.h>
#include <TFT_eSPI.h>
TFT_eSPI tft = TFT_eSPI( );
void setup(void) {
tft.init();
tft.setRotation(1);
tft.fillScreen(TFT_BLACK);
delay(100);
}
void loop() {
tft.invertDisplay( false );
tft.fillScreen(TFT_BLACK);
tft.setCursor(0, 0, 1);
tft.setTextColor(TFT_WHITE, TFT_BLACK);
tft.println("Invert OFF\n");
tft.println("White text");
tft.setTextColor(TFT_RED, TFT_BLACK);
tft.println("Red text");
tft.setTextColor(TFT_GREEN, TFT_BLACK);
tft.println("Green text");
tft.setTextColor(TFT_BLUE, TFT_BLACK);
tft.println("Blue text");
delay(5000);
tft.invertDisplay( true ); // Where i is true or false
tft.fillScreen(TFT_BLACK);
tft.setCursor(0, 0, 2);
tft.setTextColor(TFT_WHITE, TFT_BLACK);
tft.println("Invert ON\n");
tft.println("White text");
tft.setTextColor(TFT_RED, TFT_BLACK);
tft.println("Red text");
tft.setTextColor(TFT_GREEN, TFT_BLACK);
tft.println("Green text");
delay(5000);
}
最终效果:
本帖最后由 topdog 于 2022-7-4 23:04 编辑
tmld570707 发表于 2022-7-3 09:37
老师:若单独接屏如何接?
你的问题看这个帖子。
https://www.arduino.cn/thread-108079-1-1.html
SPI 有三线接法,四线接法。软体上有分为软实现,硬体实现。
以UNO为例,硬件的SPI:
MOSI − 11
MISO − 12
SCK − 13
SS − 10
ESP32系列芯片乐鑫在SPI基础上还自定义了VSPI、HSPI、FSPI。
那就要根据你用的芯片来定义管脚了,另外各种屏幕的结构也不一样呀。
各国对SPI管脚标识也是不一样的,有的四线屏幕标称是DIN、DC、SS、CLK或者SCK。
所以,你要从用的库、芯片、屏幕驱动、触摸驱动综合来考虑。
祝一起学习一起进步!
正需要啊!摸索了半天没有搞定 zhaoyimei 发表于 2022-5-20 20:47
正需要啊!摸索了半天没有搞定
可以玩上一阵。 老师:合宙ESP32 的7PIN是GND对吗? tmld570707 发表于 2022-7-2 21:52
老师:合宙ESP32 的7PIN是GND对吗?
https://www.arduino.cn/thread-107965-1-1.html 老师:若单独接屏如何接?
topdog 发表于 2022-7-3 22:18
你的问题看这个帖子。
https://www.arduino.cn/thread-108079-1-1.html
麻烦大佬提供一下思路,arduino +1.8 白屏问题,谢谢
https://www.arduino.cn/thread-109281-1-1.html
页:
[1]