最新版的stm32f1xx.h文件中取消了u8, u16, u32的類型定義


使用芯片stm32f103zet6和stm32l151c8t6,在移植程序時發現,編譯器提示u8未定義;

在Keil MDK 開發環境里,st定義無符號32位整形數據有很多種表示方法:
1 unsigned int 32——標准寫法;
2 uint32_t ; 
3 u32;  
三種方式都是在表達同一個意思。

       其實ST之所以這樣多種方式表示同一個值,主要是減少代碼編寫工作量,同時也是為了向下兼容舊版本的程序。
使用typedef多次重新定義罷了,關於這些定義可以看下面幾個文件:core_cm4.h   ;stm32f1xx.h;   stdint.h;  

stm32l1xx系列,本來在舊的.h文件中對uint_8等有類型定義為u8, 但是新的.h文件中沒有了
新的.h文件:


舊的.h文件:


新版.h文件已經鎖定,無法直接修改添加;可以自建一個頭文件,重新定義包裝一下。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM