STM32开发笔记:中断

 一、中断系统

        中断:在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序,处理完成后又返回原来被暂停的位置继续运行。

        中断优先级:当有多个中断源同时申请中断时,CPU会根据中断源的轻重缓急进行裁决,优先响应更加紧急的中断源。

        中断嵌套:当一个中断程序正在运行时,又有新的更高优先级的中断源申请中断,CPU再次暂停当前中断程序,转而去处理新的中断程序,处理完成后依次进行返回。

中断流程图: 

ba52eaa87dd741ada654dff684a62aa0.png

 二、STM32中断

        在STM32中,NVIC(Nested Vectored Interrupt Controller)是一个用于管理中断的嵌套向量中断控制器。它统一管理了68个可屏蔽中断通道,涵盖了多个外设模块,如EXTI、TIM、ADC、USART、SPI、I2C、RTC等。

        每个中断通道都有16个可编程的优先级。为了更好地管理这些中断,可以对优先级进行分组,并设置抢占优先级和响应优先级。通过设置不同的优先级,可以确定中断的触发顺序和处理方式。

        NVIC类似于一个中断调度器,负责管理所有中断请求,并根据优先级和分组配置决定中断的触发和处理顺序。每个中断通道可以装载最多16个中断,当中断事件发生时,NVIC会根据优先级和分组设置决定哪个中断将被优先处理。

        通过使用NVIC,可以实现灵活的中断管理机制,确保高优先级中断能够及时响应。

ee7572ae6df94240a5c943a899b0c0a8.png

939dabea13574b678bc442953b3822c9.png 

3a98e9dd1dd144559cf9b4c0669e6905.png 

 b0edc79d8ee142a9a8f259bd36cf452c.png

 NVIC基本结构2a46f761ea02422695bf5d0e566f0b64.png

 

统中断系统

猜你喜欢

转载自blog.csdn.net/A125679880/article/details/131751843