1位操作
&清零 gpioa->crl&=0xffffff0f; //将第 4-7 位清 0
|或運算 gpioa->crl|=0x00000040; //設定相應位的值,不改變其他位的值
移位操作提高代碼的可讀性: gpioa->odr|=1<<5 pa.5 輸出高
2宏定義
3條件編譯
#ifdef 辨別符
程式段 1
#else
程式段 2
#endif
當滿足某條件時對一組語句進行編譯,而
當條件不滿足時則編譯另一組語句。
4extern 就是說這個變量或者函數在其他地方有定義了。再這裡調用。
5 typedef 類型别名 :為現有類型建立一個新的名字,或稱為類型别名,用來簡化變量的定義
typedef struct
{
—io uint32_t crl;
—io uint32_t crh;
}gpio_typedef
gpio_typedef _gpioa,_gpiob;
6結構體 : 便于增加修改新的變量定義
結構體成員變量的引用方法是:結構體變量名字.成員名
結構體指針成員變量引用方法是通過“->”符号實作