今晚在给学弟调Bug时,发现了一个以前没有碰到的问题:在CubeMX生成的模板代码中,DMA初始化函数在ADC初始化函数之后,导致ADC的DMA一直触发不了。
我帮学弟看了很久,ADC触发方式、DMA中断卡死、定时器更新事件,甚至信号发生器全都检查了好几遍,愣是没找到错误,实在令人头大。实在没辙了就上网搜了一下,有提到一个初始化函数顺序的问题,即先要开启DMA的时钟,再开启ADC的时钟,于是手动把函数顺序改了一下,竟然能用了!!改完bug,松了一口气,回到实验室问了其他队友,原来也有人遇到过同样的问题!看来是我还没踩到这个CubeMx的坑,现在踩到了,也算是补上了吧,便想发一篇心得体会记录一下。
【Bug】使用CubeMX配置ADC的DMA出现的问题
于 2022-10-23 22:05:48 首次发布