请教个内存使用的问题!

2019-07-20 22:26发布

STM32F407的内存有:
七条被控总线:
— 内部 Flash ICode 总线
— 内部 Flash DCode 总线
— 主要内部 SRAM1 (112 KB)
— 辅助内部 SRAM2 (16 KB)
— 辅助内部 SRAM3 (64 KB)(仅适用于 STM32F42xxx 和 STM32F43xxx 器件)

它最少有128K内存,但我在MDK中只能使用到64K。
1.在MDK中"DEVICE"中选择的”STM32F407ZG"显示为:
The STM32F4 family incorporates high-speed embedded memories and an extensive range of enhanced I/Os and peripherals connected to two APB buses, three AHB buses and a 32-bit multi-AHB bus matrix.

  - 64-Kbyte of CCM (core coupled memory) data RAM
  - LCD parallel interface, 8080/6800 modes
  - Timer with quadrature (incremental) encoder input
  - 5 V-tolerant I/Os
  - Parallel camera interface
  - True random number generator
  - RTC: subsecond accuracy, hardware calendar
  - 96-bit unique ID

2.在编译中显示:
Program Size: Code=84002 RO-data=1430 RW-data=748 ZI-data=413156  
再大就显示内存超了,也就是它大约64K多一点,到不了128K,请问这是怎么回事?
如何能解决?

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
正点原子
1楼-- · 2019-07-21 02:20
askh 发表于 2016-5-3 11:13
我在《网络实验3 RAW_UDP实验》中这样试验:把外存屏蔽
1.不加数组:Program Size: Code=72988 RO-data=75 ...

你这是因为内存管理占了很多。。。。
把内存管理里面的malloc.h里面的内部内存池数组,改小,就行了。
footprint
2楼-- · 2019-07-21 08:16
 精彩回答 2  元偷偷看……
footprint
3楼-- · 2019-07-21 14:11
footprint 发表于 2016-4-29 12:52
举例:STM32F 103 C 8 T 6
"F"那一位指的是产品类型,现在似乎只有通用型即"F"
"103"那位指的是产品子系 ...

http://zhidao.baidu.com/question ... 7rom%BB%B9%CA%C7ram
另外看下这个。
askh
4楼-- · 2019-07-21 19:18
我问的是:
1.STM32F407ZGT6只能用64KRAM,为什么不能用128KRAM?
2.在MDK中选的STM32F407ZG型号,它只说有64KRAM,而不是128K或192K?
3.在MDK中是否有选项,可以用128KRAM?
正点原子
5楼-- · 2019-07-21 21:31
askh 发表于 2016-4-29 14:35
我问的是:
1.STM32F407ZGT6只能用64KRAM,为什么不能用128KRAM?
2.在MDK中选的STM32F407ZG型号,它只说 ...

你用我们例程测试下就知道了
stm32F407是可以用到192K的。
估计你的型号选择搞错了
askh
6楼-- · 2019-07-21 22:27
这样设置有问题吗?

一周热门 更多>