国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

STM32CubeMX生成C代碼及時(shí)鐘樹(shù)配置(基于stm32f407)

這篇具有很好參考價(jià)值的文章主要介紹了STM32CubeMX生成C代碼及時(shí)鐘樹(shù)配置(基于stm32f407)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

STM32CubeMX初探

前言

近來(lái)對(duì)于stm32單片機(jī)編程中,HAL庫(kù)逐漸取代標(biāo)準(zhǔn)庫(kù)成為主流的庫(kù)。標(biāo)準(zhǔn)庫(kù)支持的芯片型號(hào)有限,而且目前已經(jīng)停止支持,而HAL庫(kù)支持所有類(lèi)型的芯片,可移植性也很高,再加上有神器STM32Cube可以生成工程模板,越來(lái)越多的編程開(kāi)始從使用標(biāo)準(zhǔn)庫(kù)轉(zhuǎn)到使用HAL庫(kù)。

點(diǎn)亮第一個(gè)LED

stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
新建工程后,在此處輸入所用到的芯片型號(hào),此處使用的STM32F407IGT6。
選好芯片型號(hào)進(jìn)入到配置界面后,需要依次進(jìn)行時(shí)鐘模塊配置、時(shí)鐘系統(tǒng)配置、GPIO引腳配置、Cortex內(nèi)核配置,才能生成工程源碼。

時(shí)鐘模塊配置

stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
在RCC中選擇使用外部晶振作為時(shí)鐘源,完成對(duì)時(shí)鐘模塊的配置。

時(shí)鐘系統(tǒng)配置

時(shí)鐘是單片機(jī)的脈搏,需要極其重視,在stm32Cube中進(jìn)行時(shí)鐘配置實(shí)則是針對(duì)芯片手冊(cè)中的時(shí)鐘數(shù)對(duì)各個(gè)時(shí)鐘頻率、鎖相環(huán)等進(jìn)行配置。下面對(duì)F4的四個(gè)時(shí)鐘源進(jìn)行介紹。

時(shí)鐘源 F407頻率要求
HSE(高速外部振蕩器) 4~26MHz
LSE(低速外部振蕩器) 32.768MHz
HSI(高速內(nèi)部振蕩器)- 16MHz–
LSI(低速內(nèi)部振蕩器) 32KHZ

附一張?jiān)谡c(diǎn)原子參考的時(shí)鐘樹(shù)高清圖和STM32Cube中對(duì)于時(shí)鐘的配置。二者對(duì)比參考理解更深刻。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言要進(jìn)行配置首先要理解芯片手冊(cè)中的時(shí)鐘樹(shù),對(duì)于基礎(chǔ)的應(yīng)用來(lái)說(shuō),只需要理解SYSCLK、AHB、APB1、APB2、RTC時(shí)鐘的配置即可。
對(duì)于芯片手冊(cè)中的時(shí)鐘樹(shù),可以先看中間對(duì)于SYSCLK進(jìn)行配置的SW,可以看出,SYSCLK的來(lái)源有三個(gè),即HSI、HSE以及鎖相環(huán)的輸出,F(xiàn)407主頻最高可以達(dá)到168Mhz,僅通過(guò)HSI或者HSE來(lái)作為時(shí)鐘源很難發(fā)揮最大的效能,一般采用鎖相環(huán)進(jìn)行倍頻來(lái)得到高頻率的時(shí)鐘信號(hào)作為系統(tǒng)時(shí)鐘。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
單獨(dú)看PLL鎖相環(huán),輸入可以選擇HSI和HSE,一般選用HSE。HSE進(jìn)行M分頻后輸入到鎖相環(huán)中,VCO即理解為電壓控制震蕩,xN即為放大N倍。隨后結(jié)合cube中的配置進(jìn)行理解。
上一步中以及完成了對(duì)時(shí)鐘模塊的配置,隨后在Clock Configuration中結(jié)合電路板對(duì)外部晶振頻率進(jìn)行配置,同時(shí)選擇系統(tǒng)時(shí)鐘使用鎖相環(huán)輸出。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
具體配置如上圖,不考慮超頻的情況下,可達(dá)到F407最大的主頻168Mhz。

GPIO引腳配置

完成時(shí)鐘配置之后,選擇LED對(duì)應(yīng)的引腳,此處使用的是PE0。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
選擇輸出模式。stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
下一步見(jiàn)圖,可以設(shè)置IO的輸出模式,初始電平,建議為每個(gè)IO添加Label方便進(jìn)行辨識(shí)。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
此時(shí)對(duì)點(diǎn)亮一個(gè)LED的GPIO配置結(jié)束。

Cortex內(nèi)核配置

stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
在SYS中選擇debug的方式,使用SWDIO和SWCLK進(jìn)行程序下載的選擇Serial Wire

工程生成

