1、使用官方提供的新功能。
2、上個版本有bug,下個版本bug解決了的情況是可能的。不過,上個版本沒bug,下個版本有bug的情況是有的(微小概率事件)。
開啟「stm32h7xx.h」,ctrl+f搜尋"version"。
1、通過官網獲取最新hal庫[1]。
2keil官網經常會卡著顯示不了後續內容,這時可以用根據[6]進行設定。同時,該方式獲取的包的版本數一般比方法1和方法3的保本數少,意味著hal庫版本一般不是最新的。
1、原始檔和標頭檔案更新
如果程式使用的是stm32cubemx結構,那可以在該軟體中更新庫(由於程式臃腫,不推薦)。又若程式是keil software pack中匯入的,應該也可以在keil中更新。
最直接的方法就是像正點原子教程中stm32初始移植的方式更新hal庫,這時最直接的,雖然上手有一定難度。可參考[5]進行移植。
2、keil的軟體包和hal庫版本要對應。
keil的軟體包中除了包含hal庫中的內容,還包含有cortex-m核心操作的部分、除錯部分等設定,故推薦也更新一下。
3、保持巨集定義不變:在hal庫更新後,難免恢復了原本在修改了的hal庫修改了的巨集,故要小心。最需要關心的檔案就是「stm32h7xx_hal_conf.h」了。
4、邊編譯邊修改工程,直到沒有bug出現為止。
[1]【stm32】獲取stm32官方韌體庫
[2]mdk5 software packs
[3] um2204 getting started with stm32cubeh7 for stm32h7 series
[4] um1718 stm32cubemx for stm32 configuration and initialization c code generation
[5]stm32學習筆記(一) 如何新建乙個stm32工程模板
STM32 HAL庫學習筆記
1 系統時鐘 一般用stm32cube生成,使用者只需要會用stm32cube就行。2 gpio輸出void led gpio config void 3 gpio輸入void key gpio config void 4 外部中斷void exti key config void void ext...
STM32 HAL庫學習筆記
1 普通函式與 函式的區別 對普通函式的呼叫 呼叫程式發出對普通函式的呼叫後,程式執行立即轉向被呼叫函式執行,直到被呼叫函式執行完畢後,再返 用程式繼續執行。從發出呼叫的程式的角度看,這個過程為 呼叫 等待被呼叫函式執行完畢 繼續執行 對 函式呼叫 呼叫程式發出對 函式的呼叫後,不等函式執行完畢,立...
STM32HAL庫中斷函式原理
hal uart receive it函式分析 hal statustypedef hal uart receive it uart handletypedef huart,uint8 t pdata,uint16 t size process locked 設定程序鎖 可以理解為接受過程中不被其他...