大雨 发表于 2024-4-11 11:58:10

STC32G屠龙刀板子,地址越界问题

正在学习STC32G,地址越界,应该办?
当结构体内数组超过12,编译提示越界
#define ASS_MAX                      12

struct Product products[] = {
   xxxx,yy
//更多
},
*** ERROR L107: ADDRESS SPACE OVERFLOW
    SPACE:   EDATA
    SEGMENT: ?STACK
    LENGTH:000100H   





Snapdragon 发表于 2024-4-11 12:32:55

多放一点代码看看?

电子DIY小家 发表于 2024-4-11 14:15:27

定义的时候加个xdata就好了

小飞侠 发表于 2024-4-11 16:31:01

加一个xdata关键字试试

大雨 发表于 2024-4-11 18:47:38

加了,编译不能通过

大雨 发表于 2024-4-11 18:58:38

已经解决了,加code

大雨 发表于 2024-4-11 19:01:43

看了资料:
code :程序存储区(64KB),
data :可直接寻址的内部数据存储区(128B)
idata:不可直接寻址的内部数据存储区(256B)
bdata:可位寻址内部数据存储区(16B)
xdata:外部数据存储区(64KB)
pdata:分页的外部数据存储区

soma 发表于 2024-4-11 19:24:18

大雨 发表于 2024-4-11 19:01
看了资料:
code :程序存储区(64KB),
data :可直接寻址的内部数据存储区(128B)


程序存储区才64k?

飞捷 发表于 2024-4-12 08:16:26

加CODE的数据是固定的,不能变化了吧?

大雨 发表于 2024-4-14 11:08:30

加CODE的数据是固定的,是的,还有什么解决办法?
页: [1] 2
查看完整版本: STC32G屠龙刀板子,地址越界问题