stm32f407基於cortex m4核心架構,具備完善的時鐘樹結構。了解時鐘樹的結構有助於程式的編寫和優化。
下列配置圖來自軟體stm32cubemx,從配置圖可以看出stm32f407所有時鐘源,包括外部輸入hse和lse,以及內部rc時鐘hsi和lsi。
對於高速時鐘,採用外部8mhz晶振作為時鐘輸入hse;經過pll的倍頻,得到系統時鐘sysclk 168mhz;sysclk經過預分頻得到hclk,hclk用於驅動ahb匯流排、記憶體、dma、核心fclk以及嘀嗒時鐘systick;apb1和apb2兩路匯流排時鐘也來自hclk,分別對應pclk1和pclk2,同時要注意的是,掛在這兩個匯流排上定時器的時鐘是匯流排時鐘的2倍。
對於低速時鐘,主要用於需要驅動rtc時鐘或者iwdg看門狗。
總結,時鐘作為嵌入式系統的心臟,是必不可少的部分。正確選擇時鐘源、配置時鐘引數,是系統正常執行,外設正常互動的前提。
STM32F407 時鐘頻率不匹配導致系統癱瘓
問題描述 因專案需求使用stm32f407系類,之前只使用過stm32f103系列,純屬小白乙隻。使用的是原子哥的例程,板子是某寶淘的,實在便宜才下手的。前期準備工作全部到位,使用j link燒寫程式,程式一燒寫進去,j link就消失了,本來led燈還在閃爍燒寫進去後就不閃了,越想越奇怪。一開始懷...
關於STM32F407時鐘MCO1的使用
我們在使用stm32f407時,有時需要對外部器件提供mhz級的時鐘訊號,這使得我們非常頭疼,如果使用定時器來實現的話,那麼mcu就不用幹別的了,怎麼辦呢?我們可以使用stm32f407的時鐘訊號輸出。其中stm32f407的時鐘系統,不再介紹,請參考stm32f407使用手冊 下面就以mco1為例...
基於stm32f407建立stm32F427工程
分為三個部分 1.啟動檔案 2.fwilib 包含兩個資料夾inc和src。src裡面是stm32資源的c檔案,inc則是32資源的h檔案 3.user這也是我不太理解的部分 ddbugconfig只包含了用於debug的初始化,則是f4的系統檔案。我是在f407的基礎上改的 總的來說 1.改了晶元...