- 打卡等级:偶尔看看I
- 打卡总天数:16
- 最近打卡:2025-04-14 09:15:06
已绑定手机
中级会员
- 积分
- 272
|
本帖最后由 stcaimcu 于 2023-3-22 16:02 编辑
问题1:RTX51-Tiny系统中,在中断中要使用 isr_xxx 前缀的系统函数,os_delete_task没有对应的isr_delete_task, os_delete_task能在中断中使用吗?
问题2:如果os_delete_task能在中断中使用,那么,如果中断是在执行被中止的任务时发生的,中断退出后,是返回到被中止的任务中,继续执行后续语句还是被系统调度到其他任务?
想要确定以上问题是因为,在低功耗处理上遇到了问题:
if(要求低功耗条件)
{
//配置中断
...
... <--如果这时候进入中断,而又不想继续进入掉电模式,怎么办!!!
...
//进入掉电模式
PCON | = 2;
NOP(4);
...
}
在满足了 要单片机进入低功耗的条件 后,单片机必须允许(!!!)中断,再进入掉电模式,否则就没法用外部引脚触发唤醒了。
但,此时出现了中断,然后立刻会进入中断处理程序,处理结果是不希望单片机进入掉电模式。
似乎,这时已经无法阻止上述程序的执行了。
如果,把上述程序放在任务当中。中断后执行os_delete_task。中断返回后,不是返回被中断的地方,而是被系统重新调度到其他任务,那么,也许能解决这个问题。
上面的想法能实现吗?
|
|