日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]上次了解了STM32F4時(shí)鐘系統(tǒng)中PLL的基本狀況, 現(xiàn)在我打算自已動(dòng)手配置一下STM32的時(shí)鐘, 使用PLL將STM32F429的主頻倍到168MHz去, Let’s go.名詞注解:RCC: Reset Clock Config, 復(fù)位時(shí)鐘配置.下面直接上代碼, 但有有一

上次了解了STM32F4時(shí)鐘系統(tǒng)中PLL的基本狀況, 現(xiàn)在我打算自已動(dòng)手配置一下STM32的時(shí)鐘, 使用PLL將STM32F429的主頻倍到168MHz去, Let’s go.

名詞注解:
RCC: Reset Clock Config, 復(fù)位時(shí)鐘配置.

下面直接上代碼, 但有有一點(diǎn)要注意:在使能PLL之前PLL所有的參數(shù)都要配置完畢, 等PLL使能后PLL是不可以再進(jìn)行配置的.

代碼:

void RCC_Config(void)

{

ErrorStatus status = ERROR;

// 復(fù)位RCC寄存器

RCC_DeInit();

// 打開(kāi)外部高速晶振

RCC_HSEConfig(RCC_HSE_ON);

// 等待高速晶振穩(wěn)定

status = RCC_WaitForHSEStartUp();

if (status == SUCCESS)

{

// 使能flash緩存預(yù)讀取

FLASH_PrefetchBufferCmd(ENABLE);

// 在STM32F42xxx和STM32F43xxx中, 這個(gè)值與電壓和主頻都有關(guān)系.

// 當(dāng)電壓在2.7-3.6V, 150 < HCLK <= 180MHz時(shí), 為5個(gè)WS

FLASH_SetLatency(FLASH_Latency_5);

// 配置PLL, SYSCLK = 168MHz

RCC_PLLConfig(RCC_PLLSource_HSE, 2, 84, 2, 7);

// 使能PLL

RCC_PLLCmd(ENABLE);

// 等待PLL穩(wěn)定

while (RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);

// 設(shè)置PLL為系統(tǒng)時(shí)鐘

RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);

// 等待PLL被用于系統(tǒng)時(shí)鐘

while (RCC_GetSYSCLKSource() != 0x08);

}

else

{

// HSE啟動(dòng)失敗, 死循環(huán)

while (1);

}

return;

}

使用以上代碼就可以使用PLL將主頻倍到168MHz去了, RCC_PLLConfig(RCC_PLLSource_HSE, 2, 84, 2, 7)這個(gè)函數(shù)中的參數(shù)怎么計(jì)算可以參照上一節(jié), 在這里不再多說(shuō).
接下來(lái)就是相應(yīng)外設(shè)時(shí)鐘的配置, 建議在相應(yīng)的外設(shè)初始化中配置即可. 不同的外設(shè)屬于不同的總線, 在使用外設(shè)前記得配置對(duì)應(yīng)的時(shí)鐘.
在RCC初始化中調(diào)用了兩個(gè)FLASH相關(guān)的函數(shù), 這里說(shuō)一下是怎么回事.

ARM的大部分指令可以在一個(gè)時(shí)鐘周期中執(zhí)行完成, 當(dāng)CPU主頻為168MHz時(shí), 指令周期大約為6us, 但是Flash的讀取時(shí)間大約為35us, 這樣就帶來(lái)一個(gè)矛盾, CPU執(zhí)行速度太快, 指令來(lái)不及從Flash讀取. 為了使CPU能全速運(yùn)行, Flash控制器使用了一個(gè)128位的指令預(yù)讀緩沖器, 可存儲(chǔ)4條32位指令或者8條16位指令. FLASH_PrefetchBufferCmd(ENABLE)指令用來(lái)使能這個(gè)緩存區(qū),需要注意的是當(dāng)電壓低于2.1V時(shí)緩存區(qū)必須禁用掉(RM0090 P80). FLASH_SetLatency(FLASH_Latency_5)設(shè)置Flash預(yù)讀緩存所需要的等待狀態(tài), 這個(gè)值與CPU的主頻和電壓均有關(guān)系, 具體可以參考數(shù)據(jù)手冊(cè), 對(duì)于STM32F42xxx和STM32F43xxx, 主頻在150M到180M之間時(shí), 需要5個(gè)等待狀態(tài)(Wait states), 為6個(gè)CPU周期.


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

