yiminglei 发表于 2015-9-17 20:24:46

CMSIS RTX 的任务锁和中断锁在哪里?

近期需要使用CMSIS RTX了,使用STM32F030芯片,我想问一下,任务锁和中断锁在哪里呢?谢谢!

eric2013 发表于 2015-9-17 22:12:54

CMSIS-RTOS RTX一直还没有开始用,一直是用的RTX,单独的RTX有个任务锁,没有中断锁,因为RTX内核里没有开关中断来保护临界区。也就是所谓的可以实现零中断延迟。

看了一下CMSIS-RTOS RTX的API,似乎中断锁和任务锁都没有。

yiminglei 发表于 2015-9-18 09:20:21

另外
RTX的
void os_itv_set (U16 interval_time);
void os_itv_wait (void);
在CMSIS-RTOS RTX用什么方法替换呢?

谢谢!

eric2013 发表于 2015-9-18 10:43:17

貌似只有一个函数:

osStatus   osDelay (uint32_t millisec)
   Wait for Timeout (Time Delay).

没有这种绝对延迟函数了。

myxiaonia 发表于 2015-9-18 12:21:41

回 yiminglei 的帖子

yiminglei:另外
RTX的
void os_itv_set (U16 interval_time);
void os_itv_wait (void);
在CMSIS-RTOS RTX用什么方法替换呢?
....... (2015-09-18 09:20) images/back.gif

哈哈amo上也是你问的吧   我还奇怪你怎么想替换掉这个两个区间延时函数

原来你想用cmsis-rtx啊这个我就没研究了

yiminglei 发表于 2015-9-18 16:14:04

回 myxiaonia 的帖子

myxiaonia:哈哈amo上也是你问的吧   我还奇怪你怎么想替换掉这个两个区间延时函数

原来你想用cmsis-rtx啊这个我就没研究了 (2015-09-18 12:21) images/back.gif

是啊,资料太少了。。。

难道其他人还是在STM32F030运行RTX的?。。。

chengying 发表于 2018-11-14 13:45:25

搞出来没?

eric2013 发表于 2018-11-15 00:32:23

chengying 发表于 2018-11-14 13:45
搞出来没?

简单些手动实现,调用裸机的中断开关函数即可。

而RTX5已经增加了:
http://www.armbbs.cn/forum.php?mod=viewthread&tid=85578&extra=page%3D1%26filter%3Dtypeid%26typeid%3D83
页: [1]
查看完整版本: CMSIS RTX 的任务锁和中断锁在哪里?