在Project Manager中進(jìn)行配置,設(shè)置工程名和存儲(chǔ)路徑,畫(huà)框的部分需要注意。Structure選擇Basic即可,下面的IDE要注意版本對(duì)應(yīng)。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
拉到下面,包的版本需要注意,可能默認(rèn)的版本與安裝的版本不同,可以看自動(dòng)生成的路徑下面包的版本是多少再進(jìn)行設(shè)置。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
在Code Generator中也需要修改默認(rèn)配置。①處默認(rèn)是勾選了copy all,這會(huì)導(dǎo)致將一些沒(méi)有用到的庫(kù)文件生成到工程中,導(dǎo)致工程龐大,編譯速度慢,按照如下配置可以只使用用到的文件,工程體積更小。
②處需要進(jìn)行勾選,勾選后會(huì)將.c和.h文件分開(kāi)存放,方便管理。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言
配置結(jié)束后點(diǎn)擊右上方的生成工程可以在指定文件夾下生成配置好的工程文件。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言

注意事項(xiàng)

編譯器版本

新版本的keil沒(méi)有版本5的編譯器,需要選用版本6。否則會(huì)導(dǎo)致編譯出錯(cuò)。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言

用戶代碼位置

我們寫(xiě)的代碼要放在生成的工程中留出的對(duì)應(yīng)部分,因?yàn)橄麓胃屡渲弥匦屡渲霉こ虝r(shí),不在規(guī)定位置的代碼會(huì)被覆蓋掉。
stm32cube時(shí)鐘樹(shù)配置,嵌入式,stm32,單片機(jī),c語(yǔ)言文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-611093.html

