1,以前虽然用到了中断,但很少用到中断优先级。现在必须有了,比如急停之类的。
http://www.waveshare.net/study/article-641-1.html
抢占优先级是用来判断一个中断是否可以打断另外一个中断的中断服务程序抢先运行。
响应优先级是用来判断抢占优先级相同的几个中断那个中断会优先响应。
中断优先级分组是为了给抢占式优先级和响应优先级在中断优先级寄丛器的四个比特位分配各个优先级数字所占的位数。例如3位用于抢占优先级(优先级有2^3=8种优先级),1位用于响应优先级(优先级有2^1=2种优先级)。
中断服务函数里面就调用了GPIO外部中断处理函数HAL_GPIO_EXTI_IRQHandler(),参数为GPIO_PIN_0,即EXTI0中断。GPIO外部中断处理函数主要就是清除中断标识位,然后调用中断回调函数HAL_GPIO_EXTI_Callback()。我们只需重构中断回调函数,在函数里面添加我们的应用代码即可(程序中为翻转LED1状态)。
如果两个case语句间没有break,则执行完匹配的case语句后,会顺序执行下面的语句,直到遇到break语句或switch结束