OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4134|回复: 7

【ucoiii】增大任务栈空间报错

[复制链接]

28

主题

294

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1790
金钱
1790
注册时间
2018-3-26
在线时间
294 小时
发表于 2020-10-30 18:08:18 | 显示全部楼层 |阅读模式
10金钱


启动文件,增加栈空间到一定程度就报错空间不足了
5.png

导致任务栈增大一点就报错

2.png

网上找了很多,说是要减少内存管理的大小,减少了lwip配置里面的内存,和malloc.h里面的管理内存
但是还是这样,有大佬知道怎么降低内存管理,然后扩大任务栈空间吗?
4.png


3.png

最佳答案

查看完整内容[请看2#楼]

参考这个文章 https://blog.csdn.net/slj_win/article/details/16959055 配置了lwipopts.h 的内存大小, 然后再减小malloc.h 里面内部SRAM 分配的内存,就可以加大.s 文件里面 Stack_Size EQU 0x00000F00 栈空间的大小, 就能扩大任务栈的大小了。 还有一种办法就是,把任务栈的栈空间跑到 外部SRAM 里, 可以在任务栈后面指定运行的空间,例如:__align(32) u8 mem2base[MEM2_MAX_SIZE] __attribute__((at(0X68 ...
茵茵猪头
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

28

主题

294

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1790
金钱
1790
注册时间
2018-3-26
在线时间
294 小时
 楼主| 发表于 2020-10-30 18:08:19 | 显示全部楼层
参考这个文章 https://blog.csdn.net/slj_win/article/details/16959055 配置了lwipopts.h 的内存大小,

然后再减小malloc.h 里面内部SRAM 分配的内存,就可以加大.s 文件里面 Stack_Size      EQU     0x00000F00 栈空间的大小,

就能扩大任务栈的大小了。

还有一种办法就是,把任务栈的栈空间跑到 外部SRAM 里, 可以在任务栈后面指定运行的空间,例如:__align(32) u8 mem2base[MEM2_MAX_SIZE] __attribute__((at(0X68000000)));       

不过没有实践,有需求的小伙伴可以自己试试。
茵茵猪头
回复

使用道具 举报

3

主题

821

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3359
金钱
3359
注册时间
2011-11-10
在线时间
207 小时
发表于 2020-10-31 08:58:16 | 显示全部楼层
栈空间当然不是随心所欲的大,受限于RAM大小和你程序里面变量所占空间大小
回复

使用道具 举报

28

主题

294

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1790
金钱
1790
注册时间
2018-3-26
在线时间
294 小时
 楼主| 发表于 2020-10-31 10:46:08 | 显示全部楼层
c2007s 发表于 2020-10-31 08:58
栈空间当然不是随心所欲的大,受限于RAM大小和你程序里面变量所占空间大小

现在RAM空间被 malloc 申请内存用了太多了,减少申请的内部内存,就会导致lwip初始化不成功
茵茵猪头
回复

使用道具 举报

28

主题

294

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1790
金钱
1790
注册时间
2018-3-26
在线时间
294 小时
 楼主| 发表于 2020-10-31 10:48:24 | 显示全部楼层
还有一个问题,lwip能连接上本机的网络调试助手服务器,但是连接不上虚拟机ubuntu上的网络调试助手,而主机的助手可以连上 ubuntu 的助手服务器。

这是什么鬼,莫名其妙的
茵茵猪头
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2020-11-1 00:42:21 | 显示全部楼层
你得协调malloc和你这里的stack大小,总共就那么多
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

11

主题

2141

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4855
金钱
4855
注册时间
2015-1-10
在线时间
608 小时
发表于 2020-11-3 16:35:08 | 显示全部楼层
htao 发表于 2020-10-31 10:48
还有一个问题,lwip能连接上本机的网络调试助手服务器,但是连接不上虚拟机ubuntu上的网络调试助手,而主机 ...

我记得虚拟机网络需要做桥接
回复

使用道具 举报

28

主题

294

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1790
金钱
1790
注册时间
2018-3-26
在线时间
294 小时
 楼主| 发表于 2020-11-4 09:01:24 | 显示全部楼层
阿侑kevin 发表于 2020-11-3 16:35
我记得虚拟机网络需要做桥接

桥接能上网了也连不上,其他nat也不行,直接换成了双系统就可以了
茵茵猪头
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-4-29 23:26

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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