Finsh 言断问题

发布于 2021-04-21 16:11:20    浏览:212
Function[rt_mb_recv] shall not be used in ISR
(0) assertion failed at function:rt_mb_recv, line number:1633 

我有两个任务都是在等待邮箱的,只有开启任务 Finsh就出错

if(rt_mb_recv(&ALARMMbox, (rt_uint32_t *)&ALARMCommand, RT_TICK_PER_SECOND/10) == RT_EOK)
if(rt_mb_recv(&WTH080MODEMbox, (rt_uint32_t *)&WTH080_MODE, RT_TICK_PER_SECOND/50) == RT_EOK)

IAR 8.42紧急求助!

查看更多

4 个回答
mii
mii 2021-04-21
This guy hasn't written anything yet

Function[rt_mb_recv] shall not be used in ISR.
这个提示你在中断里使用该接收函数。请不要在中断里接收。

yuri
yuri 2021-04-21
This guy hasn't written anything yet

堆栈都开得足够大了2048

flashman2002
flashman2002 2021-04-21
This guy hasn't written anything yet

问题的关键是你在中断函数中的使用会有一定的限制。难道说你在中断中等待邮箱?

cxhxy12345
cxhxy12345 2021-04-21
This guy hasn't written anything yet

你要把你的rt_mb_recv函数调用位置,该函数line number:1633的断言先贴图出来。

撰写答案

请登录后再发布答案,点击登录
关注者
1
被浏览
212

发布
问题

分享
好友

手机
浏览

扫码手机浏览