STM32中U8, U16 ,U32啥意思
1.unsigned int 32 (C語言標準表達方法) 2.uint32_t ;
3.u32;
這三種方式都是在表達同一個意思。可為什麼ST的開發人員要搞的這麼亂呢? 其實ST 搞這麼多花樣,無非是想開發人員在寫程式碼時定義資料型別能少寫幾個符號,然後又因為前後版本升級,為了相容舊版本(主要是V2.0)才會出現這麼多表示方法。不管他怎麼換,都是基於標準C來的。
stdint.h 這裡放著C語言的標準表達方式//第36行開始
typedef signed char int8_t; // 標準表達方式 signed char 被等同於 int8_t;
typedef signed short int int16_t;
typedef signed int int32_t;//在32位環境裡,int代表4個位元組32位!!
typedef signed __int64 int64_t;
typedef unsigned char uint8_t;
typedef unsigned short int uint16_t;
typedef unsigned int uint32_t;
typedef unsigned __int64 uint64_t;
……
stm32f10x.h 這個檔案主要是為了相容舊版本吧
typedef uint32_t u32;///32位
typedef uint16_t u16;///16位
typedef uint8_t u8;///8位
……
unsigned char = uint8_t =u8
unsigned short int = uint16_t =u16
unsigned long int =uint32_t =u32