打印

STM32 AD 的采样时间 与转换时间?

[复制链接]
21054|26
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yinguangwei|  楼主 | 2010-12-28 09:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 yinguangwei 于 2010-12-28 10:03 编辑

”ADC的采样时间 应该大于 AD 的转换时间“  这句话没有错吗?
STM32 的ADC 每个通道的 采样时间可以通过采用时间寄存器ADC_SMPR1和 ADC_SMPR2设置 1.5,7.5,.....,239.5 这几个固定的采样时间值;

问题是: 假如采样时间选择为1.5 时钟周期; ADC时钟设置为14MHz;

那 单纯的转换时间是多少呢?

TCONV = 采样时间+ 12.5个周期   

这个公式中,TCONV  是总的转换时间(包括了采样时间);

那12.5 是什么? 是单纯的转换时间吗?

如果是这样,采样时间久小于转换时间了,是不是与最开始那句话矛盾了吗 ?


根据这个公式,只要采样时间选择>12.5 的才保证采样时间>转换时间,那1.5,7.5还有什么意义呢?
沙发
IJK| | 2010-12-28 10:52 | 只看该作者
”ADC的采样时间 应该大于 AD 的转换时间“  这句话没有错吗?
STM32 的ADC 每个通道的 采样时间可以通过采用时间寄存器ADC_SMPR1和 ADC_SMPR2设置 1.5,7.5,.....,239.5 这几个固定的采样时间值;

问题是: 假如 ...
yinguangwei 发表于 2010-12-28 09:59


”ADC的采样时间 应该大于 AD 的转换时间“  这句话 是不对的。

另外,12.5 是单纯的转换时间

使用特权

评论回复
板凳
scbzhzx| | 2010-12-28 10:55 | 只看该作者
好东西!

使用特权

评论回复
地板
香水城| | 2010-12-28 21:41 | 只看该作者
LZ在哪里抄来的这句话?没有上下文,谁知道对不对?

使用特权

评论回复
5
yinguangwei|  楼主 | 2010-12-29 11:22 | 只看该作者
本帖最后由 yinguangwei 于 2010-12-29 12:06 编辑

2# IJK

假设 ADC 采样时间为 1.5 us , AD的转换时间为 12.5us ;(只是一个假设),

这样的话,每1.5us  就采样得到一个信号,但是需要12.5us的时间转换,这样转换不是来不及吗 ?

是不是用 采样保持器,让前一个信号转换结束后,才开始下一个转换?

使用特权

评论回复
6
yinguangwei|  楼主 | 2010-12-29 12:09 | 只看该作者
4# 香水城
请教城主: 这句话是不是才没有采样保持器的情况下,是对的呀 ?

STM32 AD内部有采样保持吧?


假如: 采集20HZ 的信号,设置ADC的时钟 14MHz,采样时间设置为1.5,;单纯的转换
时间 12.5us ; 这样是够合适呢?

此时的采样频率=(14*1000 000)/1.5  远大于 20Hz, 而采样定理要求采样频率大于信号最高频率的2倍即可, 这样远大于2倍的采样速率是否合适?

使用特权

评论回复
7
IJK| | 2010-12-29 14:05 | 只看该作者
STM32的AD有 采样保持

使用特权

评论回复
8
香水城| | 2010-12-30 09:27 | 只看该作者
4# 香水城
请教城主: 这句话是不是才没有采样保持器的情况下,是对的呀 ?

STM32 AD内部有采样保持吧?


假如: 采集20HZ 的信号,设置ADC的时钟 14MHz,采样时间设置为1.5,;单纯的转换
时间 12.5us ; 这样 ...
yinguangwei 发表于 2010-12-29 12:09


请你把上下文一起抄出来,或指出手册中的页码和段落编号。

使用特权

评论回复
9
yinguangwei|  楼主 | 2011-1-1 14:11 | 只看该作者
本帖最后由 yinguangwei 于 2011-1-1 14:14 编辑

