本帖最后由 xlsbz 于 2009-11-26 14:01 编辑
我用的keil的存储器模式Memory Model是XDATA模式。单片机的片上xram是4096字节(也就是0x0000~0x0FFF)
奇怪啊!!发现定义的很多变量都不是0,怎么办呢?
于是我将startup.a51的
XDATASTART EQU 0
;
; <o> XDATALEN: XDATA memory size <0x0-0xFFFF>
; <i> The length of XDATA memory in bytes.
XDATALEN EQU 0x0FFF + 1 ;我修改了这里,默认值是0
于是我发现变量为0了,好高兴!终于搞定了!
但是在一个又返回值的函数里,我定义了一个两个字节长的变量,它的初始值竟然不是0
相当的纳闷啊!
多谢各位指点! |