C语言中定义寄存器地址

[复制链接]
190|0
 楼主| 电子学长 发表于 2018-10-5 21:18 | 显示全部楼层 |阅读模式
#define GPBCON   (*(volatile unsigned long *)0x56000010)

volatile 是表示易变的,每次读取都从地址里读取,不优化;(volatile unsigned long *)是指针强制类型转换(注意这里是转换为指针,不是指针变量,一个地址可以看做是指针,而存放指针的是指针变量),表示指针指向unsigned long 类型;然后第二层括号是该指针的值,对应指针指向的地址为0x56000010;最后的取值符号*表示指向该地址,相当于读写该地址的值,读写的值是unsigned long 类型。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

424

主题

447

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部