8# 香水城
可能我描述的不清楚; 那就话是我理解的:

一般情况下,为了保证采样的信号都能得到转换,采样时间应大于转换的时间,比如转换时间为1us,那么每隔>1us 的时间采样一个信号是可以的;     如果每0.5us就采样1个信号,这样转换不完全吧?

使用特权

评论回复
10
香水城| | 2011-1-1 21:52 | 只看该作者
按照LS说法,似乎楼主位引号引起来的那段话是LZ自己说的;我无法评价你说的对不对,因为这种说法很奇怪。实际情况是:TCONV=采样时间+转换时间,其中转换时间是固定的=12.5个时钟周期。

使用特权

评论回复
11
xwj| | 2011-1-1 22:06 | 只看该作者
LZ,没那个说法。

STM标的采样时间就是单纯的采样保持器的信号提取时间,然后在接着是转换这个提取到的信号。
一个ADC周期实际上是采样时间+转换时间,即一次转换最快也需要14个周期(1.5+12.5),而ADC时钟最快可以是14MHz,即stm32的ADC最高采样频率是1M,1uS可以采集到一次数据

使用特权

评论回复
12
yinguangwei|  楼主 | 2011-1-7 13:59 | 只看该作者
11# xwj
如果12.5 是真正的转换时间,那么采样保持选择1.5 时,AD转换来得及吗?

使用特权

评论回复
13
yinguangwei|  楼主 | 2011-1-7 14:03 | 只看该作者
10# 香水城
城主,这个公司理解了,就是一点:如果12.5 是真正的转换时间,那么采样保持选择1.5 时,AD转换来得及吗?

使用特权

评论回复
14
香水城| | 2011-1-7 14:04 | 只看该作者
所谓“AD转换来得及吗?”是相对什么而言?

使用特权

评论回复
15
bili| | 2011-1-7 14:57 | 只看该作者
是否来得及要看信号的输入阻抗是否满足要求

使用特权

评论回复
16
yinguangwei|  楼主 | 2011-1-9 21:14 | 只看该作者
本帖最后由 yinguangwei 于 2011-1-9 21:15 编辑

14# 香水城
就是每1.5个周期就采样得到1个点,然后用12.5个周期完成这个点的转换。   相对什么而言什么意思呀?

使用特权

评论回复
17
香水城| | 2011-1-10 08:26 | 只看该作者
你的问题很奇怪:“如果12.5 是真正的转换时间,那么采样保持选择1.5 时,AD转换来得及吗?”

1.5个周期采样,12.5个周期进行转换,芯片就是按照这个规格设计的,你却要问AD转换来得及吗?  我认为你这个问题问得很奇怪,不知道你是指什么;除非你认为ST的手册把规格写错了,或设计师是傻瓜。

使用特权

评论回复
18
yinguangwei|  楼主 | 2011-1-10 13:44 | 只看该作者
17# 香水城
”1.5个周期采样,12.5个周期进行转换,芯片就是按照这个规格设计的“


终于明白了,自己被搞糊涂了,这是芯片设计的规格,谢谢城主!
还有一个问题请教: 如果一个信号20Hz,怎么根据 stm32 的AD特性选择采样频率呢 ?


我这样想的:假如1个信号的频率最大50Hz,则其周期20ms; 设一个周期内采样1000个点,
则 采样时间=20ms/1000 = 20us ;  即:(1/fADC)*t = 20us ;  此时的t为 ADC的那几个固定的采样时间值;
假如:取t=239.5 ;则得出 fADC 约等于12MHz, 将PCLK2(72MHz)6分频后就可以得到了AD的时钟;
这个过程没有错吧 ?

使用特权

评论回复
19
huang_4115| | 2012-12-2 14:22 | 只看该作者

使用特权

评论回复
20
dami| | 2012-12-2 17:13 | 只看该作者
转换(转换时间过了)好了才可以采样,否则采样的是错的。就乱套了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:I have no choice but go ahead!

10

主题

101

帖子

1

粉丝