硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1202|回复: 6
收起左侧

[有问必答] 小白请教GD32F303VCT6 ADC采集模式以及过采样问题

[复制链接]

9

主题

14

回帖

41

积分

新手上路

积分
41
发表于 2023-4-24 16:13:46 | 显示全部楼层 |阅读模式
本帖最后由 eoorosy 于 2023-4-24 16:17 编辑

小白求教,代码,工程以及芯片相关手册在附件中
问题1:使用同步并行模式使用ADC0和ADC1采集16路通道,其中C3为1.62V准确,其他引脚悬空,但当我给C4接地时,其他通道也变为0了,但是C3没变 无过采样.gif 屏幕截图 2023-04-24 160730.png



问题2:同样的配置,问题1中没有过采样,但是加入ADC0的过采样时,数据就错乱了,可以看到动图中C3的数据07DB一直在数组中挪位置

加过采样.gif
综上,是我的模式配错了吗,还是不可以这么用,求改正方法。

main.c

10.43 KB, 下载次数: 1

GD32F30x Firmware Library User Guide.pdf

12.12 MB, 下载次数: 0

GD32F303xx_Datasheet_Rev2.0.pdf

4.3 MB, 下载次数: 0

同步并行.zip

8.13 MB, 下载次数: 2

GD32F30x_User_Manual_CN_Rev2.9.pdf

25.68 MB, 下载次数: 2

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106882
QQ
发表于 2023-4-25 09:51:20 | 显示全部楼层
1、悬空现象是正常的。
2、过采样的话,你的实际采样速度是你当前采样速度 * 过采样倍数,你的这个实际采样速度是不是超频了
回复

使用道具 举报

9

主题

14

回帖

41

积分

新手上路

积分
41
 楼主| 发表于 2023-4-25 11:10:32 | 显示全部楼层
eric2013 发表于 2023-4-25 09:51
1、悬空现象是正常的。
2、过采样的话,你的实际采样速度是你当前采样速度 * 过采样倍数,你的这个实际采 ...


第2条,ADC工作频率20Mhz本身没有超频,实际采样速度超频是什么意思,配置为连续扫描模式,是说一直采样,采样速度过慢,通道转换速度太快,导致DMA读出数据时出错了吗?但是应该是采样结束后才开始转换吧,不应该冲突

第2个问题是动图中有个07DB的数据,数据是对的,应该被存放在adc_value[5]中,但是加入过采样后,它出现adc_value[4],adc_value[6],adc_value[7]中了,是什么导致数据写入数组时错位了呢
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106882
QQ
发表于 2023-4-25 15:19:17 | 显示全部楼层
eoorosy 发表于 2023-4-25 11:10
第2条,ADC工作频率20Mhz本身没有超频,实际采样速度超频是什么意思,配置为连续扫描模式,是说 ...

不是工作频率,是使能过采样后,ADC的最高采样率别超了。
回复

使用道具 举报

9

主题

14

回帖

41

积分

新手上路

积分
41
 楼主| 发表于 2023-4-25 17:17:09 | 显示全部楼层
eric2013 发表于 2023-4-25 15:19
不是工作频率,是使能过采样后,ADC的最高采样率别超了。

再叨扰一下大佬,我还是不太明白,
按照我原来的认知,比如我的CK_ADC=30MHZ,采样时间为 1.5 个周期,那么一个通道总的转换时间为:“1.5+12.5”个 CK_ADC周期,即 0.467us,那么采样率应该是1/0.467us=2.14 MSPS吧。使能过采样之后,比如16倍,相当于将一个通道采样16次,那时间就是0.467us*16倍,按我的理解是过采样的倍数越高,输出的数据速率越低,按照官方的拓扑图,过采样模块在ADC采样后面,并不会影响前面的模块,所以不存在超频的说法。
emmmm,我的理解是哪里出错了,请大佬指正。



过采样.png
回复

使用道具 举报

9

主题

14

回帖

41

积分

新手上路

积分
41
 楼主| 发表于 2023-4-26 14:12:33 | 显示全部楼层
eric2013 发表于 2023-4-25 15:19
不是工作频率,是使能过采样后,ADC的最高采样率别超了。

又测试了一下,未使能过采样时,测试一路时间大约需要0.6us,使能过采样4倍,转换需要完成大约需要2.7us,所以过采样到底是提高单位时间内的采样次数,还是拉长采样时间呀,求大佬解惑。
正常.jpg
4倍过采样.jpg
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106882
QQ
发表于 2023-4-26 17:42:11 | 显示全部楼层
eoorosy 发表于 2023-4-26 14:12
又测试了一下,未使能过采样时,测试一路时间大约需要0.6us,使能过采样4倍,转换需要完成大约需要2.7us ...

明白了,你这个没用定时器触发方式,全程ADC时钟设置使用的。
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-9 04:30 , Processed in 0.175791 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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