到了這里,關(guān)于STM32CubeMX生成C代碼及時(shí)鐘樹(shù)配置(基于stm32f407)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 基于STM32CubeMX創(chuàng)建FreeRTOS—以STM32F429為例

    基于STM32CubeMX創(chuàng)建FreeRTOS—以STM32F429為例

    目錄 1. 實(shí)驗(yàn)任務(wù) 2. 使用STM32CubeMX創(chuàng)建基礎(chǔ)工程 2.1 使用STM32CubeMX創(chuàng)建項(xiàng)目 2.2 創(chuàng)建新項(xiàng)目 2.3 時(shí)鐘設(shè)置 2.4 時(shí)鐘配置樹(shù) 2.5 修改時(shí)鐘基準(zhǔn),打開(kāi)串行調(diào)試 2.6 配置串口 2.7 配置狀態(tài)指示燈 2.8 FreeRTOS配置 2.9 配置工程輸出項(xiàng) 3. 代碼編輯 3.1 printf重映射 3.1.1 使用ARMCC 5編譯器時(shí)的print

    2024年01月22日
    瀏覽(20)
  • STM32——STM32F103時(shí)鐘解析(正點(diǎn)原子資料+HAL庫(kù)代碼分析)

    STM32——STM32F103時(shí)鐘解析(正點(diǎn)原子資料+HAL庫(kù)代碼分析)

    上次寫(xiě)系統(tǒng)時(shí)鐘解析的時(shí)候說(shuō)出一篇103的時(shí)鐘解析,我就整理HAL庫(kù)開(kāi)發(fā)的正點(diǎn)的資料,給小白梳理,我也是小白,不做權(quán)威使用。 在 STM32 中,有五個(gè)時(shí)鐘源,為 HSI、HSE、LSI、LSE、PLL。從時(shí)鐘頻率來(lái)分可以分為高速時(shí)鐘源和低速時(shí)鐘源,在這 5 個(gè)中 HIS,HSE 以及 PLL 是高速時(shí)鐘

    2024年02月19日
    瀏覽(25)
  • STM32F103利用CubeMX配置開(kāi)啟定時(shí)中斷

    STM32F103利用CubeMX配置開(kāi)啟定時(shí)中斷

    1、外部晶振8MHz,下載方式SWD模式,需求配置定時(shí)器1,產(chǎn)生每100ms一次中斷 新建工程、配置晶振、選擇下載方式等略 2、查閱資料,STM32F103的時(shí)鐘樹(shù)分配 ?3、配置CubeMX的時(shí)鐘樹(shù) ?4、配置定時(shí)器-開(kāi)啟定時(shí)中斷 ?5、配置定時(shí)時(shí)間 ( 定時(shí)周期 = (Prescaler + 1) × (Period + 1) ÷ 時(shí)鐘頻率

    2024年02月15日
    瀏覽(31)
  • 基于STM32F1以及STM32CubeMx實(shí)現(xiàn)串口中斷通訊(字符串發(fā)送與接收)

    基于STM32F1以及STM32CubeMx實(shí)現(xiàn)串口中斷通訊(字符串發(fā)送與接收)

    首先選好自己的板子并打開(kāi)軟件設(shè)置,本實(shí)驗(yàn)基于STM32F103ZET6實(shí)現(xiàn),打開(kāi)軟件后如圖: 打開(kāi)外部高速晶振,然后接著配置時(shí)鐘: 將時(shí)鐘頻率修改為72MHz,接著設(shè)置接線方式為SW 接下來(lái)需要使用串口中斷通訊,打開(kāi)我們的串口設(shè)置并打開(kāi)中斷 這里波特率設(shè)置為115200,數(shù)據(jù)位為

    2024年02月09日
    瀏覽(25)
  • 利用是stm32cubemx實(shí)現(xiàn)雙極性spwm調(diào)制 基于stm32f407vet6

    利用是stm32cubemx實(shí)現(xiàn)雙極性spwm調(diào)制 基于stm32f407vet6

    【雙極性SPWM調(diào)制講解以及基于stm32的代碼生成-嗶哩嗶哩】 https://b23.tv/ytFxdkL 雙極性spwm調(diào)制雖然沒(méi)有單極性好用,但比單極性要簡(jiǎn)單易懂一些,以下教程是如何利用stm32實(shí)現(xiàn)雙極性spwm調(diào)制. ? ?T1,T2不能同時(shí)導(dǎo)通,T3,T4也不能同時(shí)導(dǎo)通,否則短路燒管子。 ?解決方法:T1與T2用高

    2024年02月15日
    瀏覽(20)
  • Keil STM32F103系統(tǒng)時(shí)鐘配置過(guò)程(標(biāo)準(zhǔn)庫(kù))

    Keil STM32F103系統(tǒng)時(shí)鐘配置過(guò)程(標(biāo)準(zhǔn)庫(kù))

    平時(shí)我在做STM32項(xiàng)目的時(shí)候,一般是用別人的工程包,有時(shí)用別人的工程包的系統(tǒng)時(shí)鐘不對(duì),需要檢查,下面是系統(tǒng)時(shí)鐘配置過(guò)程。 1:在工程找到文件startup_stm32f10x_hd.s并打開(kāi),然后找到SystemInit,如下圖 2:選擇SystemInit,跳轉(zhuǎn)到SystemInit函數(shù),如下圖: 3:SystemInit函數(shù)如下圖:

    2024年02月16日
    瀏覽(26)
  • STM32F429IGT6使用CubeMX配置外部中斷按鍵

    STM32F429IGT6使用CubeMX配置外部中斷按鍵

    1、硬件電路 2、設(shè)置RCC,選擇高速外部時(shí)鐘HSE,時(shí)鐘設(shè)置為180MHz 3、配置GPIO引腳? 4、NVIC配置 ?PC13相同 ? 5、生成工程配置 ? 6、部分代碼 中斷回調(diào)函數(shù) 7、實(shí)驗(yàn)現(xiàn)象

    2024年02月13日
    瀏覽(30)
  • 基于STM32CubeMX和keil采用STM32F407的基本定時(shí)器中斷實(shí)現(xiàn)LED閃爍

    基于STM32CubeMX和keil采用STM32F407的基本定時(shí)器中斷實(shí)現(xiàn)LED閃爍

    定時(shí)器有三種,基本定時(shí)器,通用定時(shí)器,以及高級(jí)定時(shí)器。 這篇博客以最簡(jiǎn)單的基本定時(shí)器為例,實(shí)現(xiàn)LED的閃爍。 后面兩種定時(shí)器的用法后面再寫(xiě)。 實(shí)現(xiàn)功能: TIM6控制LED每隔0.5s變一次狀態(tài)。 TIM7控制LED1常量2s后熄滅。 因?yàn)槎际怯玫絃ED,所以和上一篇基于STM32CubeMX與keil采

    2024年02月04日
    瀏覽(25)
  • 嘗試使用CubeMX做stm32開(kāi)發(fā)之十三:Clock Configuration(時(shí)鐘樹(shù)配置)

    嘗試使用CubeMX做stm32開(kāi)發(fā)之十三:Clock Configuration(時(shí)鐘樹(shù)配置)

    ????????參考《STM32中文參考手冊(cè)_V10》,研究CubeMX中有關(guān)時(shí)鐘樹(shù)配置。 三種不同的時(shí)鐘源可被用于驅(qū)動(dòng)系統(tǒng)時(shí)鐘(SYSCLK): HSI振蕩器時(shí)鐘 HSE振蕩器時(shí)鐘 PLL時(shí)鐘 時(shí)鐘源選擇對(duì)應(yīng)時(shí)鐘配置寄存器(RCC_CFGR)中的SW[1:0]位。 三種不同的時(shí)鐘源可被用于驅(qū)動(dòng)系統(tǒng)時(shí)鐘???? M

    2024年02月16日
    瀏覽(18)
  • [STM32] - STM32F407VET6使用STM32CubeMX配置FatFs,以及掛載時(shí)返回03錯(cuò)誤碼問(wèn)題的解決

    [STM32] - STM32F407VET6使用STM32CubeMX配置FatFs,以及掛載時(shí)返回03錯(cuò)誤碼問(wèn)題的解決

    為測(cè)試新買(mǎi)的開(kāi)發(fā)板TF卡讀寫(xiě)是否正常,使用STM32CubeMX(后簡(jiǎn)稱CubeMX)進(jìn)行代碼構(gòu)建。生成代碼后燒錄測(cè)試,發(fā)現(xiàn)在掛載TF卡時(shí)無(wú)法成功,返回值為錯(cuò)誤3( FR_NOT_READY )。經(jīng)排查后問(wèn)題已解決,遂記錄配置過(guò)程供大家參考,并講解掛載時(shí)返回錯(cuò)誤3的解決方式。 ①為了輸出TF卡(

    2024年02月22日
    瀏覽(35)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包