我在stm32f103c8 20k ram上跑着RT-Thread系统最近一直有个问题跑个半小时片子就死掉了。代码中找不到问题现在怀疑是ram不够用。下边截图是程序便宜完之后打各项内容的大小和代码里边的栈区堆区设置的大小。现在的问题是我把栈区和堆区分配的大小已经加大了过一段时间还是死机,那么如何根据编译出来的各项内容的大小定义堆区和栈区的大小呢?还有如何确定是不是ram空间不够用呢
各线程有各自的栈,和启动文件里面的栈不是一类,尝试对需要增加栈空间的线程增加线程栈空间或许能解决你的问题,比如usb线程对栈的需求就比串口大,这个需要你根据自己的程序来判断,以及可以通过设置栈water mark(如果有的话)来自己调试出大小。
评分
查看全部评分
谢谢,已解决。