OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4706|回复: 3

请教大数组的问题,外部SRAM

[复制链接]

1

主题

2

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2015-2-11
在线时间
1 小时
发表于 2015-2-11 09:57:29 | 显示全部楼层 |阅读模式
5金钱
芯片是STM32F103ZE,外扩了一片SRAM,512KB的。
按照官方例程修改成加载到外部SRAM中运行,
icf和启动文件等均正确修改,
map文件中看到对应的地址已经变成0x0x68000000,
堆栈地址也均变到外部SRAM中。
现在的问题是:
当全局变量总大小不超过芯片内置的SRAM容量(64KB)时,一切正常。
当全局变量总大小超过芯片内置的SRAM容量(64KB)时,编译通过,加载失败,
会进入到HardFault,JTAG无法进入到main的位置。
把全局变量定义修改为指针,在main函数内部进行动态分配(预先设置一个很大的堆空间),
可以进入main,但执行到分配变量超过64KB时,一样出错。

现在感觉外部SRAM还是会受内部RAM限制,这样官方给的那个例程就没有意义了。
只能把外扩的SRAM当做一片Flash来使用?大数组还是不行啊。
请各位达人指教。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

2

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2015-2-11
在线时间
1 小时
 楼主| 发表于 2015-2-11 17:36:34 | 显示全部楼层

没人知道吗?
自己顶起来
请教原子哥
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11558
金钱
11558
注册时间
2014-4-1
在线时间
1318 小时
发表于 2015-2-11 21:01:50 | 显示全部楼层
感觉不会是这样,肯定可以设置大数组。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-2-13 21:56:05 | 显示全部楼层
我都是通过内存管理的方式来控制外部sram的,你直接这样子由MDK分配,没搞过.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-25 19:56

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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