
图1. STM32CubeIDE 下 hello 工程 2.2. 使用 X-Cube-AI 从模型生成算法代码
假定你已经会使用 X-Cube-AI 从模型生成算法 C 文件,如下图 2 所示。
图2. X-Cube-AI 生成的 C 模型文件
图3. hello 工程目录 然后将 x-cube-ai,不管是图形界面,还是命令行,生成的文件复制到 model 目录里,如下图 4 所示。
图4. 工程目录(model) 3.2. 复制 x-cube-ai 上位机支持文件
首先在工程目录下建立一个 cubeai_lib 目录。然后可
从%X_CUBE_AI_DIR%/Utilities/%OS%/targets/common/EmbedNets/tools/inspector/
workspace/获取 x-cube-ai 上位机支持文件,如下图 5 所示:
图5. x-cube-ai 上位机支持文件 可以全部复制。但我们只需要 lib 和 include 目录。复制后的 cubeai_lib 目录效果如下图6:
图6. cubeai_lib 目录 3.3. 配置 STM32CubeIDE
首先在工程文件加入 model 和 cubeai_lib 目录,效果如下图 7 所示:
图7. STM32CubeIDE hello 工程目录 然后,加入 cubeai_lib 中的 include 和 model 路径,也就是"../cubeai_lib/include"和 "../model",如下图 8 所示。这是为了包含编译时需要的头文件。
图8. hello 工程 includes 路径设置 我们还需要链接 X-Cube-AI 的静态库如下,包括库的路径"../cubeai_lib/lib/static",以及库的名字:runtime,st_cmsis_nn,cmsis-nn,x86_cmsis,如下图 9 所示。
图9. hello 工程 Libraries 设置
图10. 文件 main.h 的处理 加入对 X-CUBE-AI 模板的调用,主要是包含头文件“#include <app_x-cube-ai.h>”以及两个函数调用“MX_X_CUBE_AI_Init();”和“MX_X_CUBE_AI_Process();”,效果如下图 11 所示:
图11. main 函数代码示例 至此,在 PC 上验证 X-Cube-AI 算法的框架就已经完成。现在,你可以加入更多代码,例如,从文件中读入 X-Cube-AI 算法的输入,以及比较和或打印 X-Cube-AI 算法的结果。
原文链接:https://blog.csdn.net/2501_92678806/article/details/150916601 |
经验分享 | 读取 STM32H5 Data Flash 触发 NMI 的问题解析
经验分享 | 利用TIMER测量信号周期及占空比的精度话题
经验分享 | Flash 全片自检过程中巧用 Linker 自定义变量
经验分享 | 一个 STM32U5 SBSFU SecureFault 问题定位与分析
经验分享 | 高精度定时器如何实现 PWM 零满占空比的连续切换
经验分享 | STM32G474 勘误手册中 SRAM Write Error 详解
经验分享 | 定时器触发ADC时可能遇到的几种情形
实战经验 | 1小时在STM32MPU上运行YOLOv8——训练篇
经验分享 | STM32CubeMX 生成时钟获取函数的分析
经验分享 | STM32双定时器+ADC+DMA实战案例