如题
离线
https://www.keil.com/support/man/docs/c51/c51_ap_at.htm
路过, 变量可以C51用 _at_ 关键字, 常量不知道怎么做
离线
*(uint8_t*)(0x10000)=0xff;
或者
uint8_t *ptr=(uint8_t*)(0x10000);
*ptr=0xff;
离线
*(uint8_t*)(0x10000)=0xff;
或者
uint8_t *ptr=(uint8_t*)(0x10000);
*ptr=0xff;
感谢,可是我要的是code, 就是说编译生成的bin文件0x10000 位置就是A,这个上面的代码好像不行吧?
离线
感谢楼上几位大侠, 终于搞定:
添加一个fixcode.asm到工程, 内容是:
CSEG AT 03780h
CFG_BYTE_0: DB 'A'
CFG_BYTE_1: DB 'B'
END
重新编译生成bin即可。
离线
感谢,可是我要的是code, 就是说编译生成的bin文件0x10000 位置就是A,这个上面的代码好像不行吧?
Keil我没用过,我用SDCC。SDCC里面可以用如下代码解决问题。
__code __at (0x10000) uint8_t var_name = 0xff;
离线
smartcar 说:感谢,可是我要的是code, 就是说编译生成的bin文件0x10000 位置就是A,这个上面的代码好像不行吧?
Keil我没用过,我用SDCC。SDCC里面可以用如下代码解决问题。
__code __at (0x10000) uint8_t var_name = 0xff;
嗯,刚刚前面搜到很多代码确实大部分是SDCC的。
离线