二、ESP32-S3 工程创建
1. 新建项目(就像新建一个Word文档)
-
打开VS Code,点击左边活动栏的 PlatformIO图标(那个蚂蚁脑袋🕷️)。
-
在PlatformIO主页(PIO Home)里,点击 "New Project"(新建项目)。
-
弹出一个窗口,需要填几个信息:
-
Name :给你的项目起个名字,比如
esp32s3-lvgl-terminal。 -
Board :选择你手上的开发板型号。输入
esp32-s3-devkitc-1,然后在下拉列表里选 Espressif ESP32-S3-DevKitC-1。 -
Framework :选 Arduino(这样就能用Arduino的语法和库,对新手友好)。
-
Location:默认勾选了"使用默认位置",意思是项目会保存在C盘的用户文件夹里。如果你不想放C盘,可以取消勾选,自己选个地方。
-
-
点击 Finish(完成)。
-
第一次创建ESP32-S3项目时,PlatformIO会自动下载ESP32需要的工具链和开发包 。这个过程需要联网,耐心等几分钟(如果下载慢,可以参考第一部分的"国内源"小技巧)。
2. 项目文件结构(看看里面都有啥)
创建完后,左边会出现一堆文件夹和文件,别慌,它们各有分工:
cs
你的项目文件夹/
├── .pio/ ← 编译时产生的临时文件(不用管它)
├── lib/ ← 放你自己写的或下载的库(.cpp/.h文件)
├── src/ ← 放你的源代码(比如 main.cpp)
├── include/ ← 放头文件(.h文件)
├── test/ ← 放测试代码(暂时用不上)
└── platformio.ini ← 项目的"控制面板",用来配置开发板、库、编译选项等(非常重要!)
简单说,平时写代码主要在 src 文件夹里,其他文件夹基本不用手动动。
3. 配置 platformio.ini(让项目认识你的硬件)
打开项目根目录下的 platformio.ini 文件,它默认已经有一些内容了。我们要根据ESP32-S3的具体型号(比如N16R8:16MB Flash + 8MB PSRAM)添加几行配置:
cs
ini
[env:esp32-s3-devkitc-1]
platform = espressif32
board = esp32-s3-devkitc-1
framework = arduino
board_build.arduino.memory_type = qio_opi ; 启用OPI模式,让Flash和PSRAM跑得更快
build_flags = -D BOARD_HAS_PSRAM ; 告诉编译器:板子有PSRAM,放心用!
这两行配置啥意思?
-
board_build.arduino.memory_type = qio_opi:如果你的板子是 N16R8(16MB Flash + 8MB PSRAM),加上这行能充分发挥性能。如果用了其他型号,可能不需要。 -
build_flags = -D BOARD_HAS_PSRAM:PSRAM是扩展内存,加了这行才能用上那8MB内存,否则代码里用大数组会报错。
4. 写个"Hello World"测试一下
打开 src/main.cpp,把里面的内容换成下面的代码:
cs
cpp
#include <Arduino.h>
void setup() {
Serial.begin(115200); // 初始化串口,波特率115200
Serial.println("Hello ESP32-S3!"); // 打印一句话
}
void loop() {
Serial.println("Running..."); // 不断打印"Running..."
delay(1000); // 等待1秒
}
上传到开发板:
-
用USB线把ESP32-S3连到电脑。
-
让开发板进入下载模式(按住BOOT键,按一下RST键松开,再松开BOOT键)。
-
在VS Code底部状态栏,点击 → 图标(上传按钮),或者按快捷键。
-
PlatformIO会自动编译代码并上传。如果成功,底部终端会显示 SUCCESS。
查看输出:
点击VS Code底部的 插头图标🔌 (串口监视器),选择波特率 115200。你应该会看到开发板不断打印:
cs
text
Hello ESP32-S3!
Running...
Running...
...
如果看到这些,恭喜你!工程创建成功,硬件也正常工作啦~ 🎉
常见问题
上传失败:检查是否进入下载模式(按BOOT+RST),或者换一根数据线(有些线只能充电不能传数据)。
串口监视器没反应:确认波特率是不是115200,或者开发板是否已重启。
看看串口是不是对应的串口