關鍵字volatile:
本質->
volatile 、 const 絕對對立。若有 volatile 修飾,則表示記憶體會重新裝載内容,而非直接從寄存器copy内容。
這裡引出一下->
const是什麼?
1 const 定義
const 修飾的資料類型是指常類型,常類型的變量或對象的值是不能被更新的。
2 const 作用
可以定義 const 常量,具有不可變性。例如:
const int a = 100; a++會産生error。
3 常量解釋
常量,例如6, “xiaoming”等,是隻讀的。因為是隻讀,是以被編譯器放在記憶體中的隻讀區域,當然不可修改。
****應用舉例:
volatile應用比較多的場合 比如->
U32 GPCON; //#define U32 unsigned int
U32 GPDAT;
U32 GPUDP;
U32 GPSEL;
}volatile GPIO_MemMapPtr;
使用volatile後 寄存器允許再次更新指派。*