新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > CLK控制器為ADC時鐘提供專用可編程預(yù)分頻器解析方案

CLK控制器為ADC時鐘提供專用可編程預(yù)分頻器解析方案

作者: 時間:2016-10-18 來源:網(wǎng)絡(luò) 收藏

一 STM32 采樣 頻率的確定

本文引用地址:http://2s4d.com/article/201610/308612.htm

先看一些資料,確定一下STM32 的時鐘:

(1),由時鐘提供的 時鐘和P2(APB2 時鐘)同步。 為ADC 時鐘提供一個專用的預(yù)分頻器。

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

RCC_HCLKConfig(RCC_SYSCLK_Div1);

RCC_PCLK2Config(RCC_HCLK_Div1);

RCC_PCLK1Config(RCC_HCLK_Div2);

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

位15:14 ADCPRE:ADC預(yù)分頻

由軟件設(shè)置來確定ADC時鐘頻率

00:PCLK2 2分頻后作為ADC時鐘

01:PCLK2 4分頻后作為ADC時鐘

10:PCLK2 6分頻后作為ADC時鐘

11:PCLK2 8分頻后作為ADC時鐘

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

RCC_ADCCLKConfig(RCC_PCLK2_Div4);

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

RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 | RCC_APB2Periph_ADC2 |

RCC_APB2Periph_GPIOC, ENABLE);

(4)16.7 的通道采樣時間

ADC 使用若干個ADC_CLK 周期對輸入電壓采樣,采樣周期數(shù)目可以通過ADC_SMPR1 和ADC_SMPR2 寄存器中的SMP[2:0]位而更改。每個通道可以以不同的時間采樣。

總轉(zhuǎn)換時間如下 計算:

TCONV = 采樣時間+ 12.5 個周期

例如:

當(dāng)ADCCLK=14MHz 和1.5 周期的采樣時間

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

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

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

000:1.5周期 100:41.5周期

001:7.5周期 101:55.5周期

010:13.5周期 110:71.5周期

011:28.5周期 111:239.5周期

注:

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

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

2. 具體分析如下:

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

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

從手冊可知: ADC 轉(zhuǎn)換時間:STM32F103xx 增強型產(chǎn)品:ADC 時鐘為56MHz 時為1μs(ADC 時鐘為72MHz 為1.17μs)

(3)由以上分析可知:不太對應(yīng),我們重新對以上中 內(nèi)容調(diào)整,提出如下兩套方案:

方案一:我們的輸入信號是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



關(guān)鍵詞: CLK ADC 控制器 可編程

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