你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

ADC的时钟频率

[复制链接]
阿松松 提问时间:2015-1-6 13:24 /
想请教一个STM32的AD问题:如何确定ADC的时钟频率(信号的采用频率)?


首先:STM32手册给出的 t=1.5,7.5,...239.5 是采样保持的时间,对吧,再加上12.5个周期的纯转换时间,这样stm32的总转换时间TCONV即为二者之和;

比如:一个信号20HZ的信号,最高频率为50HZ;用STM32的AD采样;我的思路是这样:

根据采样定理:采样频率 fs>=2fmax =100HZ; 取STM32的AD采样频率为200HZ ;


这样 采样时间=(1/200)s;(即间隔多长时间取样并转换一个数据)
而 TCONV = (t+12.5)*T  = (t+12.5)/ fAD  (t为1.5,7.5等,fAD为AD时钟);

这样就得到:1/200 = (t+12.5)/fAD ,
所以: fAD=(t+12.5)*200 , 根据t最大为239.5,这样fAD最大为50400HZ;

不符合STM32手册中给出的AD特性的时钟范围(0.6MHz-14MHZ);

这个推理过程没有问题吧,为什么会出现上面的问题呢?       希望能得到指教。



而且我实际设置的时候,根据sysclk 168MHz,Hclk 168MHz, Pclk2 84Mhz,Pclk1 42MHz
ADC时钟设置的ADC_Divider 为2,这样得出来的


ADC_Clk为42MHz,要比官方宣称的大很多,这样实际采样的时候也没问题,


额,我就醉了,该怎么解释?
收藏 评论16 发布时间:2015-1-6 13:24

举报

16个回答
ataudio 回答时间:2015-1-8 14:46:56
按道理说,手册首页介绍的指标基本是标准功能。F407的手册说明3通道2.4MHz,三通道交替采样模式可以实现最高7.2MHz的采样,那我就理解为2.4MHz应该是单通道的稳定属性。因此我的应用中,默认当它是2.4MHz的应用。
但是,由此,我推算不出fADC是多少!

前面那位兄弟介绍了AN3116,我查到一句话,“对于一个 ADC,唯一的配置为 fADC = 14 MHZ (page11)”,这个配置下,采样率只有1MHz,这句话显然又不对了。
adc.PNG
adc-conv.PNG
而手册上最高的fADC是0.6~36MHz,同样有一个疑惑的说明,表中fADC=30MHz时,采样率是2MHz,对应计算的Ts是2.5,也就是@阿松松 你说的延迟时间比1.5增加了,高fADC导致延迟时间或者转换时间增加,这点应该没有疑问。但是407该配置的延迟时间不包括2.5这个值。

上述的内容感觉互有矛盾,因此才让人觉得凌乱。到目前为止,如果以datasheet为准,也有疑惑的地方。这是要命的地方。。

另外,AN3116可能更多是基于F1的文档。并不包括F4的407等.
如果有高人,能给个准确的说明,或者有方法明确测试出采样到的信号采样率,那么请不吝赐教。
阿松松 回答时间:2015-1-8 13:36:43
ataudio 发表于 2015-1-8 13:07
按照上面的公式,F407的fADC设为30MHz,如果F为手册上说的2.4M,则T为12.5,Ts居然为0。
如果Ts为1 ...

凌乱了。
理一下思路,我们总共有3个时间,1/(采样保持时间+转换时间+延时时间)=采样频率,这个和Fadc频率没啥关系。

采样Fadc只是采样时要参考的时钟,Fadc太大的话,可能会有其他的问题而不是我们想的那种问题,因为任何器件时钟频率一高,抖动啊,等等不好的因素全部显露出来了。

你的Fadc频率高,只会影响到时钟信号的质量,采样保持时间这个因素是要自己规定的,因为我们要在采样速度和采样精度之间权衡。
当你的采样频率太高的时候,为了维持你规定的采样时间,采样、转换、延时时钟周期数肯定要增加的吧。所以,就会有Facd和采样保持周期数两边的一个权衡,即Fadc如果很大的话,采样保持周期数必须加大,不然保持时间不够,采样不准确。

