在做项目时,使用ADC+DMA时,由于引脚占用太多,采用了ADC2使用2个通道,ADC3使用3个通道的情况,最后发现在ADC2采集的时候,虽然数据一直都有采集成功,但是出现了程序卡在初始化的情况,连主循环都没有进去。
最后查找原因后,发现MDA接受数组太小了,导致一直卡在回调函数中。将数据长度加长后,解决问题。参考文章
在使用ADC和DMA进行项目开发时,遇到ADC2采集成功但程序卡在初始化的问题。经排查发现是MDA接受数组过小导致回调函数阻塞。调整数据长度后解决了这个问题,文章提供了CubeMX配置及优快云博客作为参考。
在做项目时,使用ADC+DMA时,由于引脚占用太多,采用了ADC2使用2个通道,ADC3使用3个通道的情况,最后发现在ADC2采集的时候,虽然数据一直都有采集成功,但是出现了程序卡在初始化的情况,连主循环都没有进去。
最后查找原因后,发现MDA接受数组太小了,导致一直卡在回调函数中。将数据长度加长后,解决问题。参考文章

被折叠的 条评论
为什么被折叠?