用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): 感谢浏览阅读!