STM32F407不能定义150k的数组

2019-07-21 04:46发布

我用的是F407的芯片,内部192k的SRAM,在程序中想定义一个全局变量uint8_t   USB_BUF[150*1024]; 编译后,debug下载后,程序自动运行了(正常应该是点击Run才会开始运行程序的),但是运行状态明显不正确,好像程序根本没执行一样。
我如果 把定义改为uint8_t   USB_BUF[120*1024]; 这样的话程序运行就正确了。
但是我程序需要必须得定义一个大数组啊,需要300k,我应该怎么办?
我用的开发板上有一个外部256k*16位字长的SRAM,我能使用到吗?地址为0x68000000应该怎么用啊?


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
lxrhy198308
1楼-- · 2019-07-21 05:49
有没有人能帮帮忙啊?
斑竹在吗?
styleno1
2楼-- · 2019-07-21 10:42
F407x里的RAM是多段的,64K+128K,显然满足不了你。
lxrhy198308
3楼-- · 2019-07-21 15:09
是的,满足不了我应该怎么办?
有外部的SRAM,可以用吗?应该怎么用?
ricefat
4楼-- · 2019-07-21 18:05
 精彩回答 2  元偷偷看……
lxrhy198308
5楼-- · 2019-07-21 20:06
但是可以用外部的SRAM当做内部的RAM使用吧?
可以这样使用吗?
ricefat
6楼-- · 2019-07-21 21:19
回复【6楼】lxrhy198308:
---------------------------------
可以
参考官方外部SRAM加载实例

一周热门 更多>