定时器中断函数内不能调用可以返回参数的函数

2019-10-16 04:30发布

最近在用STM32F103R8T6做一个无刷电机的驱动程序,其中用TIM1高级定时器做了一个定时中断,方便做控制。程序的配置上,定时器1工作正常,如果只是调用普通函数是没有问题的,但是在调用有参数返回的函数的时候,中断函数并没有退出。
程序大概如下:

void TIM1_UP_IRQHandler(void)
{
      if(TIM_GetITStatus(TIM1 , TIM_IT_Update) == SET)
      {
              TIM_ClearITPendingBit(TIM1 , TIM_IT_Update);
              LED_On_Only(LED1);                                            //程序工作正常
              //angle = Get_Angle();                                          //加上这句的时候程序就死中断里面没有出来
      }
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。