明白了,你是要放常数在ROM中。在freescale方面,通过汇编和C都可以实现。
在Codewarrior中,如果用汇编,就这样写:
org $2000 ; 存放的起始地址
DEFAULT_SYS_SET: DC.B $83,$00,$00,$00 ;常量
如果用C, 可以在prm中开辟出一段地址空间比如从0x2000-0x2003,命名为My_const
在c文件中,这样写:
#pragma CONST_SEG My_const
const unsigned char DEFAULT_SYS_SET[4]={0x83,0x00,0x00,0x00};
这样就可以了。不过,要提醒的是,Codewarrior在编译的时候会做一个优化,有时候如果你定义的这些常数没有在程序中被引用的话,Codewarrior会不生成相应的代码。所以你最好在定义后在程序中引用一下你的常量。 |