AD采样时间求教

[复制链接]
3576|12
 楼主| shangelaila 发表于 2010-7-8 11:29 | 显示全部楼层 |阅读模式
RCC_ADCCLKConfig(RCC_PCLK2_Div6);

ADC_RegularChannelConfig(ADC1, ADC_Channel_11, 1, ADC_SampleTime_55Cycles5);

请问这样设置的话,AD采样一次的时间是多少呢?
香水城 发表于 2010-7-8 11:41 | 显示全部楼层
12.5+55.5=68个ADC周期
 楼主| shangelaila 发表于 2010-7-8 12:49 | 显示全部楼层
2# 香水城
那怎么看ADC周期是多长呢?
香水城 发表于 2010-7-8 13:19 | 显示全部楼层
看看ADC_RegularChannelConfig()函数的原型说明就知道了。
 楼主| shangelaila 发表于 2010-7-8 16:28 | 显示全部楼层
2# 香水城
那好像达不到1US的采样速度啊。。。
香水城 发表于 2010-7-8 16:47 | 显示全部楼层
用楼主位的参数当然达不到1US的采样速度,1US的采样速度需要改变调用参数。
 楼主| shangelaila 发表于 2010-7-8 18:59 | 显示全部楼层
6# 香水城
那是要设置成ADC_SampleTime_1Cycles5吗?
IJK 发表于 2010-7-9 09:19 | 显示全部楼层
6# 香水城
那是要设置成ADC_SampleTime_1Cycles5吗?
shangelaila 发表于 2010-7-8 18:59


是的。并且系统时钟必须是14MHz的整数倍(系统时钟最高是14M x 4=56M),才能得到1us的采样速度
 楼主| shangelaila 发表于 2010-7-9 10:52 | 显示全部楼层
8# IJK
啊?最高不是72MHZ吗?
香水城 发表于 2010-7-9 10:58 | 显示全部楼层
CPU的最高时钟频率是72MHz,而ADC模块的最高时钟频率是14MHz。如果需要达到ADC模块的最高时钟频率,CPU的最高频率只能设置到14M x 4=56M。
 楼主| shangelaila 发表于 2010-7-9 11:02 | 显示全部楼层
10# 香水城
哦。。这样啊,那我同时又要使用到USB,系统时钟能设置成56M吗?
香水城 发表于 2010-7-9 11:11 | 显示全部楼层
10# 香水城
哦。。这样啊,那我同时又要使用到USB,系统时钟能设置成56M吗?
shangelaila 发表于 2010-7-9 11:02


不可以。

使用USB时系统时钟必须是48MHz或72MHz,此时ADC模块时钟能够得到的最高频率是48MHz / 4 = 12MHz 或 72MHz / 6 = 12MHz,即ADC的最高采样率为857K/s。
 楼主| shangelaila 发表于 2010-7-9 11:15 | 显示全部楼层
问题解决,十分感谢,结贴!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

120

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部