學習使用stm32標準庫的時候,會使用各種各樣的標頭檔案,使用標頭檔案時要在keil介面魔術棒配置裡面新增檔案路徑,我在模仿編寫例程時,沒有把所有標頭檔案路徑包含進去,導致編譯不成功;另外就是檔案路徑包含了中文,keil5也會找不到相關標頭檔案。
我挺佩服st的韌體庫的,利用巨集定義大大增加了程式的可移植性,只要在移植時修改相關巨集定義即可,但是在我編譯時,定義了乙個巨集定義,在後續程式設計時仍使用了原定義名,導致編譯不成功,所以使用了巨集定義,原來的定義名就被修改,後續也只能使用巨集定義名。
我的解決辦法:keil預設編譯c89,解決辦法,在魔術棒工具欄c/c++選項框中勾選c99 code
雖然變數』a』定義了,但編譯器認為變數a所在的語句沒有意義,編譯器把它優化了。
解決:先檢查『a』所在語句是否有意義,如果有意義那麼嘗試用volatile關鍵字修飾變數『a』,如果沒有意義就刪除
keil5錯誤集錦
user api led.h 4 error 11 d unrecognized preprocessing directive 預編譯出錯。可能是字母打錯了 fwlib src stm32f10x rcc.c 273 warning 223 d function assert param decl...
apache啟動不成功
os 10022 提供了乙個無效的引數。child 840 setup inherited listeners wsasocket failed to open the inherited socket.解決辦法 1.用netstat a檢視80埠是否占用 2.a.網路上的芳鄰 檢視網路連線 本地連...
CocoaPods 安裝不成功
可能遇到的問題 1 source not present in cache 位址有誤 有些機器的位址沒有 https 解決方案 1 gem sources remove 2 安裝錯誤 1warning rubygems 1.2 index not foundfor 2 3 4rubygems wil...