Arduino Esp32+TFT ST7735S 测试代码
填入https://dl.espressif.com/dl/package_esp32_index.json。C:\Users\用户名\AppData\Local\Arduino15\staging\packages。1.在Arduino内安装esp32和TFT_eSPI库。如果出现下载失败的情况可以把下载失败的包手动下载然后放到。这个路径下面,然后继续安装即可完成esp32的安装。修改这一部分内
·
下载所需要的东西
1.在Arduino内安装esp32和TFT_eSPI库

填入
https://dl.espressif.com/dl/package_esp32_index.json
如果出现下载失败的情况可以把下载失败的包手动下载然后放到
C:\Users\用户名\AppData\Local\Arduino15\staging\packages
这个路径下面,然后继续安装即可完成esp32的安装

TFT_eSPI的安装比较简单
然后是DeepSeek给的连接和测试方法
接线方案
TFT屏幕 ESP32 SD卡模块
-----------------------------------------------
GND →→→→→→ GND ←←←←←← GND
VDD →→→→→→ 3.3V ←←←←←← VCC
SCL →→→→→→ GPIO18 ←←←←←← SCK
SDA →→→→→→ GPIO23 ←←←←←← MOSI
RST →→→→→→ GPIO22
DC →→→→→→ GPIO4
CS →→→→→→ GPIO5
BLK →→→→→→ 3.3V/PWM
GPIO15 ←←←←←← CS
GPIO19 ←←←←←← MISO
测试代码
#include <TFT_eSPI.h>
TFT_eSPI tft = TFT_eSPI();
#define SCREEN_WIDTH 160
#define SCREEN_HEIGHT 128
#define BALL_RADIUS 5
#define BALL_COLOR TFT_WHITE
#define BG_COLOR TFT_BLUE
int ballX = SCREEN_WIDTH/2;
int ballY = SCREEN_HEIGHT/2;
int ballSpeedX = 1;
int ballSpeedY = 1;
int prevX, prevY;
void setup() {
tft.init();
tft.setRotation(1); // 根据屏幕实际方向调整(0-3)
tft.fillScreen(BG_COLOR);
prevX = ballX;
prevY = ballY;
}
void loop() {
// 清除旧位置
tft.fillCircle(prevX, prevY, BALL_RADIUS, BG_COLOR);
// 更新位置
prevX = ballX;
prevY = ballY;
ballX += ballSpeedX;
ballY += ballSpeedY;
// 边界碰撞检测
if (ballX <= BALL_RADIUS || ballX >= SCREEN_WIDTH - BALL_RADIUS) {
ballSpeedX = -ballSpeedX;
ballX = constrain(ballX, BALL_RADIUS, SCREEN_WIDTH - BALL_RADIUS);
}
if (ballY <= BALL_RADIUS || ballY >= SCREEN_HEIGHT - BALL_RADIUS) {
ballSpeedY = -ballSpeedY;
ballY = constrain(ballY, BALL_RADIUS, SCREEN_HEIGHT - BALL_RADIUS);
}
// 绘制新位置
tft.fillCircle(ballX, ballY, BALL_RADIUS, BALL_COLOR);
delay(10); // 调整速度
}
然后是修改TFT_eSPI的User_Setup.h文件
这一步非常重要
这个文件在
C:\Users\用户名\Documents\Arduino\libraries\TFT_eSPI
这个路径下面




TFT_MISO不用一定要注释掉(很重要)
修改这一部分内容,即可完成屏幕的显示
最后,结果展示
更多推荐



所有评论(0)