esp32c3 tft屏幕
时间: 2025-01-23 11:05:18 浏览: 83
### ESP32-C3 TFT 屏幕使用教程
#### 硬件连接
对于 ESP32-C3 连接至 ST7789 控制的 2 寸 LCD 屏幕,硬件连线如下表所示:
| ESP32 Pin | Function |
|-----------|----------------|
| GPIO18 | REST (复位) |
| GPIO10 | SPI_CS |
| GPIO6 | SPI_CLK |
| GPIO9 | SPI_DC |
| GPIO7 | SPI_MOSI |
这些引脚定义用于控制屏幕的操作模式以及数据传输方式[^3]。
#### 初始化与配置
为了在 VSCode 中设置好开发环境来支持 ESP32-C3 并配合 LVGL 库工作,在完成上述硬件连接之后还需要执行以下操作:
- 克隆 `lv_port_esp32` 项目到本地;
- 设置目标芯片为 ESP32-C3;
- 使用配置工具调整分辨率和其他参数以匹配所使用的显示屏规格;
#### 示例代码展示
下面给出一段简化版 Arduino IDE 下运行于 ESP32-C3 的测试程序,该程序能够点亮 ST7789 驱动的 TFT 显示屏,并交替改变背景颜色:
```cpp
#include <TFT_eSPI.h>
#include <SPI.h>
TFT_eSPI tft = TFT_eSPI();
void setup() {
Serial.begin(115200);
tft.init();
tft.setRotation(1); // Set rotation to landscape mode, adjust as needed.
tft.fillScreen(TFT_BLACK);
}
void loop() {
static uint16_t colors[] = {TFT_RED, TFT_GREEN, TFT_BLUE};
static unsigned long lastChangeTime = millis();
const unsigned int changeInterval = 100;
if ((millis() - lastChangeTime) >= changeInterval) {
lastChangeTime += changeInterval;
static size_t colorIndex = 0;
tft.fillScreen(colors[colorIndex++ % sizeof(colors)/sizeof(*colors)]);
}
}
```
这段代码实现了基本的颜色切换功能,可以验证屏幕是否正常工作。注意这里的旋转方向被设定为横向显示(`tft.setRotation(1)`), 用户可以根据实际需求调整此值[^5]。
阅读全文
相关推荐


















