如题,我采用一个采用stm32CUBEMX生成了工程,工程里面使用了X-CUBE-AI对自定义的模型进行模型压缩,但是我经常要更新模型,那么怎样更新模型了。这里开博客记录一下。
如图所示,为基于STM32CUBEMX生成的工程文件目录结构图。
这里我们将该工程文件拷贝一份。
这里,我们用STM32CUBEMX软件打开NET.ioc这个文件
注:我们采用的芯片是STM32H745IIT8
下图是STM32CUBEMX软件关于芯片的时钟配置
下面进行X-CUBE-AI相关配置
这里要注意几点:X-CUBE-AI的版本是6.0.0 我的STM32CUBEMX版本是6.4.0 这两个版本要对应一下,别的版本没用过。
接下来,打开这个菜单
配置一下network
接下来配置一下模型框架名称、模型路径、模型压缩等级,并将模型进行分析和验证
最后,将配置好的工程生成代码
这里生成的代码只是将打开的工程部分代码 文件进行覆盖。
在工程文件目录下找到如下路径
这里的X-CUBE-AI文件夹我们复制到之间备份的工程文件对应的目录下
直接替换掉备份呢的工程目录下对应的文件
然后打开备份的工程文件,并打开 app_x-cube-ai.c和app_x-cube-ai.h这两个文件
可以看到,被修改的工程和备份的工程在 app_x-cube-ai.c文件的
void MX_X_CUBE_AI_Process(void) 函数部分形参是不一样的
这里我们将被修改的工程里面的app_x-cube-ai.c中MX_X_CUBE_AI_Process函数的定义部分直接拷贝过来。更直接一点,将app_x-cube-ai.c文件直接拷贝到备份工程文件中对应的位置上
同时,在app_x-cube-ai.h文件中将对应的函数声明进行修改
编译+下载程序 大功告成