这条路适合谁
适合已经有 ESP32 或 C++ 经验、想复用 Arduino 生态、或者要做更工程化项目的读者。零基础建议先从 Mind+ 图形化起步。K10 用的是 ESP32-S3,官方为它提供了独立的板卡支持包,不要直接按通用 ESP32 板型来选。
Arduino、MicroPython、Mind+ 图形化是三套不同的固件环境,切换往往需要重新烧录,动手前先备份板上程序。
Arduino IDE 安装官方 BSP
- 下载并安装 Arduino IDE
- 打开 File → Preference,把 Compiler warnings 设为 none
- 在附加开发板管理器网址里另起一行,填入官方 BSP 地址
- 打开 Tools → Board → Boards Manager,搜索 unihiker 并安装
- 安装完成后,在板型列表里选择行空板 k10(unihiker k10)
官方 BSP 地址是 https://downloadcd.dfrobot.com.cn/UNIHIKER/package_unihiker_index.json,建议直接复制,手敲容易漏字符。
安装环节有个高频坑,官方 FAQ 专门列了:装完 BSP 后连空程序都报 xtensa-esp32s3-elf-g++: error: CreateProcess: No such file or directory,原因是 esp32 编译必要组件没有装成功。退出杀毒防护软件、关闭防火墙后重装 BSP 即可。
第一个程序,还是画布两段式
#include "unihiker_k10.h"
UNIHIKER_K10 k10;
uint8_t screen_dir = 2;
void setup() {
k10.begin();
k10.initScreen(screen_dir);
k10.creatCanvas();
k10.setScreenBackground(0xFFFFFF);
k10.canvas->canvasText("UNIHIKER", 1, 0x0000FF);
k10.canvas->updateCanvas();
}
void loop() {}
顺序是 begin 初始化、initScreen 定方向、creatCanvas 建画布,之后所有绘制都落在画布上,最后 updateCanvas 才真正推到屏幕。这和图形化里的缓存显示文字加显示更新、MicroPython 里的 draw_text 加 show_draw 是同一个心智模型,换语言不换套路。上传运行后,屏幕会显示蓝色 UNIHIKER 字样;屏幕无变化时检查是否漏了 updateCanvas()。
官方还提供了一批 Arduino 与 PlatformIO 示例,覆盖显示、板载传感器、音频、人脸检测与人脸识别、猫狗检测、移动检测、二维码、语音检测以及 GPIO,建议从显示类示例起步,跑通再往上加。
PlatformIO 怎么配
官方 Wiki 支持通过 CLion 或 VSCode 的 PlatformIO 插件开发。有个容易踩的坑,K10 目前不能在新建工程时直接选中,需要先用任意其他 DFRobot 板创建工程,再修改配置文件让 SDK 下载下来。
[env:unihiker]
platform = https://github.com/DFRobot/platform-unihiker.git
board = unihiker_k10
framework = arduino
build_flags = -DARDUINO_USB_CDC_ON_BOOT=1 -DARDUINO_USB_MODE=1 -DModel=None
- 工程名只用英文字母,避免后续编译出问题
- 首次创建工程会从 PlatformIO 服务器拉取文件,超过十分钟多半是网络问题
- 编译用 Ctrl+Alt+B,上传用 Ctrl+Alt+U
- SDK 配置成功后,之后新建工程能在 DFRobot 分类下直接找到 Unihiker K10
- 建议顺手装 Ini 插件,方便查看配置文件结构
和图形化相比要自己扛什么
| 板载资源 | 图形化 | 代码侧 |
|---|---|---|
| 屏幕 | 缓存与显示积木 | 建画布后自行绘制并调用更新 |
| 传感器与按键 | 直接读值积木 | 用官方库接口读取 |
| 摄像头与音频 | 现成积木 | 需自行初始化与组织流程 |
| 离线 AI 模型 | 现成积木 | 需按官方示例启用,不能照搬积木逻辑 |
官方 unihiker_k10.h 已经把常用板载资源封装好了,但复杂 AI 与业务逻辑要自己组织,别指望把图形化积木直接搬成代码。
下一步
环境通了,去行空板 K10 综合项目实战,把传感器、屏幕和物联网串成一个完整作品。