1.开发板stm32f103c8系列,打开cubemx,选择单片机型号(实际可随自己的板子型号来)

stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库

2.配置好相关rcc的HSE为外部晶振和sys的Debug模式

stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库
其中sys的debug模式,我这里用的是DAP下载器,所以如下图,如果是其他下载器,建议自行百度如何选择。
stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库

3.ADC的配置,实际按自己的需求来

stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库
stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库
相关dma配置,这里模式选择循环,这就不需要每次调用相关函数去获取adc的值了。因为是5个通道,所以Memory选择递增。另外这里的DMA的中断是默认开启的,实际在程序上是不用的,生成工程后,得注释掉DMA中断使能,不然会一直进中断(这种现象我也只在f103和f334中见到)
stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库

4.时钟树的配置,按照自己的板子来配置就行

stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库

5.项目的相关配置

stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库
stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库
stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库

6.生成工程,并打开相关工程

stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库
打开main.c
stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库

7.编译程序,下载到板子上即可

stm32-利用cubemx创建多路adc采集并开启DMA进行搬运,基于HAL库

8.完毕

相关文章:

  • 2022-12-23
  • 2021-12-26
  • 2021-10-22
  • 2021-07-30
  • 2022-12-23
  • 2022-01-22
猜你喜欢
  • 2022-12-23
  • 2021-08-16
  • 2021-07-27
  • 2021-03-26
  • 2021-10-20
  • 2021-12-15
相关资源
相似解决方案