二十八,ADC,ADC的DMA多通道

二十八,ADC,ADC的DMA多通道

DMA是直接寄存器访问功能,可以不经过ARM内核直接将绑定的功能获取的数据,读出到指定寄存器,减少ARM内核的工作量.

1,我们想要使用ADC功能来读取数据,先设置ADC转换速度

2, 配置IOADC功能

3,根据需要设置参数,其中Rank的设置55.5Cycless

4,设置ADC2,开启了ADC2的第5通道

5,移植ADC驱动

Main

采样前先校准,只需要校准一次,不需要重复校准.

While加入读取ADC数值程序.

6,打开串口助手查看数据

7,基本配置完成,开启DMA方式

DMA,就不要选择中断了

8,修改顺序,需要先初始化DMA,然后才初始化ADC

9.程序中开启DMA传递

看起来没有任何程序读ADC1,但程序运行不靠ARM内核,DMA会一直刷新ADC1的值,注意ADC1的变量a1,DMA读取的时候是读取的地址.

10,DMA读取多路ADC通道的值.

PA5ADC2设置为ADC1.

多通道要设置为扫描模式.

11,多通道DMA程序

开启DMA

 

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值