2. 开发环境搭建:工欲善其事,必先利其器
做嵌入式AI开发,环境搭建是第一道坎。我见过不少朋友卡在这一步,工具链版本对不上,或者漏装了某个包,折腾半天连个demo都跑不起来。说实话,这章内容看起来琐碎,但每一步都踩过坑的我,会尽量把关键点给你讲透。
咱们要装的东西,说白了就四大块:
- STM32CubeMX —— 图形化配置芯片外设和时钟
- STM32CubeIDE —— 写代码、编译、调试的一体化环境
- X-CUBE-AI 扩展包 —— 把训练好的模型“翻译”成STM32能跑的代码
- Python + TensorFlow —— 训练模型的“大本营”
它们之间的关系,我画了张图,你看一眼就明白了:
2.1 STM32CubeMX 安装
CubeMX 是 ST 官方出品的图形化配置工具。你用它选芯片型号、配引脚、设时钟,最后自动生成初始化代码。我个人习惯把它当作项目的“起点”。
安装步骤其实很简单:
- 去 ST 官网搜 STM32CubeMX,下载最新版安装包(需要注册账号,免费)。
- 双击安装,一路 Next。注意安装路径不要有中文或空格。
- 安装完成后,首次启动会提示你更新固件包。建议先不更新,等用到具体芯片时再下载。
D:\STM32Cube\Repository。这样重装系统后不用重新下载,直接指定路径就行。
2.2 STM32CubeIDE 安装
CubeIDE 是 ST 基于 Eclipse 打造的免费 IDE。它集成了编译器、调试器,还自带 CubeMX 的配置界面。说白了,你装这一个就能搞定配置+编码+调试。
安装要点:
- 同样去 ST 官网下载 STM32CubeIDE 安装包。
- 安装时会让你选 Debug Probe 驱动。如果你用 ST-Link,默认勾选就行。
- 安装路径同样避免中文。
2.3 X-CUBE-AI 扩展包安装
这是咱们课程的核心工具。X-CUBE-AI 能把 TensorFlow、Keras、ONNX 等框架训练好的模型,转换成 STM32 能调用的 C 代码。它还会做量化、内存优化,甚至生成基准测试报告。
安装方式有两种:
| 方式 | 操作 | 适用场景 |
|---|---|---|
| 通过 CubeMX 安装 | 在 CubeMX 的 Help → Manage Embedded Software Packages 中搜索 X-CUBE-AI,勾选后下载 |
推荐,版本自动匹配 |
| 手动下载安装 | 从 ST 官网下载 en.x-cube-ai.zip,解压后放到 CubeMX 的 Repository 目录 |
网络不好或需要特定版本 |
关键点: X-CUBE-AI 安装后,会在 CubeMX 的 Pinout & Configuration → Software Packs 里出现。你点开它,就能导入模型、配置运行时参数了。
我记得第一次用的时候,找了半天没找到入口。后来才发现,得先在 CubeMX 里选中一个 STM32 芯片,才能看到 Software Packs 的选项。嗯,这个坑我帮你踩过了。
2.4 Python 与 TensorFlow 环境配置
这部分是训练模型的基础。我建议用 Anaconda 来管理 Python 环境,这样不同项目之间不会互相干扰。
具体步骤:
- 安装 Anaconda(或者 Miniconda,更轻量)。
- 创建虚拟环境:
conda create -n stm32ai python=3.10 - 激活环境:
conda activate stm32ai - 安装 TensorFlow:
pip install tensorflow==2.13.0 - 安装依赖库:
pip install numpy matplotlib scikit-learn
验证安装是否成功,你可以在终端里跑一下:
python -c "import tensorflow as tf; print(tf.__version__)"
如果输出了 2.13.0,恭喜你,环境搭好了。
2.5 验证整个工具链
环境都装完了,怎么知道它们能不能协同工作?我一般会跑一个“最小验证流程”:
- 在 Python 里训练一个简单的全连接网络(比如识别手写数字的 3 层 MLP)。
- 导出为
.h5文件。 - 在 CubeMX 里通过 X-CUBE-AI 导入这个模型,生成 C 代码。
- 在 CubeIDE 里编译、下载到开发板,跑一下推理。
这个流程走通了,后面的课程你就放心学。如果卡在哪一步,大概率是版本问题。别慌,回头检查一下版本号,或者去 ST 社区搜一下,基本都有答案。
总结一下: 环境搭建没有捷径,但按我的经验,只要版本对、路径没中文、X-CUBE-AI 装对了位置,基本一次过。后面咱们就要开始写第一个 AI 模型了,到时候你会感谢现在认真搭环境的自己。