標題: STM32CUBE配置路徑和生成項目工程失敗相關話題 [打印本頁]

作者: taoran    時間: 2015-12-7 01:54
標題: STM32CUBE配置路徑和生成項目工程失敗相關話題
整理:MilerShao

關于STM32CUBE的使用,ST 官方有出相關視頻,有興趣的話可以下載來看看。網(wǎng)上很多地方都有,在STM32 players 群共享里也有,該QQ群號是188428785。在此視頻的基礎上再跟大家交流下,使用它的過程中常遇到的一些問題。

 

1、那個官方視頻中提到STM32CUBE工具不支持32F1系列,那是做視頻時的情況,現(xiàn)在STM32全系列都已經(jīng)支持了,你大可盡情使用。

                                 

 

    2、STM32CUBE工具由部分組成,一部分是上位機配置軟件,即STM32CubeMx,另外一部分是針對STM32各系列的庫文件,比方針對SMT32F1系列的STM32CubeF1,針對SMT32F4系列的STM32CubeF4等等。這里說下相關工具軟件和庫文件的配置問題。
                  

下載了STM32CubeMx【當前版本是STM32CubeMX 4.7.0 后,解壓即可安裝。安裝完畢后隨便建立個項目打開STM32CubeMX,參考下圖,點擊 Help\Updater Settings\Firware Repository會看到一個默認路徑!緅ava安裝過程不提了】

                               

     這個路徑位置就是用來擺放可能用到的各類STM32系列固件庫STM32CubeFx的地方。 當然這個路徑你也可以自行修改到你期望的地方,比方D:\STM32APP\CubeMXLib. 如果沒有先行加載相關32固件庫文件的話,當你用STM32CUBEMX配置好相關項目參數(shù)打算生成工程文件時,STM32CUBEMX會提示你的Repository Folder文件夾下找不到相關固件庫,提醒是否立即聯(lián)網(wǎng)下載。

                             

 

   你可以選擇下載,這個下載過程跟你的電腦和網(wǎng)絡有關,有時可能耗時比較漫長,要有耐心。

  你也可以不在這里進行下載,只借助STM32CUBEMx生成你需要的配置文件后,而另外擇時手動去ST官方網(wǎng)站或利用STM32CUBEMX工具里的庫更新功能下載相關固件庫。【STM32CUBEMX中的STM32固件庫即時更新功能請點擊 菜單 HELP\Install New Liberay...,然后點擊CHECK按鈕, 白色空方框的庫表示可以進行即時升級的】

             

 

 

 

     這里講下手動加載STM32CUBE固件庫的使用問題。這里以STM32CubeL1CUBE固件庫的加載過程為例。先從ST官網(wǎng)或其它地方下載到針對STM32L1系列的CUBE固件包stm32cube_fw_l1_v120.zip,將其放到除了Repository Folder文件夾的任何地方,然后進行庫文件的加載,即把下載到的stm32cube_fw_l1_v120.zip加載到STM32CUBEMX環(huán)境里。 先點擊 HELP\Install new liabrary...出現(xiàn)如下界面:【圖中的32CubeL1固件庫的地方已經(jīng)綠色方框了,說明已經(jīng)是加載好了。加載前應該是空白框,這里示意下而已!

       

    點擊上圖中的紅色箭頭所指,進行壓縮包的加載完成。如下圖所示:
        

     3、這里再聊聊工程項目文件的路徑話題。點擊STM32CubeMx的菜單 project\settings\即可看到下面圖示界面。有關工程項目的名稱、路徑、編譯環(huán)境、用到的MCU型號及其固件庫的信息都顯示得很清楚,你可以自行命名工程項目和調整其存放目錄。注意,最下面兩項關于MCU及固件版本信息此處你沒法調整。

                               

            這里要提醒的是,工程項目路徑中不能夾雜中文字符,不然編譯時會出錯,做如下提示:

                             

還有,你建立工程文件后,電腦里安裝的相關的編譯環(huán)境版本要匹配,不要低于STM32CubeMx里期望的。

    4、最后提下,使用STM32CubeMx配置過程中常遇到的其它幾個話題。

    4.1、在做CLOCK configuaration時,如果需要用到外部時鐘源的話,必須在管腳配置狀態(tài)Pinout欄,對RCC外設進行配置。

                        

    其中一個選項Bybass clock source 是指從外部引入相應的時鐘源到MCU振蕩電路部分。Crystal/Ceramic Resonator 是指我們常用的晶體或陶瓷振蕩器。

    4.2、在做NVIC【中斷矢量控制器】配置時,這點需要你對各個系列內核的中斷控制有所了解,在對32F1/F2/F3/F4系列芯片配置時,首先要選擇中斷優(yōu)先級的分組,然后再對各個中斷源進行優(yōu)先級的安排,當然后面可以在代碼中適時更改。如下圖所演示:

                      

 當然對于M0M0+內核的32F0/32L0來說就沒有中斷優(yōu)先級分組的問題,只需設置優(yōu)先級高低就好。如下圖所演示:

                     

    4.3、不算問題的問題。

的確,利用STM32CUBEMX可以幫助開發(fā)工程師方便地對STM32 MCU的有關外設管腳和時鐘及中間件做配置,整個過程中多數(shù)情況下只需動動鼠標就好,最后生成比較完整的配置文件供工程項目使用。尤其在管腳安排和時鐘配置方面,大大節(jié)省了工程師們研讀手冊的時間和精力。不過它畢竟是個輔助工具,雖然省卻了許多研究手冊的時間,但不等于你啥都不要研讀就能完成的,基本的東西還是需要了解和研讀,即使動鼠標打勾也還得知道怎么選才行。

比方說,前面提到的NVIC配置問題,如果不清楚NVIC基本知識及相關應用的響應需求,一通亂點后生成的NVIC配置文件恐怕根本不是你真正想要的。

再比方常見的TIMER應用配置問題,如果你對STM32 TIMER沒做基本了解,在做TIMER配置時看到下面選項估計也無從下手。

                        

 

最后順便提下,STM32CUBE工具軟件及相關庫文件涉及的東西很多,其版本一直有保持更新完善中,盡量使用最新版本,建議開啟其自動升級功能。在對STM32CubeMx升級時往往需要重啟,重啟后一般要以管理員身份操作才能完成升級。

 






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1