硬汉嵌入式论坛

 找回密码
 立即注册
查看: 2666|回复: 3
收起左侧

[FreeRTOS] 中断方式的任务恢复,会卡死在xTaskResumeFromISR()函数

[复制链接]

1

主题

2

回帖

11

积分

新手上路

积分
11
发表于 2018-8-6 14:17:46 | 显示全部楼层 |阅读模式
为什么会这样,小弟上传源码,求大神解解疑惑
啊啊啊.png

Feng-RTOS.rar

6.54 MB, 下载次数: 42

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107220
QQ
发表于 2018-8-6 14:54:04 | 显示全部楼层
出现这个问题是因为你在不受FreeRTOS管理的中断里面调用了FreeRTOS的API。
详情可以看教程第12章:
http://www.armbbs.cn/forum.php?m ... &extra=page%3D1

修改下你FreeRTOSConfig.h文件里面的,如下四个参数改成我的这样,然后试试看
  1. /* The lowest interrupt priority that can be used in a call to a "set priority"
  2. function. */
  3. #define configLIBRARY_LOWEST_INTERRUPT_PRIORITY                        0x0f

  4. /* The highest interrupt priority that can be used by any interrupt service
  5. routine that makes calls to interrupt safe FreeRTOS API functions.  DO NOT CALL
  6. INTERRUPT SAFE FREERTOS API FUNCTIONS FROM ANY INTERRUPT THAT HAS A HIGHER
  7. PRIORITY THAN THIS! (higher priorities are lower numeric values. */
  8. #define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY        0x01

  9. /* Interrupt priorities used by the kernel port layer itself.  These are generic
  10. to all Cortex-M ports, and do not rely on any particular library functions. */
  11. #define configKERNEL_INTERRUPT_PRIORITY                 ( configLIBRARY_LOWEST_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
  12. /* !!!! configMAX_SYSCALL_INTERRUPT_PRIORITY must not be set to zero !!!!
  13. See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */
  14. #define configMAX_SYSCALL_INTERRUPT_PRIORITY         ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
  15.        
复制代码



回复

使用道具 举报

1

主题

2

回帖

11

积分

新手上路

积分
11
 楼主| 发表于 2018-8-11 10:00:47 | 显示全部楼层
eric2013 发表于 2018-8-6 14:54
出现这个问题是因为你在不受FreeRTOS管理的中断里面调用了FreeRTOS的API。
详情可以看教程第12章:
http: ...

FreeRTOS管理的中断?我直接配置的TIM2的中断,能进入中断,可是会卡在那!我要怎么配置中断才算是RTOS管理的中断
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107220
QQ
发表于 2018-8-11 10:11:27 | 显示全部楼层
Howareyou 发表于 2018-8-11 10:00
FreeRTOS管理的中断?我直接配置的TIM2的中断,能进入中断,可是会卡在那!我要怎么配置中断才算是RTOS管 ...

优先学习下我在楼上给你回复的第12章节,务必认真读一下,读完基本就明白了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-21 21:58 , Processed in 0.180760 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表