| 我把受影响的变量声明data就可以正常工作了,几个全局变量,256字节大数组在xdata没有问题 |
art_jianda 发表于 2018-8-27 08:50 你的B代码xdata超出芯片空间了,你把空间调大只是编译通过了,实际芯片内部没有变化,A代码变量少,所以前后都能正常工作,而B代码超出空间,你调整编译器空间,使得编译正常通过,实际工作时,一部分超界的变量不能工作,当然不能正常了。keil设置空间只是告诉编译器我有那么大的空间,它并不知道你是否欺骗了它。 |
| 是这样的 我有两份代码 A份是变量少的 xdata空间是2816byte B份是变量多的 编译的时候提示xdata超出空间大小 所以我把A、B两份xdata空间调整成3072byte 最后A代码烧进去系统能正常工作 B代码烧进去不能正常工作 但是减少B代码中变量的数量 B代码也可以正常了 这是为什么呢 难道这个keil设置空间是没用的 仅仅是依靠实际代码情况来工作的? |
|
为何要修改配置资料,修改地址要修改得正确才行,在代码中使用就好了。 |