楼主:我准确地回答你的问题,你可以到KEIL或IAR里去仿真一下:
BYTE value _at_ 0x30;//表示value这个单字节变量指定的RAM地址为0x30。
value=0x01;//将0x01值赋值给30h
BYTE :是定义数据类型为单字节;
value:是一个变量;
所以"BYTE value _at_ 0x30"表示value 这个单字节变量指定的RAM地址为0x30
如果还有问题,请继续问,呵呵!
#define wrt377 XBYTE[0X8000]
void key() /*消抖*/
{
unsigned char xdata j,wrt377v; wrt377v = wrt377v+0x20;
for (j=0;j<20;j++)delay(1000); //xd delay
keys=0;
wrt377=wrt377v;
if(!(INT0&INT1)&&key_press==0)
{
key_xd=1; //confirm keypress
EX0=0;EX1=0;
}
else
{key_xd=0;keys=0;wrt377=wrt377v;} //confirm no keypress
}
还像是可以自己定义一个特殊地址,然后调用!如头文件里的内容……
sfr PSW = 0xD0;
sfr ACC = 0xE0;
sfr B = 0xF0;