项目>行空板 K10>行空板 K10 Arduino 与 PlatformIO 开发

行空板 K10 Arduino 与 PlatformIO 开发

摘要:把 K10 当 ESP32-S3 开发板写代码,先装官方 BSP 或配好 PlatformIO 工程,再认清画布模型和图形化积木并不通用。

这条路适合谁

适合已经有 ESP32 或 C++ 经验、想复用 Arduino 生态、或者要做更工程化项目的读者。零基础建议先从 Mind+ 图形化起步。K10 用的是 ESP32-S3,官方为它提供了独立的板卡支持包,不要直接按通用 ESP32 板型来选。

Arduino、MicroPython、Mind+ 图形化是三套不同的固件环境,切换往往需要重新烧录,动手前先备份板上程序。

Arduino IDE 安装官方 BSP

  1. 下载并安装 Arduino IDE
  2. 打开 File → Preference,把 Compiler warnings 设为 none
  3. 在附加开发板管理器网址里另起一行,填入官方 BSP 地址
  4. 打开 Tools → Board → Boards Manager,搜索 unihiker 并安装
  5. 安装完成后,在板型列表里选择行空板 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 综合项目实战,把传感器、屏幕和物联网串成一个完整作品。

资料来源

  • DFRobot 行空板 K10 官方 Wiki
  • 行空板 K10 官方 Arduino 编程准备
  • 行空板 K10 官方 PlatformIO 编程准备
  • DFRobot 官方产品资料库

相关内容

给特斯拉自动插枪的小车、“陆空两栖”四足机器人、到点捞菜的火锅机器实践基于行空板K10的地震波模拟探测装置实践行空板K10制作旋转展示台:语音控制灯光与转盘实践STEM教育 · 行空板M10:3D智能客厅课堂项目实践BME688传感器配行空板K10:室内环境监测实战实践ESP-Mosaico智能套件上手:AI编码与模块化扩展实践