定义的buffer_size ,只能300左右,400就错。哪里问题?看正文。谢谢

2019-07-21 01:58发布

 
#define ADC1_DR_Address    ((uint32_t)0x4001204C)
#define num 300
#define ADC_READ_TIMES 20 __IO uint16_t AD_Value[3]={0,0,0}; uint16_t ADC1_ConvertedValue_1[num];
........
 这个num在我大工程里只能300左右,设置成400就出错。如果是单独的DMA ADC采样,num可以随便设置,哪里出问题了?

Program Size: Code=190180 RO-data=106268 RW-data=2576 ZI-data=1238104   内存的话,没超啊

用的是STM32F407 试了很多优化的方法,就是改编译窗口设置。
请问有什么方法?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
正点原子
1楼-- · 2019-07-21 06:30
 精彩回答 2  元偷偷看……
tan0327
2楼-- · 2019-07-21 09:51
.map 文件在哪里啊?我怎么找不到?
 我想看看各代码占用内存是多大?
Llinuxu
3楼-- · 2019-07-21 10:38
很明显又是空间问题,我没接触过stm32f4,但在stm32f103中,很多新手都可能出这个问题,在103的启动代码中,有个设置栈空间大小的,这个芯片我就不知道了,但我断定肯定是这个问题
tan0327
4楼-- · 2019-07-21 13:42
回复【3楼】Llinuxu:
---------------------------------哪里设置的啊?
Llinuxu
5楼-- · 2019-07-21 19:30
我没用过stm32f4系列,我只知道103的,在启动代码中
正点原子
6楼-- · 2019-07-21 19:40
 精彩回答 2  元偷偷看……

一周热门 更多>