STM32-07-外部中断

【STM32系列文章】

STM32-01-认识单片机
STM32-02-基础知识
STM32-03-HAL库
STM32-04-时钟树
STM32-05-SYSTEM文件夹
STM32-06-GPIO
STM32-07-外部中断
STM32-08-串口
STM32-09-IWDG和WWDG
STM32-10-定时器
STM32-11-电容触摸按键
STM32-12-OLED模块
STM32-13-MPU
STM32-14-FSMC_LCD
STM32-15-DMA
STM32-16-ADC
STM32-17-DAC

STM32 中断系统

1. 中断

  • 目的:中断系统是为使CPU具有对外界紧急事件的实时处理能力而设置的。
  • 中断过程:当CPU正在处理某事件的时候外界发生了紧急事件请求 中断发生,要求CPU暂停当前的工作,转而去处理这个紧急事件 中断响应和中断服务,处理完以后,再回到原来被中断的地方,继续原来的工作 中断返回
  • 中断系统:实现中断功能的部件称为中断系统,请求CPU中断的请求源称为中断源。微型机的中断系统一般允许有多个中断源,当几个中断源同时向CPU请求中断,要求它服务的时候,这就存在CPU优先响应哪个中断源请求的问题。因此设置中断优先级,CPU总是先响应优先级别最高的中断请求。
  • 作用与意义
    1. 实时控制
    2. 故障处理
    3. 数据传输

2. NVIC

  • 什么是NVIC?

    Nested vectored interrupt controller 即嵌套向量中断控制器,属于内核。

    支持256个中断,其中包含了16个系统中断和240个外部中断,并且具有256级的可编程中断设置。

    对于STM32F103ZET6的系统中断10个,外部中断60个,16中断优先级

    特性:

    • 68个可屏蔽中断通道
    • 16个可编程的优先等级
    • 低延时的异常和中断处理
    • 电源管理的控制
    • 系统控制寄存器的实现
  • NVIC相关寄存器介绍

    NVIC相关寄存器 位数 寄存器个数 备注
    中断使能寄存器(ISER) 32 8 每个位控制一个中断
    中断失能寄存器(ICER) 32 8 每个位控制一个中断
    应用程序中断及复位控制寄存器(AIRCR) 32 1 位[10:8]控制优先级分组
    中断优先级寄存器(IPR) 8 240 8个位对应一个中断,而STM32只使用高4位
  • 工作原理

    内核中断是不可屏蔽中断,直接由SHPR决定优先级,外部中断过来以后,会首先经过ISERICER寄存器进行使能或者失能,之后由IPR寄存器确定优先级,然后去抢占CPU执行中断。
    在这里插入图片描述

  • 中断优先级

    • 抢占优先级:高抢占优先级可以打断正在执行的低抢占优先级中断
    • 响应优先级:当抢占优先级相同时,响应优先级高的先执行,但是不能互相打断
    • 自然优先级:中断向量表的优先级
    • 抢占和响应优先级相同时,自然优先级高的先执行,数值越小,表示优先级越高
  • 优先级分组

    优先级分组 AIRCR[10:8] IPRx bit[7:4]分配 分配结果
    0 111 None :[7:4] 0位抢占优先级,4位响应优先级
    1 110 [7] :[6:4] 1位抢占优先级,3位响应优先级
    2 101 [7:6] :[5:4] 2位抢占优先级,2位响应优先级
    3 100 [7:5] :[4] 3位抢占优先级,1位响应优先级
    4 011 [7:4] :None 4位抢占优先级,0位响应优先级
  • NVIC的使用

    1. 设置中断分组 SCB_AIRCR
    2. 设置中断优先级 NVIC_IPRx
    3. 使能中断 NVIC_ISER

3. EXTI

  • 什么是EXTI?

    External interrupt/event Controller 即外部中断/事件控制器,由20个产生事件/中断请求的边沿检测器组成,非互联型产品有19个边沿检测器。每个输入线可以独立地配置输入类型和对应的触发事件。每个输入线都可以独立地被屏蔽。挂起寄存器保持着状态线的中断请求。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值