裸机驱动之理解(*(volatile unsigned *)

来源网址:http://blog.csdn.net/tankai19880619/article/details/8877971
来源博客:tankai19880619

裸机驱动之理解(*(volatile unsigned *)

#define rGPIOFDAT (*(volatile u32 *)0x7f0080a4) 

理解如上宏定义,需要从两个部分:

第一:强转指针类型

(volatile u32 *)0x7f0080a4

  0x7f0080a4只是一个普通值;前面加上(volatile u32 *)后,就是一个地址了,并且该地址指向volatile u32变量。

第二:(*(volatile u32 *)0x7f0080a4) 

  对步骤一讲述的地址取其指向;即是变量volatile u32。

如上,给rGPIOFDAT赋值,其实就是给该寄存器赋值。

posted @ 2016-08-26 16:00  DoLittleDo  阅读(241)  评论(0)    收藏  举报