標(biāo)題: STM32 ADC采樣周期的確定方法 [打印本頁]

作者: 小伙子灬    時(shí)間: 2021-5-18 15:34
標(biāo)題: STM32 ADC采樣周期的確定方法
STM32 的 ADC 的采樣周期確定
采樣頻率的確定

    1.首先確定 ADC 的時(shí)鐘,這里需要看你的 RCC 的設(shè)置。在采用固
件庫的基礎(chǔ)上,設(shè)定 ADC 的采樣頻率相對(duì)來說是很容易的。

    (1)由時(shí)鐘控制器提供的 ADCCLK 時(shí)鐘和 PCLK2(APB2 時(shí)鐘)
同步。CLK 控制器為 ADC 時(shí)鐘提供一個(gè)專用的可編程預(yù)分頻器。

   。2) 一般情況下在程序 中將 PCLK2 時(shí)鐘設(shè)為 與系統(tǒng)時(shí)鐘 相同

    RCC_HCLKConfig(RCC_SYSCLK_Div1);
    RCC_PCLK2Config(RCC_HCLK_Div1);
    RCC_PCLK1Config(RCC_HCLK_Div2);

   。3)采樣時(shí)間和轉(zhuǎn)換時(shí)間

    ADC 使用若干個(gè) ADC_CLK 周期對(duì)輸入電壓采樣,采樣周期數(shù)目可以通過

    ADC_SMPR1 和 ADC_SMPR2 寄存器中的 SMP[2:0]位而更改。每個(gè)通道可以以不同的時(shí)間采樣。


    總轉(zhuǎn)換時(shí)間如下計(jì)算:
    TCONV = 采樣時(shí)間+ 12.5 個(gè)周期

    例如:

    當(dāng) ADCCLK=36MHz 和 239.5 周期的采樣時(shí)間
    TCONV = 239.5 + 12.5 = 252 周期 = 7μs
    若你采樣的是 1KHz 的正弦波信號(hào),采樣了 10000 個(gè)點(diǎn),則其中就有
70 個(gè)周期。

    STM32 ADC 采樣頻率的確定

    1. :先看一些資料,確定一下 ADC 的 時(shí)鐘:

    (1)、由時(shí)鐘控制器提供的 ADCCLK 時(shí)鐘和 PCLK2(APB2 時(shí)鐘)同步。CLK 控制器為 ADC 時(shí)鐘提供一個(gè)專用的可編程預(yù)分頻器。

   。2)、一般情況下在程序 中將 PCLK2 時(shí)鐘設(shè)為 與系統(tǒng)時(shí)鐘 相同

    RCC_HCLKConfig(RCC_SYSCLK_Div1);
    RCC_PCLK2Config(RCC_HCLK_Div1);
    RCC_PCLK1Config(RCC_HCLK_Div2);
    (3)在時(shí)鐘配置寄存器(RCC_CFGR) 中 有 為 ADC 時(shí)鐘提供一個(gè)專用的可編程預(yù)分器
    位 15:14 ADCPRE:ADC 預(yù)分頻由軟件設(shè)置來確定 ADC 時(shí)鐘頻率
    00:PCLK2 2 分頻后作為 ADC 時(shí)鐘
    01:PCLK2 4 分頻后作為 ADC 時(shí)鐘
    10:PCLK2 6 分頻后作為 ADC 時(shí)鐘
    11:PCLK2 8 分頻后作為 ADC 時(shí)鐘

    我們可對(duì)其進(jìn)行設(shè)置 例如:

    RCC_ADCCLKConfig(RCC_PCLK2_Div4);


    另外還有 ADC 時(shí)鐘使能設(shè)置


    RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 |
RCC_APB2Periph_ADC2 |


    RCC_APB2Periph_GPIOC, ENABLE);








歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1