【发布时间】:2013-03-23 04:23:28
【问题描述】:
我的问题是通用的,与任何特定的微控制器无关。 下面是写入硬件寄存器地址的代码。在这段代码中,我试图写几个值,一个接一个。
unsigned int *p; //declare a pointer
p = (int *) 0x200; //point to hardware register address
*p = 0x12; // write to hardware register address
*p = 0xA5; // write to hardware register address
*p = 0xff; // write to hardware register address
以上内容需要更正吗?
【问题讨论】:
-
更正是什么意思?这篇文章可能会有所帮助:How to initialize a pointer to a specific memory address in C++
-
在您的架构中,您是否需要在
*p的三个分配之间插入内存屏障?