eric2013 发表于 2020-8-4 11:07:54

判断程序是在中断里面还是在任务里面执行


RTX5的代码里面有提供:


/// Check if in IRQ Mode
/// \return   true=IRQ, false=thread
__STATIC_INLINE bool_t IsIrqMode (void) {
return (__get_IPSR() != 0U);
}

eric2013 发表于 2020-8-5 10:02:24


blackfire531 发表于 2020-8-5 16:21:28

使用库的方式,该怎么调用这个函数?包含这个rtx_core_cm.h头文件提示找不到路径?

eric2013 发表于 2020-8-5 16:39:10

blackfire531 发表于 2020-8-5 16:21
使用库的方式,该怎么调用这个函数?包含这个rtx_core_cm.h头文件提示找不到路径?

直接调用这个__get_IPSR()就行,大于0表示在中断里面,等于0表示中断外。

blackfire531 发表于 2020-8-5 18:24:22

eric2013 发表于 2020-8-5 16:39
直接调用这个__get_IPSR()就行,大于0表示在中断里面,等于0表示中断外。

:handshake

caicaptain2 发表于 2020-8-6 11:48:56

本帖最后由 caicaptain2 于 2020-8-6 16:57 编辑

eric2013 发表于 2020-8-5 16:39
直接调用这个__get_IPSR()就行,大于0表示在中断里面,等于0表示中断外。
页: [1]
查看完整版本: 判断程序是在中断里面还是在任务里面执行