OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 19562|回复: 63

[探索者F407] ADC多通道(有使用DMA及不使用DMA的两个版本) 双重ADC+DMA规则同步 三重ADC+DMA交替采集同一通道

  [复制链接]

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14250
金钱
14250
注册时间
2018-8-3
在线时间
1146 小时
发表于 2019-3-23 21:13:31 | 显示全部楼层 |阅读模式
本帖主要是探索者ADC多通道(有使用DMA及不使用DMA的两个版本) 双重ADC+DMA规则同步    三重ADC+DMA交替采集同一通道
硬件主要使用:探索者板、屏幕、串口,若干根杜邦线
现象 :所测的电压值及转换值都会在屏幕及串口打印出来 没有屏幕的可以看串口打印数据
代码附件提供 参考资料F4中文参考手册
ADC1、2、3各通道对应如下:
aa6e9565261926f4d76360494dff305.png

ADC多通道和单通道原理差不多,主要是原子的例程只提供里单通道且没有使用DMA的例程 所以这里写了ADC多通道(使用DMA及不使用DMA的两个版本)
双重ADC+DMA规则同步
b06bfe165ec6c5f4105adf38f99aea7.png
三重ADC+DMA交替采集同一通道:  
首先ADC1采集6个周期之后ADC2采集 之后ADC3采集 这样的好处就是提高了采样率。
d66fc28e422b21d8477e32ffbf84cc7.png





探索者 ADC多通道(不使用DMA)实验.rar

3.46 MB, 下载次数: 1420

售价: 1 金钱  [记录]

探索者 ADC DMA多通道实验.rar

3.65 MB, 下载次数: 1385

售价: 1 金钱  [记录]

探索者 双重ADC DMA规则同步.rar

3.65 MB, 下载次数: 992

售价: 1 金钱  [记录]

探索者 三重ADC DMA对同一通道交替采集.rar

3.65 MB, 下载次数: 648

售价: 1 金钱  [记录]

啊哈~加油!!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
67
金钱
67
注册时间
2019-9-3
在线时间
20 小时
发表于 2019-11-5 17:23:14 | 显示全部楼层
wangpeiyi 发表于 2019-8-7 22:21
三重转换HAL库的程序有嘛?全网没找到啊,愁死了

我也想要 HAL库的双重或多重转换
回复 支持 1 反对 0

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2019-8-3
在线时间
5 小时
发表于 2019-8-7 22:21:16 | 显示全部楼层
三重转换HAL库的程序有嘛?全网没找到啊,愁死了
回复 支持 1 反对 0

使用道具 举报

23

主题

151

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1455
金钱
1455
注册时间
2015-8-11
在线时间
204 小时
发表于 2019-3-25 16:44:45 | 显示全部楼层
ZHI支持一下子
回复 支持 反对

使用道具 举报

35

主题

560

帖子

2

精华

资深版主

Rank: 8Rank: 8

积分
17596
金钱
17596
注册时间
2018-3-3
在线时间
522 小时
发表于 2019-3-25 17:18:36 | 显示全部楼层
帮顶   
回复 支持 反对

使用道具 举报

23

主题

151

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1455
金钱
1455
注册时间
2015-8-11
在线时间
204 小时
发表于 2019-3-25 22:06:49 | 显示全部楼层

  我想问一下 我把 探索者 双重ADC DMA规则同步   实验引脚改成A0A1为什么不好使啊,采样不准确    有什么好的建议么 谢谢了
回复 支持 反对

使用道具 举报

23

主题

151

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1455
金钱
1455
注册时间
2015-8-11
在线时间
204 小时
发表于 2019-3-25 22:10:40 | 显示全部楼层

我画的板子是 A0 A1 的   GPIOA时钟,ADC通道我全改了,但是还是不好使
回复 支持 反对

使用道具 举报

23

主题

151

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1455
金钱
1455
注册时间
2015-8-11
在线时间
204 小时
发表于 2019-3-25 22:18:45 | 显示全部楼层

我看实验中用的 DMA2_Channel_0     Stream0     通道0不是不支持ADC2吗    知道的麻烦解答一下子   谢谢了
回复 支持 反对

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14250
金钱
14250
注册时间
2018-8-3
在线时间
1146 小时
 楼主| 发表于 2019-3-26 10:49:07 | 显示全部楼层
