单片机上如何运行AI?单片机如何“学会思考”之TinyML崛起!(含案例,建议收藏)
TinyML 的目标不是“把会聊天的大模型塞进 MCU”。它要解决的是:在。
上一篇文章,小编写了一篇“为什么AI会改变单片机的未来?”的文章,引起来广泛的留言、关注和加群的讨论。大多数读者的诉求是提供真实案例。
这不案例来了。(欢迎收藏+关注)
1、TinyML是什么?
在提供和讲解真实案例之前,我们需要先了解一下什么是TinyML。
TinyML(Tiny Machine Learning)是一种小型的推理模型,是在资源、算力与能耗都极度受限的微控制器(MCU)上运行的机器学习推理。
TinyML 的目标不是“把会聊天的大模型塞进 MCU”。它要解决的是:在毫瓦级功耗下,设备能否在本地做稳定的模式识别和简单预测。
现阶段,在单片机中的小型推理模型中的典型任务包含:关键词唤醒(KWS)、设备异常检测、姿态/手势识别、小型视觉分类或“是否有人”等。
TinyML 与“边缘 AI”还不太一样。边缘 AI 可以依赖瓦级算力(树莓派、Jetson 等),而 TinyML 的约束来自微控制器:SRAM 以百 KB 计、Flash 以 MB 计、算力以百 MHz 计、总线/缓存紧张。它擅长在噪声里找模式,而不是做长文本理解或大规模检索。
为什么TinyML正在成为主流?主要有三点原因:
- 能耗与隐私
传感器“永远在线”时,把全部原始数据上传到云是不可承受的;端侧只上传“事件”,既省电也合规。
- 延迟
很多动作(断电、急停、报警)不能等云端;由于云端的延时以及端侧推理的时间,会让系统更像“反射弧”。
- 成本
一个高性价比 MCU + 小模型,比“云传输 + 云算 + 云存储”更可控,稳定性也更好。

2、什么MCU 适合做 TinyML?
先看“上板门槛”。如果我们的芯片满足下面这些条件,大概率可以把首个 Demo 跑起来。
|
维度 |
建议下限 |
要点 |
|---|---|---|
|
Flash(程序+模型) |
≥ 512 KB(建议 1 MB) |
运行库、模型、驱动和你的业务代码都会占空间;KWS/手势类模型常在几十至百 KB。 |
|
SRAM(推理 arena + 堆栈) |
≥ 128 KB(建议 256 KB) |
真正决定成败的是“中间张量峰值”,而不是总内存;必须测峰值。 |
|
核与指令 |
Cortex-M4F/M33/M55@80–200 MHz |
有 DSP/向量/Helium 指令,卷积/点积会快很多;持续省电靠更短占空比。 |
|
外设链路 |
DMA + 定时器 + I2S/DFSDM/DVP |
音频/摄像头不上 DMA,CPU 会被搬运任务拖垮;先把数据搬运跑稳再谈模型。 |
|
能耗预算 |
毫瓦级“始终在线” |
唤醒链路设计成两到三级:小模型判定事件,再启动大模型或云端流程。 |
|
工具链 |
TFLite Micro / LiteRT、CMSIS-NN |
成熟工具 = 少走 80% 弯路;可直接拿样例跑通,再替换你自己的模型。 |
做可行性评估的时候,务必还需要落实两件事:
- 把 tensor arena 的峰值量出来
模型上板后打印实际占用,并与中断栈、任务栈、DMA 缓冲放在同一张图里。
- 把端到端延迟量出来
采样→特征→推理→动作——每一段都打点,不要只看
Invoke()时间。
3.可复制的开源案例(附 GitHub 路径)
不能登录GitHub的可以加小编的微信,我可以单独分享链接
案例 A|端侧关键词唤醒(KWS)
- 思路
PDM/I2S 麦克风 → MFCC → 轻量 CNN(或 DS-CNN)→ 执行动作。
- 开源工程
1.ARM 官方 micro_speech示例(支持虚拟硬件与实板):https://github.com/ARM-software/AVH-TFLmicrospeech



2.约 20 KB 权重的 “Yes/No” KWS 示例(Arduino):
https://github.com/martishin/arduino-tinyml-speech-recognition


3.Edge Impulse 的 KWS 脚手架(含数据采集与部署流程)
https://github.com/ShawnHymel/ei-keyword-spotting


案例 B|微型“人形检测”(摄像头)
- 思路
低分辨率灰度输入 → 轻量 CNN → 是否有人/是否运动。 - 开源工程
ESP32-CAM 上运行 TFLM 的 person_detection 示例(Arduino 草图展示):
https://www.instructables.com/ESP32-CAM-Person-Detection-Expreiment-With-TensorF/
案例 C|“带加速单元”的微控板
- 思路
MCU + 小型 NPU/TPU 的异构组合,端侧加速器承载更大的模型。 - 资料
Google Dev Board Micro 的 TFLM 工作流与板上摄像头/麦克风实践介绍:https://blog.tensorflow.org/2023/02/tensorflow-lite-micro-with-ml-acceleration.html

推荐几个小编关注的学习AI和大模型的公众号:
更多推荐



所有评论(0)