在嵌入式開(kāi)發(fā)中,STM32的時(shí)鐘系統(tǒng)因其靈活性和復(fù)雜性成為開(kāi)發(fā)者關(guān)注的焦點(diǎn)。然而,看似簡(jiǎn)單的時(shí)鐘配置背后,隱藏著諸多易被忽視的陷阱,輕則導(dǎo)致系統(tǒng)不穩(wěn)定,重則引發(fā)硬件損壞。本文從時(shí)鐘源選擇、PLL配置、總線時(shí)鐘分配等關(guān)鍵環(huán)...

關(guān)鍵字: STM32 時(shí)鐘系統(tǒng)

好,有了CPU、存儲(chǔ)器、總線以及外設(shè),我們把它們有機(jī)地組合封裝在一起,再把各個(gè)外設(shè)、總線的信號(hào),以及供電和地通過(guò)引腳引出來(lái),這就是一片完整的單片機(jī)芯片。等等,要讓單片機(jī)跑起來(lái)似乎還少了些什么?對(duì),還有時(shí)鐘!

關(guān)鍵字: 時(shí)鐘系統(tǒng) 單片機(jī) CPU

基于ARM? Cortex?-M4的STM32F4 MCU系列采用了意法半導(dǎo)體的NVM工藝和ART Accelerator?,在高達(dá)180 MHz的工作頻率下通過(guò)閃存執(zhí)行時(shí)其處理性能達(dá)到225 DMIPS/608 Cor...

關(guān)鍵字: stm32f4 ARM

stm32f4和f1都有哪些區(qū)別?除了需要的頭文件不一樣,管腳配置什么的有區(qū)別么?

關(guān)鍵字: stm32f4 f1 比較

STM32F407VET6引腳圖及中文資料

關(guān)鍵字: stm32f4 引腳圖

比較F1的片子對(duì)于F4的RTC來(lái)說(shuō)有很大提升,F(xiàn)4的RTC提供了日歷時(shí)鐘和兩個(gè)可編程鬧鐘中斷,一個(gè)周期性可編程喚醒標(biāo)志。這樣很方便設(shè)置系統(tǒng)時(shí)間,并不會(huì)像F1的RTC那樣要自己計(jì)算年月日時(shí)分秒。F4的RTC是一個(gè)獨(dú)立的BC...

關(guān)鍵字: rtc stm32f4

【實(shí)驗(yàn)?zāi)康摹枯敵?路占空比不同的PWM信號(hào)是各個(gè)版本ST庫(kù)必備的例子。本實(shí)驗(yàn)的主要目的不是表現(xiàn)ST芯片PWM功能的強(qiáng)大,而是要完成輸出的精確計(jì)算?!緦?shí)驗(yàn)內(nèi)容】輸出7路PWM信號(hào),并用示波器測(cè)量輸出?!緦?shí)驗(yàn)原理】1、時(shí)

關(guān)鍵字: pwm stm32f4 tim1 信號(hào)輸出

STM32F4的隨機(jī)數(shù)發(fā)生器RNG,以環(huán)境噪聲為種子,產(chǎn)生32位隨機(jī)數(shù)供主機(jī)使用?!局饕匦浴?、產(chǎn)生32位隨機(jī)數(shù) 2、兩次轉(zhuǎn)換時(shí)間間隔40PLL48CLK 3、隨機(jī)數(shù)熵檢測(cè)以發(fā)現(xiàn)不正常位,以產(chǎn)生穩(wěn)定序列 3、可被關(guān)閉以...

關(guān)鍵字: stm32f4 隨機(jī)數(shù)發(fā)生器

書(shū)接上文,開(kāi)始折騰ADC的DMA傳輸。因?yàn)榇蠹叶荚谡f(shuō)DMA,就連ST的例子里邊也是使用DMA的。 ADC采集到的數(shù)據(jù)都存儲(chǔ)在一個(gè)固定的寄存器中。當(dāng)常規(guī)采樣方式采樣多個(gè)通道時(shí)候,使用DMA可以較好地避免將采集到的數(shù)據(jù)...

關(guān)鍵字: adc dma stm32f4 數(shù)據(jù)傳輸 采集數(shù)據(jù)

為了提搞系統(tǒng)的可靠性,STM32F4系列MCU有一個(gè)獨(dú)立看門(mén)狗(IWDG)和一個(gè)窗口看門(mén)狗(WWDG)。今天做的實(shí)驗(yàn)是關(guān)于獨(dú)立看門(mén)狗的。獨(dú)立看門(mén)狗使用的時(shí)鐘源是內(nèi)部低速振蕩器LSI。因?yàn)長(zhǎng)SE可能沒(méi)接,HSE可能壞點(diǎn),H...

關(guān)鍵字: iwdg stm32f4 獨(dú)立看門(mén)狗
關(guān)閉