WFENG 发表于 2019-3-25 22:18
我看实验中用的 DMA2_Channel_0     Stream0     通道0不是不支持ADC2吗    知道的麻烦解答一下子   谢谢 ...

ADC1  ADC2一起使用的 时候 只要初始化ADC1的DMA即可  当有第一次DMA请求的时候会去搬运ADC1的数据  第二次DMA请求就会搬运ADC2的数据  
啊哈~加油!!
回复 支持 反对

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14250
金钱
14250
注册时间
2018-8-3
在线时间
1146 小时
 楼主| 发表于 2019-3-26 10:55:24 | 显示全部楼层
翼行园子 发表于 2019-3-26 10:49
ADC1  ADC2一起使用的 时候 只要初始化ADC1的DMA即可  当有第一次DMA请求的时候会去搬运ADC1的数据  第二 ...

双重三重一个道理的 你可以看下中文手册的参考资料    b9c4615bf3d7e1e4b3ce7e10a8e5e5c.png
啊哈~加油!!
回复 支持 反对

使用道具 举报

23

主题

151

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1455
金钱
1455
注册时间
2015-8-11
在线时间
204 小时
发表于 2019-3-26 13:15:23 | 显示全部楼层
翼行园子 发表于 2019-3-26 10:55
双重三重一个道理的 你可以看下中文手册的参考资料

好的  谢谢            可能是探索版板子PA0  PA1 连接外设了            采的不准                            我估计是这样
回复 支持 反对

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14250
金钱
14250
注册时间
2018-8-3
在线时间
1146 小时
 楼主| 发表于 2019-3-26 13:33:01 | 显示全部楼层
WFENG 发表于 2019-3-26 13:15
好的  谢谢            可能是探索版板子PA0  PA1 连接外设了            采的不准                      ...

PA0 接到wk_up按键 如果不使用按键 是没问题的 PA1的话直接接LAN8720的REFCLKO引脚,接收50M时钟(一直有),不建议做普通IO用
啊哈~加油!!
回复 支持 反对

使用道具 举报

23

主题

151

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1455
金钱
1455
注册时间
2015-8-11
在线时间
204 小时
发表于 2019-3-26 17:31:39 | 显示全部楼层
翼行园子 发表于 2019-3-26 13:33
PA0 接到wk_up按键 如果不使用按键 是没问题的 PA1的话直接接LAN8720的REFCLKO引脚,接收50M时钟(一直有) ...

嗯呢  谢谢   PA1一直跳, 原来是时钟   哈哈  我没仔细看原理图
回复 支持 反对

使用道具 举报

0

主题

295

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
335
金钱
335
注册时间
2019-3-26
在线时间
9 小时
发表于 2019-4-3 09:00:28 | 显示全部楼层
谢谢分享!
回复 支持 反对

使用道具 举报

2

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
101
金钱
101
注册时间
2015-12-26
在线时间
29 小时
发表于 2019-5-16 20:36:47 | 显示全部楼层
有没有 103的例程
回复 支持 反对

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14250
金钱
14250
注册时间
2018-8-3
在线时间
1146 小时
 楼主| 发表于 2019-5-17 10:58:16 | 显示全部楼层
右走 发表于 2019-5-16 20:36
有没有 103的例程

103的论坛也有人分享的 你搜下就有的:http://www.openedv.com/forum.php?mod=viewthread&tid=276626
啊哈~加油!!
回复 支持 反对

使用道具 举报

2

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
101
金钱
101
注册时间
2015-12-26
在线时间
29 小时
发表于 2019-5-18 21:00:33 | 显示全部楼层
翼行园子 发表于 2019-5-17 10:58
103的论坛也有人分享的 你搜下就有的:http://www.openedv.com/forum.php?mod=viewthread&tid=276626

谢谢      
回复 支持 反对

使用道具 举报

0

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
58
金钱
58
注册时间
2019-7-11
在线时间
10 小时
发表于 2019-7-11 13:59:12 | 显示全部楼层
支持支持,太好了
回复 支持 反对

使用道具 举报

