一 什么是外部中断
外部中断是单片机实时地处理外部事件的一种内部机制。当某种外部事件发生时,单片机的中断系统将迫使CPU暂停正在执行的程序,转而去进行中断事件的处理;中断处理完毕后.又返回被中断的程序处,继续执行下去。
比如你正在家里看电视,而燃气炉上正在烧的热水已经沸腾,你听到了热水沸腾的声音,那么此时此刻你就要暂停你正在看电视的状态,转身去关闭煤气灶。也就是说热水烧开了这一个请求迫使你停止正在进行的动作而产生响应,响应完成以后再次回归看电视的状态,那么热水烧开了就是一个中断时间。
二 中断产生原理
一般来说单片机在无时无刻的运行自己的闭环死循环程序,但是在突然有一个时刻,需要对外界的因素变化做出响应,比如按键按下了以后我的LED灯要被点亮,单片机内部自主运行的程序就会被暂时打断,转而去执行相应的中断处理程序,执行完后又回到原来中断的地方继续执行原来的程序。一般来说触发中断响应的信号都来自于IO口,IO口的高低电平会给单片机一个信号,证明此时此刻我给你触发了,你要做出响应。这个引脚上的电平变化,就申请了一个外部中断事件,而这个能申请外部中断的引脚就是外部中断的触发引脚。
三 STM32的外部中断
STM32的每个IO口都能被作为外部中断的输入使用
STM32的MCU支持19的中断输入:
线0-16:对应外部IO的输入中断
线17:PVD输出
线18:RTC闹钟
线19:USB唤醒事件
每个线都能独立的配置触发方式:上升沿触发,下降沿触发,双边沿触发(上升沿和下降沿均可触发)
外部中断实验
最新推荐文章于 2024-04-13 23:29:23 发布