开始前适用开发板:ESP32-P4 + ESP32-C5 · 开发框架:ESP-IDF
仅存在于 P4C5 仓库,Korvo 无对应目录。
仓库路径:P4_C5_4.3_Firmware/05.test.*
共 25 个独立工程,用于单项硬件验证或 AI/语音/4G 能力演示。
建议在跑通 04.advanced.p4c5_board_test 整板测试后,按需选测。
一、为什么单独分层
| 对比 | 01~04 例程 | 05.test.* |
|---|---|---|
| 目的 | 教学 + 功能演示 | 硬件/算法冒烟测试 |
| UI | 完整或标准状态页 | often 极简或专用测试 UI |
| 依赖 | 通用 BSP | 可能依赖 SkaiNet、ESP-DL、4G 模组等 |
| 学习顺序 | 按阶段系统学 | 按需选测,不必全跑 |
二、硬件外设测试(13 个)
| 工程 | 一行说明 | 你将验证 |
|---|---|---|
05.test.axp2101 | AXP2101 PMIC 读写与电池状态 | I2C 0x34、电压/充电/电量 LVGL 显示 |
05.test.codec_i2s | ES8311+ES7210 I2S 回环 | 麦克风→扬声器实时环回 |
05.test.sdmmc | TF 卡 SDMMC 4-bit | 挂载、读写校验、速度 |
05.test.wifi_station_c5 | C5 Station 连路由器 | 双芯 Wi-Fi 获 IP(比 02 层更纯) |
05.test.wifi_scan_c5 | C5 扫描 AP + 信道图 | Wi-Fi 最小验尸(联网前必跑) |
05.test.usb_uvc_display | USB UVC → MIPI 屏 | USB Host + 摄像头预览 |
05.test.usb_qr_recognition | USB UVC + 二维码 | UVC + 识别结果串口/屏 |
05.test.4g_module | 4G AT/PPP/HTTP | 需外接 Cat.1 模组 |
05.test.4g_http | 4G PPP 后 HTTP GET | 蜂窝网 HTTP |
05.test.4g_mqtt | 4G PPP 后 MQTT | 蜂窝网 MQTT |
05.test.button_ws2812 | GPIO35/GPIO0 + WS2812 | 按键与彩灯 |
05.test.rs485_uart | RS485 半双工 UART | TX GPIO31,DE/RE GPIO32 |
05.test.mcp4725_dac | MCP4725 I2C DAC | GPIO20 boost 使能 |
推荐验板顺序(硬件)
p4c5_board_test(整板)
→ wifi_scan_c5(C5 是否正常)
→ codec_i2s(音频环回)
→ sdmmc(TF 卡)
→ axp2101(电池/充电,若有锂电)
三、SkaiNet / ESP-SR 语音(6 个)
需 SPIFFS 或分区内置语音模型;首次编译较慢。
| 工程 | 一行说明 |
|---|---|
05.test.skainet_afe_wakeup | AFE + WakeNet 本地唤醒词 |
05.test.skainet_cn_cmd | 唤醒 + MultiNet 中文命令词 |
05.test.skainet_vad | 语音活动检测(是否在说话) |
05.test.skainet_voice_comm | AFE 语音通信 + NSNet 降噪 |
05.test.skainet_doa_display | 双麦 DOA 声源方向 + 眼球 UI |
05.test.gmf_embed_music | GMF 内嵌 Flash 音乐播放(Pipeline 冒烟) |
仓库内 SkaiNet 测试 UI 可配合在线组件
kevincoooool/ksdiy_skainet_board、ksdiy_skainet_ui。
学习路径:
codec_i2s → skainet_vad → skainet_afe_wakeup → skainet_cn_cmd
四、ESP-DL AI 视觉/音频(5 个)
| 工程 | 一行说明 |
|---|---|
05.test.espdl_cat_detect | 猫脸实时检测(CSI/USB/内嵌图) |
05.test.espdl_color_detect | HSV 颜色检测(轴对齐/旋转框) |
05.test.espdl_mobilenet_cls | MobileNet V2 ImageNet 1000 类 |
05.test.espdl_run_model | 自定义 .espdl 三种推理 API 对比 |
05.test.espdl_speaker | 声纹识别 + 余弦相似度 |
依赖 kevincoooool/ksdiy_espdl_input 等组件;需 P4 NPU/ESP-DL 环境与模型文件。
学习路径:
camera_lvgl_display → espdl_color_detect → espdl_cat_detect → face_recognition(04层)
五、其他(1 个)
| 工程 | 一行说明 |
|---|---|
05.test.airplay_p4c5 | AirPlay 2 音频接收(AP+STA 配网、ALAC/AAC) |
六、通用编译方法
cd P4_C5_4.3_Firmware\05.test.wifi_scan_c5 # 换成目标工程名
idf
idf.py set-target esp32p4 # 每个工程首次需要
idf.py build flash monitor
部分工程需 menuconfig 配置 SSID、4G APN、CSI 开关等,见各目录 README.md。
七、与 02.beginner 层的关系
| 能力 | 教学用(02 层) | 测试用(05 层) |
|---|---|---|
| Wi-Fi 扫描 | — | wifi_scan_c5 |
| Wi-Fi 连接 | wifi_station | wifi_station_c5 |
| 音频 | i2s_codec | codec_i2s(纯环回) |
| TF 卡 | sdmmc_sd | sdmmc(偏 benchmark) |
| USB 相机 | 03/04 综合例程 | usb_uvc_display |
建议:怀疑硬件问题时用 05 层缩小范围;学 API 时用 02/03 层。
八、常见问题
| 现象 | 工程 | 处理 |
|---|---|---|
| Wi-Fi 全失败 | wifi_*_c5 | 等 C5 初始化;查 ESP-Hosted |
| 4G 无拨号 | 4g_* | 天线/SIM/APN;UART 接线 |
| SkaiNet panic | skainet_* | 模型分区/SPIFFS;Flash 大小 |
| ESP-DL 加载失败 | espdl_* | 模型路径;PSRAM |
| UVC 无画面 | usb_uvc_* | USB Host 供电;摄像头兼容性 |
九、相关文档
酷世DIY · Kevincoooool