硬汉嵌入式论坛

 找回密码
 立即注册
查看: 829|回复: 2
收起左侧

[有问必答] 跑FREERTOS死机的问题

[复制链接]

4

主题

6

回帖

18

积分

新手上路

积分
18
发表于 2022-7-29 17:18:46 | 显示全部楼层 |阅读模式
硬汉哥:
我407上跑FREERTOS启动时死机,压根就启动不起来,串口调试助手无任何输出。

过程:
1、把系统所有总的堆大小改到36K,就可以正常上电跑起来了。也没有问题了。
#define configTOTAL_HEAP_SIZE                                        ((size_t)(37*1024))  


2。如果把configTOTAL_HEAP_SIZE        改到37K,系统就跑不起来了,启动的时候串口无任何输出。就是卡死在初始化阶段。

3.如果在configTOTAL_HEAP_SIZE改到37K的情况下,我把程序中那种1K的数组临时注释掉,程序又可以运行了。


结论:
我感觉系统初始化时内存不足导致启动不起来。

疑问:
我用的CPU是196K的ram,KEIL编译出来只占用了127K(这个包含了heap4暂用的37k)。还有60K左右空余,为什么启动会卡死。

附1:KEI编译RAM情况:
      Code (inc. data)   RO Data    RW Data    ZI Data      Debug   

    190412      33766       4528       1912     128616          0   Grand Totals
    190412      33766       4528        632     128616          0   ELF Image Totals (compressed)
    190412      33766       4528        632          0          0   ROM Totals

==============================================================================

    Total RO  Size (Code + RO Data)               194940 ( 190.37kB)
    Total RW  Size (RW Data + ZI Data)            130528 ( 127.47kB)
    Total ROM Size (Code + RO Data + RW Data)     195572 ( 190.99kB)

==============================================================================


附2:这里配置也是够的
image.png

需求:
麻烦有时间的时候帮忙指点一下,感谢。

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107642
QQ
发表于 2022-7-30 10:28:13 | 显示全部楼层
RAM空间设置有误,F407是128KB + 64KB,

其中128KB的地址是0x2000 0000, 大小0x20000
其中64KB的地址是0x1000 0000, 大小0x10000
回复

使用道具 举报

4

主题

6

回帖

18

积分

新手上路

积分
18
 楼主| 发表于 2022-7-31 10:12:28 | 显示全部楼层
收到,感谢
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-6-9 17:31 , Processed in 0.248447 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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