首页 论坛 原厂专区 NXP(freescale) MCU 【经验分享】KL25 16位单端ADC最高转换频率下代码效率测试及被采波形复现

发帖 回复

[资料] 【经验分享】KL25 16位单端ADC最高转换频率下代码效率测试及被采波形复现
750 查看
1 回复
 楼主 | 发布于 2020-10-14 | 只看楼主
分享到:
一,    KL25 16ADC最高转换率基本知识
  要将16ADC的转换率配置为最高,首先需要选择最高的ADC模块转换时钟频率,16ADC模块转换时钟范围可以在KL25datasheet中查看到:

1

 如果实际的Bus时钟配置为24Mhz,那么ADC转换时钟频率fADCK要达到最高,就需要bus时钟二分频,即ADCx_CFG1[ADICLK]=(0b)01
         从用户手册中可知,ADC的转换时间公式为:
   ConversionTime=SFCAdder+AverageNum*(BCT+LSTAdder+HSCAdder).
其中SFCAdder为单次或者连续采样的第一次转换时间,具体的时间可以查看如下表格:

2

AverageNum即平均数因子,由SC3[AVGE]SC3[AVGS]寄存器配置决定。可以通过如下表格查看具体情况:
 


BCT,基本转换时间,这个和选择的ADC转换位数以及单端还是差分有关,具体可以查看如下表格:


4

LSTAdder,即长采样时间,具体可以查看如下表格:


5

HSCAdder,即高速转换时间,具体可以查看如下表格:


6

如果想配置ADC16位单端的最高采样频率,则可以做如下配置:

116位单端模式,bus时钟24Mhz作为输入源
2)输入时钟二分频作为ADC的转换时钟频率fadck.
3)长采样时间禁止
4)高速采样使能
5)连续采样,平均因子选择为1.
通过如上的设置可以知道,首次单端连续采样的时间=5 ADCK cycles + 5 bus clock cycles+25 ADCK cycles +2 ADCK cycles =2.875us
其余的连续采样时间=25 ADCK cycles +2 ADCK cycles=2.25us则可以知道,以后的连续采样频率可以最高可以高达444.44khz
下面讲一下乃奎斯特采样定理:在进行模拟/数字信号的转换过程中,当采样频率大于信号中最高频率的2倍时,采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的5~10倍;
所以可以知道,实际应用中,我们能够达到的信号采样频率可以高达(44Khz~88khz)。当然,随着一个周期中采样点的减少,波形肯定会变的不是很好。


二,    KL25 16ADC最高转换率软件配置
本文通过使用CWPE里的Init_ADC模块配置,具体配置情况如下:

7

可以看到,和计算的结果一样,16ADC的连续转换时间可以达到2.25us,即转换频率可以达到444.44Khz,除了第一次转换之外。另外,ADC的引脚选择的是ADC0_SE8/TSI0_CH0/PTB0/LLWU_P5/I2C0_SCL/TPM1_CH0
然后在ADC的转换完成中断中加上如下代码:
   void ADC0_Isr(void)
    {
 
       if (( ADC0_SC1A & ADC_SC1_COCO_MASK ) == ADC_SC1_COCO_MASK)
        { 
<div style="line-height: normal; margin: 0in 0in 0pt">              if<span style="color: black; font-size: 10pt">(cnt

8.jpg (55.26 KB, 下载次数: 14)

8.jpg

9.jpg (43.03 KB, 下载次数: 10)

9.jpg


250khz
测试原波形:                                                   
  
10

测试ADC转换后的波形:

11

可见波形没有20K的时候光滑,但是波形还是能显示出来。
380khz
测试原波形:                                                   
  



测试ADC转换后的波形:
  
13

可见,测试之后的波形光滑度已经很低,这时候,ADC转换率大概是被采波形的5倍,随着采样倍数的减小,波形光滑度降低,但是基本还是能复现原波形。
 
五,    附件
给出了测试代码,感兴趣大家可以自行查看测试

本帖有更多资源,需 登录 才可以下载,没有帐号?立即 注册

(0 ) (0 )
回复 举报

回复于 2023-05-28 沙发

资料很有用
(0 )
评论 (0) 举报
  • 发表回复
    0/3000





    举报

    请选择举报类别

    • 广告垃圾
    • 违规内容
    • 恶意灌水
    • 重复发帖

    全部板块

    返回顶部