Stm32CubeMx通过DMA获取多路ADC采集的数据(踩到坑的来看看,我也是一步步踩坑到实现的)
作者:互联网
用stm32CubeMX 可以轻松配置模拟电压数值采集,由于使用直接存储器DMA进行ADC数据采集无需一直占用着CPU线程,所以我们一般在需要多通道采集的情况下才使用DMA, 多路ADC采集在工业生产测量方面也很常用到,所以这个内容我们还是得尽量学到手,这篇内容就不写得太详细了,挑重点,如果不会使用CUBEMX配置KEIL工程的看我上一篇文章。
首先STM32CUBEMX配置方面:
1.RCC:
2 .SYS:
3.时钟树配置:
4.开启一个串口,只需要选择异步通信就行了,不需要配置串口中断或串口DMA,因为占CPU线程的是ADC的采集,采集之后我们用串口上发一下数据而已占不了多少时间:
5.多通道ADC配置,这里以两通道channel5、channel6为例:
6.ADC的DMA配置:
7.到此CUBEMX的任务已经完成了,可以生成mdk工程了,然后打开工程打开mani.c,添加所需要的程序,由于已经在程序中注释了,我就不在此打字描述,直接看图:
**最后需要注意应钩上使用microlib 再编译程序,才不会报错。
上结果图(通道5接着3.3V,通道6接着GND):
感谢浏览阅读!
标签:DMA,配置,Stm32CubeMx,采集,ADC,串口,CPU 来源: https://blog.csdn.net/qq_42289734/article/details/123100108