ESP-IDF 开发
本章节包含以下内容:
ESP-IDF 入门教程
初次接触 ESP32 ESP-IDF 开发,想要快速上手?我们为您准备了一套通用的 入门教程。
- 第0节 认识 ESP32
- 第1节 搭建环境
- 第2节 运行实例
- 第3节 创建项目
- 第4节 使用组件
- 第5节 调试程序
- 第6节 FreeRTOS
- 第7节 驱动外设
- 第8节 Wi-Fi 编程
- 第9节 BLE 编程
请注意:该教程使用 ESP32-S3-Zero 作为教学示例,所有硬件代码均基于其引脚布局。在动手实践前,建议您对照手中的开发板引脚图,确认引脚配置无误。
配置 ESP-IDF 开发环境
ESP32-P4-NANO-WIFI6-DB 仓库中的 ESP-IDF BSP 要求 ESP-IDF >=5.5。具体示例的组件和配置要求以对应示例目录中的 README 为准。
以下内容以 Windows 系统为例,使用 VS Code + ESP-IDF 扩展 的方式进行开发。Mac/Linux 用户请参考 官方说明。
此部分图示以安装 ESP-IDF V5.5.2 为例示范,安装时请选用与您开发板示例匹配的 ESP-IDF 版本。
安装 ESP-IDF 开发环境
-
前往 ESP-IDF Installation Manager 下载 ESP-IDF 安装管理器。这是乐鑫最新推出的跨平台安装工具,下文将演示如何使用其离线安装功能。
在页面中点击 Offline Installer 标签,然后在筛选栏中选择 Windows 操作系统和你需要的 ESP-IDF 版本(图示仅为参考,请以实际为准)。

确认选择无误后,点击下载按钮。浏览器将自动同时下载两个文件:一个是 ESP-IDF 离线整合包(.zst),另一个是 ESP-IDF 安装器(.exe)。

请耐心等待两个文件下载完成。
-
下载完成后,双击运行 ESP-IDF 安装器(eim-gui-windows-x64.exe)。
启动后,可在右上角将界面语言切换为中文。

安装工具会自动检测同一目录下是否存在离线整合包。点击 从存档安装。

接下来,选择安装路径。建议使用默认路径;若需自定义,请确保路径中不包含中文或空格。确认无误后,点击 开始安装。

-
当看到如下界面时,表示 ESP-IDF 已安装成功。

-
建议同时安装驱动程序。点击 完成安装,然后点击 安装驱动程序。

安装 Visual Studio Code 与 ESP-IDF 扩展
-
下载并安装 Visual Studio Code。
-
安装时建议勾选 通过 Code 打开操作添加到 Windows 资源管理器文件上下文菜单,以便快速打开项目文件夹。
-
在 VS Code 中,点击侧边活动栏中的
扩展图标(或使用快捷键 Ctrl + Shift + X)打开 扩展 视图。
-
在搜索框中输入 ESP-IDF,找到 ESP-IDF 扩展并点击安装。

-
当 ESP-IDF 扩展版本 ≥ 2.0 时,扩展会自动检测并识别上述步骤中安装的 ESP-IDF 环境,无需手动配置。
ESP32-P4-NANO-WIFI6-DB 示例仓库
ESP32-P4-NANO-WIFI6-DB 的 ESP-IDF BSP 和示例程序基于 ESP32-P4-NANO-WIFI6-DB 示例仓库维护。后续适配完成后,可在该仓库中获取对应的板级代码和示例程序。
仓库中的相关目录如下:
firmware/esp32_p4_nano_wifi6_db/:板卡固件配置。examples/esp_idf/:ESP-IDF 示例程序。
ESP32-P4-NANO-WIFI6-DB 的 ESP-IDF BSP 要求 ESP-IDF >=5.5。示例工程的目标芯片为 esp32p4,默认串口波特率为 115200。
快速运行
以下命令以 00_board_check 示例为例。将命令行当前目录切换到示例目录后执行:
cd examples/esp_idf/00_board_check
idf.py set-target esp32p4
idf.py build
idf.py flash monitor
推荐验证顺序
建议按以下顺序运行示例,先确认板级外设,再验证显示、网络和其他功能:
00_board_check:板级外设检查。01_i2c_tools:I2C 总线检查。02_sdmmc:SDMMC 检查。06_Displaycolorbar:显示屏测试。03_wifistation:Wi-Fi Station 测试。
ESP-IDF 示例索引
| 示例目录 | 示例内容 |
|---|---|
00_board_check | 板级外设检查 |
01_i2c_tools | I2C 工具 |
02_sdmmc | SDMMC |
03_wifistation | Wi-Fi Station |
04_ethernetbasic | Ethernet 基础功能 |
05_I2SCodec | I2S 编解码器 |
06_Displaycolorbar | 显示屏彩条 |
07_lvgl_demo_v9 | LVGL v9 |
08_eth2ap | Ethernet 转 Wi-Fi AP |
09_simple_video_server | 简单视频服务器 |
10_video_lcd_display | 视频 LCD 显示 |
11_usb_extend_screen | USB 扩展屏幕 |
12_nvs_counter | NVS 计数器 |
运行前检查
- ESP32-P4 本身不集成 Wi-Fi 和 Bluetooth。板卡通过 ESP32-C5 无线协处理器和 ESP-Hosted/SDIO 实现无线功能。
- I2C 总线使用 GPIO7(SDA)和 GPIO8(SCL),连接 ES8311、GT911、LCD 背光控制器和摄像头 SCCB 总线。
- ES8311 的 I2S 信号使用 GPIO13、GPIO12、GPIO10、GPIO9 和 GPIO11。
- 功放使能使用 GPIO53,SD 卡电源控制使用 GPIO45。
- ESP-Hosted/SDIO 使用 GPIO18、GPIO19、GPIO14、GPIO15、GPIO16、GPIO17 和 GPIO54。
- 具体示例的组件版本、配置要求和硬件连接方式,以对应示例目录中的 README 及板卡硬件资料为准。