日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

STM32 ADC 采样 频率的确定

發布時間:2024/8/26 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 STM32 ADC 采样 频率的确定 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

STM32 ADC 采樣頻率的確定

  • 1.??????
  • 先看一些資料,確定一下ADC 的時鐘:

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

    ??? (2) 一般情況下在程序 中將 PCLK2 時鐘設為 與系統時鐘 相同

    ??? /* HCLK = SYSCLK */

    ??? RCC_HCLKConfig(RCC_SYSCLK_Div1);

    ?

    ??? /* PCLK2 = HCLK */

    ??? RCC_PCLK2Config(RCC_HCLK_Div1);

    ?

    ??? /* PCLK1 = HCLK/2 */

    RCC_PCLK1Config(RCC_HCLK_Div2);

    (3)在時鐘配置寄存器(RCC_CFGR) 中 有 為ADC 時鐘提供一個專用的可編程預分器

    ?

    15:14 ADCPREADC預分頻

    由軟件設置來確定ADC時鐘頻率

    00PCLK2 2分頻后作為ADC時鐘

    01PCLK2 4分頻后作為ADC時鐘

    10PCLK2 6分頻后作為ADC時鐘

    11PCLK2 8分頻后作為ADC時鐘

    我們可對其進行設置 例如:

    ? ??/* ADCCLK = PCLK2/4 */

    RCC_ADCCLKConfig(RCC_PCLK2_Div4);

    ?

    另外 還有 ADC 時鐘使能設置

    /* Enable ADC1, ADC2 and GPIOC clock */

    ?? ?RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 | RCC_APB2Periph_ADC2 |

    ???????????????????????? RCC_APB2Periph_GPIOC, ENABLE);

    ?

    ? ??

    ??? (4)16.7 可編程的通道采樣時間

    ADC 使用若干個ADC_CLK 周期對輸入電壓采樣,采樣周期數目可以通過

    ADC_SMPR1 ADC_SMPR2 寄存器中的SMP[2:0]位而更改。每個通道可以以

    不同的時間采樣。

    總轉換時間如下計算:

    TCONV = 采樣時間+ 12.5 個周期

    例如:

    ADCCLK=14MHz 1.5 周期的采樣時間

    TCONV = 1.5 + 12.5 = 14 周期 = 1μs

    ?

    ?

    SMPx[2:0]:選擇通道x的采樣時間

    這些位用于獨立地選擇每個通道的采樣時間。在采樣周期中通道選擇位必須保持不變。

    0001.5周期 10041.5周期

    0017.5周期 10155.5周期

    01013.5周期 11071.5周期

    01128.5周期 111239.5周期

    注:

    – ADC1的模擬輸入通道16和通道17在芯片內部分別連到了溫度傳感器和VREFINT。

    – ADC2的模擬輸入通道16和通道17在芯片內部連到了VSS。

    ?

  • 具體分析如下:
  • ?

    (1)我們的輸入信號是50Hz (周期為20ms),初步定為1周期200個采樣點,(注:一周期最少采20個點,即采樣率最少為1k) ,每2個 采樣點間隔為 20ms /200 = 100 us

    ADC可編程的通道采樣時間 我們選最小的 1.5 周期,則 ADC采樣周期一周期大小為

    100us /1.5=66us 。 ADC 時鐘頻率為 1/66us =15 KHz。

    ??ADC可編程的通道采樣時間 我們選71.5 周期,則 ADC采樣周期一周期大小為

    (100us /71.5) 。 ADC 時鐘頻率為 7.15MHz。

    ?

    (2)接下來我們要確定系統時鐘:我們 用的是 8M Hz 的外部晶振做時鐘源(HSE),估計得 經過 PLL倍頻 PLL 倍頻系數分別為2的整數倍,最大72 MHz。為了 提高數據 計算效率,我們把系統時鐘定為72MHz,(PLL 9倍頻)。則 PCLK2=72MHz,PCLK1=36MHz;

    ?

    我們通過設置時鐘配置寄存器(RCC_CFGR) 中 有 為ADC 時鐘提供一個專用的可編程預分器,將PCLK2 8 分頻后作為ADC 的時鐘,則可知ADC 時鐘頻率為 9MHz

    ??????? 從手冊可知: ADC 轉換時間:

    STM32F103xx 增強型產品:ADC 時鐘為56MHz 時為1μs(ADC 時鐘為72MHz 1.17μs)

    ?(3)由以上分析可知:不太對應,我們重新對以上中 內容調整,提出如下兩套方案:

    ?

    方案一:我們的輸入信號是50Hz (周期為20ms),初步定為1周期2500個采樣點,(注:一周期最少采20個點,即采樣率最少為1k) ,每2個 采樣點間隔為 20ms /2500 = 8 us

    ADC可編程的通道采樣時間 我們選71.5 周期,則 ADC采樣周期一周期大小為

    8us /71.5 。 ADC 時鐘頻率約為 9 MHz。

    將PCLK2 8 分頻后作為ADC 的時鐘,則可知ADC 時鐘頻率為 9MHz

    ?

    方案二:我們的輸入信號是50Hz (周期為20ms),初步定為1周期1000個采樣點,(注:一周期最少采20個點,即采樣率最少為1k) ,每2個 采樣點間隔為 20ms /1000= 20 us

    ADC可編程的通道采樣時間 我們選239.5周期,則 ADC采樣周期一周期大小為

    20us /239.5 。 ADC 時鐘頻率約為 12 MHz。

    將PCLK2 6 分頻后作為ADC 的時鐘,則可知ADC 時鐘頻率為 12MHz

    轉載于:https://www.cnblogs.com/zym0805/p/7149392.html

    總結

    以上是生活随笔為你收集整理的STM32 ADC 采样 频率的确定的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。