• STM32--EXTI外部中断


    一、中断概念

    二、EXTI简介

    相同的Pin不能同时触发中断:比如PA0和PB0不能同时使用;

    三、STM32中断

    中断向量表:

    程序中中断函数的地址是由编译器来分配的,是不固定的。但中断的跳转,由于硬件的限制,只能跳转到固定的地址执行程序。所以为了能让硬件跳转到一个不固定的中断函数中,就需要在内存中定义一个地址的列表,这个列表地址是固定的。中断发生后,就跳转到这个固定的位置,在这个位置由编译器再加上一条跳转到中断函数的代码,这样中断跳转就可以跳到任意位置。

    四、NVIC基本结构

    NVIC:嵌套中断向量控制器。用来统一分配中断优先级和管理中断。NVIC会根据每个中断的优先级分配中断的先后顺序然后交给到CPU处理。

    NVIC优先级分组

    NVIC的中断优先级由优先级寄存器的4位(0~15)决定,这4为可以进行切分,分为高n位的抢占优先级和低4-n位的响应优先级;

    抢占优先级高的可以中断嵌套,响应优先级高的可以优先排队,抢占优先级和响应优先级均相同的按照中断号排队;

    数字越小,等级越高

    五、EXTI基本结构

    AFIO中断引脚选择:可以在前面GPIO外设的16个引脚里选择其中一个连接到后面的EXTI通道里;

    本来20路输出应该有20路中断的输出,但为了节省资源,将外部中断的9~5和15~10分到一个通道中了,也就是说外部中断的9~5和15~10会触发同一个中断函数,在编程中,我们在这两个中断函数中根据具体标志来区分到底是哪个中断进来的即可

    其他外设指的是事件响应触发其他外设等。

  • 相关阅读:
    [网络工程师]-网络层协议-IPv6协议
    阿里云服务器使用经验总结
    [Redis]Zset类型
    阿里巴巴 Github 星标 57.9KJava 面试突击汇总(全彩版)首次公开
    【2023 睿思芯科 笔试题】~ 题目及参考答案
    Ubuntu快速更换源
    Mybatis-多表操作
    为什么重写 equals() 就一定要重写 hashCode() 方法
    [附源码]java毕业设计基于J2EE的购物网站
    Unity UGUI(二)核心组件
  • 原文地址:https://blog.csdn.net/m0_74800695/article/details/136153359