ADC12采样保持时间与采样频率(2011-02-15 11:49:28)
由于近期要做简易示波器,要用到高频采样,所以对MSP430内部的ADC12进行了一些实验。技术手册中说明ADC12的最高采样频率可以达到200ksps,但是经过研究发现ADC12的最高采样频率只有165KHz;采样保持时间与转换时间是不可避免的。以下为微控资料:
【采样与转换】 ADC12完成对一个模拟信号模数转换过程由两部分组成:采样保持和转换. 完成采样转换周期时间= 采样保持时间 +转换时间 采样保持时间: 由产生SAMPCON信号开始到结束所需时间,这期间ADC进行对模拟信号采样保持。在脉冲采样模式时(SHP=1),采样时间: Tsample = 4 x ADC12CLK x N。式中,Tsample为采样保持时间,ADC12CLK为ADC12内核时钟周期,N则由SHT1(SHT0)的4位二进制码决定。采样保持时间与ADC12模块的等效输入电路有关。从ADC12模块输入看ADC内部等效为一个电阻(2K)与一个电容(30pf)相串联.这个内部RC常数直接影响着最小的采样保持时间参数.所以,在采样转换中有一个最小采样保持时间值概念.这个最小采样保持时间值从上式中可以看出是由ADC12CLK时间周期决定(N=1时),也就是说ADC12CLK的最高频率;这个频率不能超出MSP430芯片手册中所指定的最高频率(最小采样保持时间值)。关于脉冲采样模式(SHP=1)这个最小采样保持时间值因芯片不同,详情可以查看相应的芯片手册。 转换时间:ADC12核将采样保持的模拟信号转换成数字所需要的时间,这个转换时间在脉冲采样模式和扩展采样模式都是相同的。 转换时间=13 x (ADC12CLK/Fadc12clk) 在脉冲采样模式时完成一个模拟信号采样转换周期时间计数公式为: = (4 x ADC12CLK x N) + ( 13 xADC12CLK/Fadc12clk)) 以上内容来自微控论坛,因为要使用最高采样频率,对输入时钟以及采样保持时间不清楚,1611头文件中并未指出SHTx_x对应的分频因子具体是多少,所以自己亲自实验测量。输入信号为1kHz,ADC输入时钟为SMCLK,时钟频率为8MHz。 #define SHT0_0 (0*0x100u)//分频因子为N=0(此时无保持时间,无法运行) #define SHT0_1 (1*0x100u)//分频因子为N=8.8(对应采样频率为166k) #define SHT0_2 (2*0x100u)//分频因子为N=8.8 (对应采样频率为166k) #define SHT0_3 (3*0x100u)//分频因子为N=9 (对应采样频率为162k) #define SHT0_4 (4*0x100u)//分频因子为N=16 (对应采样频率为104k) #define SHT0_5 (5*0x100u)//分频因子为N=24 (对应采样频率为73k) #define SHT0_6 (6*0x100u)//分频因子为N=32 (对应采样频率为57k) #define SHT0_7 (7*0x100u)//分频因子为N=48 (对应采样频率为39k) #define SHT0_8 (8*0x100u)//分频因子为N=64 (对应采样频率为30k) 可见ADC12的最高采样频率为165KHz,实验数据没有进行数据统计,内容仅供参考。 补充:SHP=1时为脉冲采样模式(pulse mode),此时采样由采样定时器的上升沿触发, Tsample = 4 x ADC12CLK x N,分频因子N决定了采样保持时间的长短。SHP=0时为扩展采样模式(extended sample ),采样由SHI信号触发,(无采样保持时间,)SAMPCON信号在高电 |
|