中级会员
- 积分
- 349
- 金钱
- 349
- 注册时间
- 2016-12-21
- 在线时间
- 141 小时
|
本帖最后由 Chandler1983 于 2020-3-20 15:35 编辑
原子哥& 各位大神,
中断服务管理任务OS_IntQTask();我的理解就是当中断服务函数退出后处理中断里面的内容,减少关中断的时间。请问怎么定义,怎么使用?
例如我在定时中断6里面有一段处理程序,请问怎么样移植到中断管理任务中?
void TIM6_IRQHandler(void) //TIM3中断
{
#ifdef SYSTEM_SUPPORT_OS
OSIntEnter();
#endif
if (TIM_GetITStatus(TIM6, TIM_IT_Update) != RESET) //检查指定的TIM中断发生与否:TIM 中断源
{
TIM_ClearITPendingBit(TIM6, TIM_IT_Update ); //清除TIMx的中断待处理位:TIM 中断源
if(TimeEn)
{
TimerCnt++;
FlashCnt++;
if(FlashCnt<30)
{
LED4_OFF;
} else {
LED4_ON;
if(FlashCnt>99)
FlashCnt=0;
}
}
#ifdef SYSTEM_SUPPORT_OS
OSIntExit();
#endif
}
|
|