0

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
58
金钱
58
注册时间
2019-7-11
在线时间
10 小时
发表于 2019-7-11 14:12:27 | 显示全部楼层
帮顶,正好要用到
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
6
金钱
6
注册时间
2019-7-12
在线时间
1 小时
发表于 2019-7-12 15:21:47 | 显示全部楼层
网上搜了半天,也没弄懂,正好有源码
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2019-4-4
在线时间
6 小时
发表于 2019-7-14 18:41:07 | 显示全部楼层
支持,向楼主学习
回复 支持 反对

使用道具 举报

4

主题

17

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2019-6-4
在线时间
16 小时
发表于 2019-7-16 17:01:55 | 显示全部楼层
请教楼主,三重ADC那个,我关闭了连续转换模式,第一次触发ADC1会显示ADC1的值,第二次出发才会把ADC2和ADC3的值显示出来,怎么能控制一次读取三个的值呢
回复 支持 反对

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14250
金钱
14250
注册时间
2018-8-3
在线时间
1146 小时
 楼主| 发表于 2019-7-17 15:26:51 | 显示全部楼层
Geez 发表于 2019-7-16 17:01
请教楼主,三重ADC那个,我关闭了连续转换模式,第一次触发ADC1会显示ADC1的值,第二次出发才会把ADC2和ADC ...

那你连续触发三次之后 在把这个连续触发配置给关闭就行了
啊哈~加油!!
回复 支持 反对

使用道具 举报

4

主题

17

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2019-6-4
在线时间
16 小时
发表于 2019-7-18 18:06:49 | 显示全部楼层
翼行园子 发表于 2019-7-17 15:26
那你连续触发三次之后 在把这个连续触发配置给关闭就行了

谢谢楼主,已经调好了
回复 支持 反对

使用道具 举报

2

主题

37

帖子

0

精华

初级会员

Rank: 2

积分
114
金钱
114
注册时间
2012-2-29
在线时间
14 小时
发表于 2019-8-7 16:14:10 | 显示全部楼层
好呀!谢谢了!
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2019-8-3
在线时间
5 小时
发表于 2019-8-7 22:06:02 | 显示全部楼层
我想同时使用ADC1和ADC3,不使用ADC2,请问该怎么配置啊?另外第二个请求一定是传输ADC2的值嘛?如果用不到ADC2怎么办?
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2019-8-3
在线时间
5 小时
发表于 2019-8-7 22:13:31 | 显示全部楼层
请问一下,三重ADC中不适用ADC2怎么办,那请求的时候,还会返回ADC2的数据嘛?以及ADC2还需要配置嘛?
回复 支持 反对

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14250
金钱
14250
注册时间
2018-8-3
在线时间
1146 小时
 楼主| 发表于 2019-8-11 10:08:39 来自手机 | 显示全部楼层
wangpeiyi 发表于 2019-8-7 22:06
我想同时使用ADC1和ADC3,不使用ADC2,请问该怎么配置啊?另外第二个请求一定是传输ADC2的值嘛?如果用不到 ...

双重adc的话,网上我之前也找过,说是不支持adc1 adc3或者adc2,adc3,就是双重时必须要adc1  adc2...你这个自己可以调试看看。有结果,可以交流下
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2018-1-18
在线时间
20 小时
发表于 2019-8-30 09:32:29 | 显示全部楼层
非常好用,支持一下
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
10
金钱
10
注册时间
2019-8-11
在线时间
2 小时
发表于 2019-9-4 17:02:57 | 显示全部楼层
楼主你的程序实际使用时采样率能达到多少?
回复 支持 反对

使用道具 举报

1

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2019-10-17
在线时间
10 小时
发表于 2019-11-7 16:56:08 | 显示全部楼层
真是解决了我一个头疼的问题,多谢啦
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
14
金钱
14
注册时间
2019-9-22
在线时间
6 小时
发表于 2019-11-15 15:45:15 来自手机 | 显示全部楼层
有没有源码啊
回复 支持 反对

使用道具 举报

2

主题

