中断里面不要加延时,1ms都不行
延时代码也用的是定时器,重复的中断触发,使MCU不知道相应哪一个中断,有一种原始的方法:入中断之后关中断,然后延时判断,执行,开中断(但在HAL库里面使用HAL_TIM_Base_Start_IT(&htim3);和HAL_TIM_Base_Stop_IT(&htim3);没法实现,亲测不行)
解决办法
:一般中断里面都是置标志位,然后主循环写函数
因为我需要每隔几分钟发一次短信,之前一直想用定时器中断(里面加延时)来弄,结果程序直接卡死,最终解决办法也是如红字所说,弄了一个标志位
中断(如果有中断就直接GG)执行完成之前,主循环不能运行。处于暂停状态。