为何KEIL调试存取二维数组出错?
在SRAM区定义了一个16位二维数组,但到第6行就出错了,是我的问题吗?谢谢!
没发现异常,检查一下xdata是不是过大溢出了
我出现过,具体原因没找出来,跟踪汇编发现有一个单元的偏差。最终处理的办法是设一个指针,指向其中的二维数组之一进行存取操作。 DebugLab 发表于 2024-7-26 16:18
没发现异常,检查一下xdata是不是过大溢出了
SRAM有1K字节,会不会是外部扩展RAM指针有问题啊?
55337575 发表于 2024-7-26 16:27
我出现过,具体原因没找出来,跟踪汇编发现有一个单元的偏差。最终处理的办法是设一个指针,指向其中的二维 ...
这个问题位置不固定
新建test工程又没有问题,再找找。。。
==> STC8G/8H/8A/8C系列串口仿真说明
Flash : 0 Byte
data: 0 Byte
idata : 0 Byte
xdata : 芯片最后的768 Bytes
Port: P3.0 and P3.1
你的RAM是多大的,如果是1K就说的过去了。 soma 发表于 2024-7-26 17:28
==> STC8G/8H/8A/8C系列串口仿真说明
Flash : 0 Byte
data: 0 Byte
1K的,仿真占用了?test工程定义了960都没问题
pobomud 发表于 2024-7-26 19:10
1K的,仿真占用了?test工程定义了960都没问题
1K的仿真还是少用点xdata吧。毕竟仿真要占用最后768字节,960没问题真的不好判断了。 没遇到过,不过了解一下对以后有好处
页:
[1]
2