3

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2019-11-26
在线时间
3 小时
发表于 2019-11-29 10:59:08 来自手机 | 显示全部楼层
请问附件在哪里下载,没看到在哪里呢
回复 支持 反对

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14250
金钱
14250
注册时间
2018-8-3
在线时间
1146 小时
 楼主| 发表于 2019-11-29 14:42:24 | 显示全部楼层

帖子上面不是有压缩包么 下载压缩包就行了
啊哈~加油!!
回复 支持 反对

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14250
金钱
14250
注册时间
2018-8-3
在线时间
1146 小时
 楼主| 发表于 2019-11-29 14:42:57 | 显示全部楼层
chouyuanyuan 发表于 2019-11-29 10:59
请问附件在哪里下载,没看到在哪里呢

在帖子末尾 附件就有的
啊哈~加油!!
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

初级会员

Rank: 2

积分
169
金钱
169
注册时间
2018-5-30
在线时间
47 小时
发表于 2019-12-1 20:39:53 | 显示全部楼层
正在学习ADC的DMA使用,看到楼主的帖子,过来学习学习
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
3
金钱
3
注册时间
2019-11-4
在线时间
1 小时
发表于 2019-12-12 15:37:00 | 显示全部楼层
好资料,好好学习下
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
53
金钱
53
注册时间
2019-12-19
在线时间
12 小时
发表于 2019-12-20 09:51:53 | 显示全部楼层
请问一下,我在做三重ADC 各采一个通道的时候,开启DMA请求,如下:
        ADC_MultiModeDMARequestAfterLastTransferCmd(ENABLE);//多重ADC只需要这个 使能DMA请求

然后DMA数据非常多,是触发次数的40倍左右,大概什么问题啊,非常感谢!!!
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

初级会员

Rank: 2

积分
64
金钱
64
注册时间
2020-2-25
在线时间
13 小时
发表于 2020-2-26 20:06:48 | 显示全部楼层
太需要这部分的例程学习了,感恩
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2019-4-26
在线时间
8 小时
发表于 2020-3-10 11:25:02 | 显示全部楼层
好的,谢谢!
回复 支持 反对

使用道具 举报

52

主题

160

帖子

0

精华

高级会员

Rank: 4

积分
725
金钱
725
注册时间
2019-6-27
在线时间
153 小时
发表于 2020-4-22 22:43:22 | 显示全部楼层
楼主 ,  有一个错误1个通道扫描模式可以不用开,但是连续转换必须得开,你的注释错了吧
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2020-5-25
在线时间
6 小时
发表于 2020-8-9 15:52:50 | 显示全部楼层
帮顶!
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2020-6-25
在线时间
10 小时
发表于 2020-8-30 10:27:53 | 显示全部楼层
楼主怎么不考虑加个滤波
回复 支持 反对

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14250
金钱
14250
注册时间
2018-8-3
在线时间
1146 小时
 楼主| 发表于 2020-8-31 11:34:49 | 显示全部楼层
qqkl662 发表于 2020-8-30 10:27
楼主怎么不考虑加个滤波

可以试下采集多次然后取平均值
啊哈~加油!!
回复 支持 反对

使用道具 举报

281

主题

310

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3434
金钱
3434
注册时间
2017-1-13
在线时间
273 小时
发表于 2020-12-14 11:18:52 | 显示全部楼层
下载下来学习学习,谢谢分享!
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
9
金钱
9
注册时间
2019-9-21
在线时间
2 小时
发表于 2020-12-19 10:46:22 | 显示全部楼层
谢谢楼主
回复 支持 反对

使用道具 举报

1

主题

232

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3268
金钱
3268
注册时间
2015-4-19
在线时间
361 小时
发表于 2020-12-23 15:06:28 | 显示全部楼层
谢谢分享!
回复 支持 反对

使用道具 举报

1

主题

77

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
388
金钱
388
注册时间
2020-11-7
在线时间
44 小时
发表于 2021-1-2 00:23:21 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
8
金钱
8
注册时间
2021-2-23
在线时间
1 小时
发表于 2021-2-23 19:58:23 | 显示全部楼层
楼主雪中送炭啊!!!学习一下
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
8
金钱
8
注册时间
2021-2-23
在线时间
1 小时
发表于 2021-2-23 20:05:28 | 显示全部楼层
谢谢分享!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-9-23 08:17

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表