中断处理函数啥时候被调用,主函数里也没有调用它啊void TIM3_IRQHandler(void ),还是说自动就调用了

发布网友 发布时间:2022-04-23 08:49

我来回答

2个回答

热心网友 时间:2023-10-08 22:45

外部中断执行过程中,只要定时中断能产生并且能进入定时中断子程序,定时器就可以计数,这跟你设置的中断优先级有关系。你的这段程序里好像没有体现中断优先级。如果定时器中断的优先级高于外部中断,这样就可以,否则就不行。举个简单的例子:执行中断好比一位老师讲课,没有设置中断优先级(默认设置)的犹如两个班的学生,老师讲课当然要按顺序一个一个来讲。但是如果设置了中断优先级,那么优先级高的就会被优先处理,当正在讲课(正在处理优先级低的任务)时突然校长在门外敲门找老师(校长的优先级比较高),所以老师就会停止给学生讲课去处理校长的事情,等处理完了再回来继续给学生讲课。

热心网友 时间:2023-10-08 22:45

自动执行了!因为你在主函数里调用了定时器(TIM3),在你把void TIM3_IRQHandler(void )写入程序的前提下,自动执行了!

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com