打印
[STM32F1]

FreeRTOS进入断言函数

[复制链接]
3743|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chuxh|  楼主 | 2021-6-1 23:49 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
跑起来就卡在了这里configASSERT( xReturn );

使用特权

评论回复
沙发
renyaq| | 2021-6-1 23:51 | 只看该作者
是定义的任务多了内存不够吗?

使用特权

评论回复
板凳
chuxh|  楼主 | 2021-6-1 23:53 | 只看该作者
删除一个任务就没问题了

使用特权

评论回复
地板
chuxh|  楼主 | 2021-6-1 23:55 | 只看该作者
可是我128K的stm32f103RB,只用了50多K呀。但是定义更大的数组也定义不了。

使用特权

评论回复
5
chuxh|  楼主 | 2021-6-1 23:57 | 只看该作者

使用特权

评论回复
6
chuxh|  楼主 | 2021-6-2 21:22 | 只看该作者

使用特权

评论回复
7
stly| | 2021-6-2 21:25 | 只看该作者
定义更大的数组报错,链接应该不通过,ram太小。stm32f103RB好像只有20k内存吧。至于assert,要看上下文,估计FreeRTOS的堆内存不够,任务的栈空间又分配的太大。

使用特权

评论回复
8
ousj| | 2021-6-2 21:28 | 只看该作者

樓主搞清楚出錯提示信息,是RAM溢出了
跟你的FLASH沒半毛錢關係

使用特权

评论回复
9
morrisk| | 2021-6-2 21:29 | 只看该作者
楼上这位是高手,一眼看到病根了。

使用特权

评论回复
10
houcs| | 2021-6-2 21:32 | 只看该作者
烧录进去跑不动?

使用特权

评论回复
11
zwll| | 2021-6-2 21:33 | 只看该作者
看懂了,根本烧录不进去啊。你用STM32 ST-LINK Utility 擦除后,再烧录试试看,生成HEX文件。

使用特权

评论回复
12
chuxh|  楼主 | 2021-6-2 21:35 | 只看该作者
因为操作系统定义了太大了内存导致RAM不够。这个我明白了。可是卡在configASSERT( xReturn ); 这,

使用特权

评论回复
13
kangzj| | 2021-6-2 21:36 | 只看该作者
有两个任务不能同时开,同时开就卡这。单独开就没事。知道为什么吗?刚学操作系统不是很懂

使用特权

评论回复
14
gongche| | 2021-6-2 21:40 | 只看该作者
能否屏蔽这个断言啊,断言就算卡程序用的。

使用特权

评论回复
15
jlyuan| | 2021-6-2 21:43 | 只看该作者
先确认xReturn是调用哪个函数返回的?

使用特权

评论回复
16
happy_10| | 2021-6-2 21:45 | 只看该作者
再一点点往回走查代码,找到真正原因。

使用特权

评论回复
17
juventus9554| | 2021-6-2 21:48 | 只看该作者
我没看到你代码和上下文,具体也不好多说。

使用特权

评论回复
18
chuxh|  楼主 | 2021-6-2 21:50 | 只看该作者
唉,还是没有什么结果,算了,先结贴吧,多谢大家啦

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

936

主题

11296

帖子

2

粉丝