找回密码
 立即注册
查看: 123|回复: 12

address space overflow:ecode的问题

[复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:41
  • 最近打卡:2025-07-29 19:50:13
已绑定手机

47

主题

333

回帖

1169

积分

金牌会员

积分
1169
发表于 2025-7-21 13:57:57 来自手机 | 显示全部楼层 |阅读模式
我的code使用才显示80多K啊怎么就溢出了?
不会是函数占的code超过64K了? 1753077397542.jpg 1753077441625.jpg 1753077459093.jpg
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:543
  • 最近打卡:2025-07-31 09:04:05
已绑定手机

14

主题

1334

回帖

3672

积分

论坛元老

积分
3672
发表于 2025-7-21 14:14:03 | 显示全部楼层
code超过64K,keil中需要设置,参见技术手册:2.14.7  设置项目4(超64K代码的相关设置)
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:543
  • 最近打卡:2025-07-31 09:04:05
已绑定手机

14

主题

1334

回帖

3672

积分

论坛元老

积分
3672
发表于 2025-7-21 14:15:28 | 显示全部楼层
“Options for Target ' Target 1'”窗口中选择“Output”选项页,勾选其中的“Create HEX File”选项。若程序空间超过64K,则“HEX format”必须选择“HEX-386”模式。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:543
  • 最近打卡:2025-07-31 09:04:05
已绑定手机

14

主题

1334

回帖

3672

积分

论坛元老

积分
3672
发表于 2025-7-21 14:18:48 | 显示全部楼层
推荐使用“XSmall”模式,默认将变量定义在内部RAM(edata),单时钟存取,访问速度快,STC32G12K128系列芯片有4K的edata可以使用;
不推荐使用“Large”模式,默认将变量定义在内部扩展RAM(xdata),存取需要2~3个时钟,访问速度慢。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:513
  • 最近打卡:2025-07-31 08:58:47
已绑定手机

87

主题

5532

回帖

1万

积分

超级版主

DebugLab

积分
10123
发表于 2025-7-21 14:20:11 | 显示全部楼层
https://www.stcaimcu.com/forum.php?mod=redirect&goto=findpost&ptid=6319&pid=53627
整个程序区如超过 64K 必须使用 Huge,
并且必须使用多文件
并且每个文件不能超过 64K
DebugLab
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:82
  • 最近打卡:2025-07-30 16:03:14

34

主题

1254

回帖

2866

积分

超级版主

积分
2866
发表于 2025-7-21 14:32:04 | 显示全部楼层
看超版的: STC32G12K128系列超64K程序演示
https://www.stcaimcu.com/forum.php?mod=viewthread&tid=1678
(出处: 国芯技术交流网站)

截图202507211436196377.jpg

深圳国芯人工智能有限公司-产品_STC32系列  https://www.stcai.com/cp_stc32xl
STC官网:https://www.stcai.com/
QQ:2593903262
微信号:18106296598
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:41
  • 最近打卡:2025-07-29 19:50:13
已绑定手机

47

主题

333

回帖

1169

积分

金牌会员

积分
1169
发表于 2025-7-21 14:34:30 来自手机 | 显示全部楼层
OKOK感谢大佬指点 按那个设置就不报错了
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:41
  • 最近打卡:2025-07-29 19:50:13
已绑定手机

47

主题

333

回帖

1169

积分

金牌会员

积分
1169
发表于 2025-7-21 14:38:29 来自手机 | 显示全部楼层
哦对还有个问题,那就不单独发帖问了。
就是访问外扩的32K RAM能不用指针直接用数组的形式定义吗?
我外扩了32K RAM,按照例程的define
((unsigned char volatile far*)0x7f0000)弄没有问题可以读写。但有没有法直接把数组放在EXRAM里像正常的那样访问呢?不然太不方便了
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:41
  • 最近打卡:2025-07-29 19:50:13
已绑定手机

47

主题

333

回帖

1169

积分

金牌会员

积分
1169
发表于 2025-7-21 14:46:05 来自手机 | 显示全部楼层
关于这个XSMALL,我勾选XSMALL之后就该报错了因为编译器显示把我的5K多东西全放进EDATA+HDATA了,我该怎么把一些数组定义在XDATA里?xdata关键字修饰为什么还不管用?编译器硬是放着XDATA不用去把EDATA塞爆,也不理会我的xdata修饰?!
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:41
  • 最近打卡:2025-07-29 19:50:13
已绑定手机

47

主题

333

回帖

1169

积分

金牌会员

积分
1169
发表于 2025-7-21 14:48:18 来自手机 | 显示全部楼层
1753080434459.jpg 1753080391414.jpg
这是两次的编译结果,加或不加xdata修饰为什么结果都一样?(两个都是在XSAMLL模式下的编译结果)
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-7-31 20:20 , Processed in 0.141106 second(s), 97 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表