手册上的理论速度应该是纯粹的不考虑延时(即转换之后立刻开始下一次采样)。

不知道这样理解对不对
阿松松 回答时间:2015-1-8 12:59:10
ataudio 发表于 2015-1-7 00:21
这个公式可要记住了。哈哈。很好很好。回头验算一下。

另外,427的话,有如下:你看,Fpckl2的话,84MHz是完全没问题的吧,ADC挂载APB2上,最小的分频系数是2,那岂不是就能42MHz了?

fclk2.jpg

下图的这个0.6-36MHz是不是又是矛盾了呢?
fadc.jpg


额,你才是高手,你讲的下面这个,
数据手册的fADC是0.6~30MHz的,最大是36MHz


是不是最好是0.6-30MHz,但是理论上36MHz也可以。那映射到427上的话,理论PCLK2二分频的理论数据可以高达50MHz,是不是说,理论上427的ADC可以跑到这么高的频率?

但是采样总得需要时间吧,采样时间太长跟不上ADC时钟频率的话,就算时钟频率再高也是白费吧?
所以高的ADC时钟频率,就得更多ADC时钟周期来满足采样时间的需求,而且加上转换时间的话,可能还要加上延时吧?


这种理解对吗?

Dylan疾风闪电 回答时间:2015-1-7 00:04:06
T【TotalRate 】= Ts + Tconv = t【TotalRate】 X fADC = fADC/F【sRate】。
详见应用手册AN3116。
ataudio 回答时间:2015-1-7 00:21:39
这个公式可要记住了。哈哈。很好很好。回头验算一下。
拼命三郎 回答时间:2015-1-7 08:12:52
哈哈 学习了,有空看看
阿松松 回答时间:2015-1-8 12:50:51
ataudio 发表于 2015-1-7 00:21
这个公式可要记住了。哈哈。很好很好。回头验算一下。

0.6-14MHz应该是10系列的吧,因为这个系列我没用过,也没查,只是很多资料上写的都是这个,拿来做参考
ataudio 回答时间:2015-1-8 13:07:29
阿松松 发表于 2015-1-8 12:50
0.6-14MHz应该是10系列的吧,因为这个系列我没用过,也没查,只是很多资料上写的都是这个,拿来做参考 ...

按照上面的公式,F407的fADC设为30MHz,如果F为手册上说的2.4M,则T为12.5,Ts居然为0
如果Ts为1.5,fADC保持30MHz,F则是2.14M;
F2.4M,Ts是1.5,fADC必须是33.6MHz。
虽说手册上说fADC最大可导36M,但是默认配置主频144000000的F407,单通道F407究竟采用了多大的fADC和采样率?难道不是2.4MHz(SPS)吗?

我又凌乱了。。。
LH90 回答时间:2015-1-8 13:57:05
学习学习
阿松松 回答时间:2015-1-8 14:07:51

求拍砖,讨论下,我也晕
ataudio 回答时间:2015-1-8 14:53:49
附上407数据手册和AN3116-ADC模式和应用。

F407手册和AN3116.rar

下载

2.32 MB, 下载次数: 4, 下载积分: ST金币 -1

ataudio 回答时间:2015-1-9 09:46:37
希望继续讨论下去,有明确的说法。
阿松松 回答时间:2015-1-9 14:58:09
ataudio 发表于 2015-1-9 09:46
希望继续讨论下去,有明确的说法。

嗯,你说的那些我还得琢磨琢磨,我也希望有大神出来指点下,有人指点的话可能会更好
阿美好勇敢 回答时间:2018-12-3 10:36:19
这个得分清STM32的系列,F10的最大频率为14M,但是F40系列的最大可以到达36M(数据手册可以查),
36M/(3 + 12) = 2.4M/s  ,如果用三重ADC交替采样,可以达到 3*2.4 = 7.2M/s。但是ADC工作频率可以工作在42M下,这也是我的疑问?如果我配置ADC的工作频率为42M,ADC是以42M为工作频率,还是以最大的限值36M呢?
12下一页

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版