C语言中 “_at()” 特殊地址定位详解
在keil里面,有一个特殊地址定位的指令,就是将一个变量或常量定位到一个指定的地址上面指令为 __at ,使用方法如下意为将variable变量定位到0x8000这个地址。指令的目的是告诉链接器将指定地址定位到某个地址里面,在使用该功能的时候需要注意一点的是,地址的范围需要符合单片机的datasheet给出的地址映射表,注意,如果地址超出了flash的最大范围,程序将无法得到这个值,例如一个256Kflash的芯片,在使用功能__at指令的时候,地址就不要超过256*1024了,否则你是找不到这个变量的。keil的链接器最后会把变量放到生成文件的相应地址中去,在烧录的时候,如果是BIN文件,文件的字节地址会和flash的地址一一对应。
下载地址
用户评论