前言
前面发了一篇文章基于 STM32H743VIT6 的边缘 AI 实践:猫咪叫声分类 CNN 网络部署实战(已验证)。这里面有一些我遇到过的bug,当时基本都花了很长的时间才解决。这里将这些bug总结一下方便后续查阅。
1.使用cubemx插件解析AI模型时出现ERROR 'gbk'错误

这里是由于我们的C盘的用户名是中文导致x-cubemx_AI解析模型时出错
这里我们需要将c盘的中文名更改为英文
这里不推荐自己修改
自己修改容易导致电脑崩溃就像这样

建议在淘宝上找专业的人士花一点钱来搞
这里只要更改为英文就能够正常的解析了
2.未开启CRC校验导致重新生成cubemx文件时报错
使用x-cubemx-ai插件导入模型时如果不开启CRC校验的话,第一次生成cubemx时不会出错,但是如果在添加新的外设,cubemx生成的代码会直接报错
我记得x-cubemx-ai的手册里说了开启ai插件后会自动开启crc校验
3.在导入AI模型后,DMA通道无法接收
这里加入AI插件后的DMA通道的值会无法读取是因为开启了D-cache
导致DMA无法直接读取,需要加两句代码,具体看部署CNN的文章有具体写
4.使用F4与H7读取I2S通道的值读取错误
F4与H7这里读取I2SDMA通道的值的方法不同
可能是DMA接收数据的方式不一样
H7会把值直接放在一个32位的变量里保存
而F4则是每个变量存16位所以这里24位转为32位的方法也有一些不一样