EXTI外部中断

EXTI  external interrupt  event control 外部中断事件控制器

1)EXTI就是可以将IO口的电平变化(上升/下降沿)转化成一个中断或者事件

2)F429的EXTI由23条线,其中EXTI0-15是配置GPIO的,通过SYSCFG进行EXTI的配置,其余七条是特定的连接

3)EXTI框图

从输入线进入后会进行边缘检测电路,这时配置上升沿触发选择/下降沿寄存器来确认是上升沿/下降沿有效

即配置EXTI_RTSR/EXTI_FTSR

从输入线开始,边沿检测电路一直在检测电平的变化,我们通过上面两个寄存器来控制是上升沿触发还是下降沿触发,边沿

检测以输入线作为信号输入端,如果检测到有边沿跳变就输出有效信号1给下一个电路,否则为0。

接下来经历了或门,它输入的是刚刚边沿跳变的有效信号,另外一个输入来自软件中断事件寄存器

(EXTI_SWIER)。EXTI_SWIER这个寄存器允许我们通过程序控制就可以启动中断/事件线。我们使用的是或门,所以这两

个输入任意一个有效信号1就可以进行下一步。

接下来是沿着上方来到了与门,它一个输入来自刚刚的或门,另外一个输入来自于中断屏蔽寄存器(EXTI_IMR)。与门电路

要求输入都为1才输出1。所以我们可以使用EXTI_IMR来实现是否产生中断的目的。这个电路的输出信号会被保存到挂起寄

存器(EXTI_PR)内,如果确定该电路输出为1,则EXTI_PR=1;

最后是,EXTI_PR寄存器内容输出到NVIC内,从而实现系统中断事件控制。

4) 初始化EXTI结构体

5)编程顺序---以按键中断为例,将PA0按键1 配置成按键中断

a.配置GPIO的初始化结构体

b.配置NVIC初始化结构体

c.EXTI配置

d.主函数的编写

作业:

由于按键2在挑战者板子上的 GPIO引脚是PC13,所以应该用EXTI13,这里要注意!!!!

我们翻看手册发现

EXTI13是包含在EXTI15_10中的,我们再去启动文件查看

可以知道,EXTI13的中断服务函数的名字也是15_10,这里坑比较大,之后一定要注意!!

而EXTI_Line13是真实存在的可以直接写13

STM32F429 之EXTI外部中断相关推荐

  1. 28.EXTI外部中断原理与配置

    EXTI外部中断原理与配置 参考资料 开发板配套资料 <STM32Fx开发指南-HAL库版本>-第x章 外部中断实验 STM32Fxxx官方资料: <STM32Fxx中文参考手册&g ...

  2. 02、【江科大自化协stm32F103c8t6】笔记之【入门32单片机及EXTI外部中断初始化参数配置】

    ----------接着上一篇笔记写 四.返回值函数 五.EXTI外部中断 1.配置RCC 2.配置GPIO 3.配置AFIO 4.配置EXTI 5.配置NVIC 中断函数 四.返回值函数 uint8 ...

  3. STM32笔记——EXTI外部中断

    目录 一.概述 二.主要外设介绍 2.1 AFIO复用IO口 2.2 EXTI简介 EXTI框图: 2.3 NVIC中断优先级分组 三.EXTI外部中断整体结构 四.实验程序 4.1 对射式红外传感器 ...

  4. STM32学习笔记(三)丨中断系统丨EXTI外部中断(对射式红外传感器计次、旋转编码器计次)

    本篇文章包含的内容 一.中断系统 1.1 中断的定义 1.2 中断优先级 1.3 中断的嵌套 1.4 STM32中的中断系统 1.4.1 STM32的中断资源 1.4.2 嵌套中断向量控制器 NVIC ...

  5. 【MM32F5270开发板试用】GPIO输入+EXTI外部中断例程demo试用

    本篇文章来自极术社区与灵动组织的MM32F5270开发板评测活动,更多开发板试用活动请关注极术社区网站.作者:Zeee 前言: 首先,感谢灵动微电子与极术社区给予宝贵的试用机会.借助本次对Plus-F ...

  6. STM32 EXTI外部中断/事件

    一.EXTI外部中断/事件功能框图 1.中断线路:①-②-③-④-⑤ ①输入线:有19个中断/事件输入线(联网型有20个),通过寄存器将这些输入线设置为任意一个GPIO. ②边沿检测电路:选择上升沿触 ...

  7. STM32中断—EXTI外部中断

    5. 中断 本文来自于<STM32--江科大>的笔记整理. 中断系统 中断:在主程序运行过程中,出现了特定的中断触发条件(中断源),使得CPU暂停当前正在运行的程序,转而去处理中断程序,处 ...

  8. STM32(五)——EXTI外部中断

    文章笔记源于--江科大自化协的视频 一. 中断系统 中断 : 在主程序运行过程中,出现特定的中断触发条件,使得CPU暂停当前正在运行的程序,而去处理中断程序,完成后,又返回原来被暂停的位置继续工作 中 ...

  9. STM32 EXTI外部中断及NVIC的抢占优先级和响应优先级解释

    1.中断类型 从之前的串口实验可以看出,STM32总共分为内部中断和外部中断,内部和外部的配置差别不是很大,外部中断只是多了一步,需要通过 GPIO_EXTILineConfig(uint8_t GP ...

  10. STM32学习笔记——EXTI外部中断,光敏传感器控制LED灯

    中断系统 中断:在主程序运行过程中,当出现了特定的中断触发条件,CPU就可以暂停当前正在运行的程序去处理中断程序,并把当前程序的地址压入堆栈,中断程序处理完成后把地址弹出堆栈,回到刚刚暂停的位置继续执 ...

最新文章

  1. 今日SGU 5.25
  2. java 线程组和线程_Java多线程 线程组原理及实例详解
  3. Vue2+VueRouter2+webpack 构建项目实战(四)接通api,先渲染个列表
  4. 自动化测试用例设计原则
  5. 读 《CSharp Coding Guidelines》有感
  6. java 排列3_java中的三大排序算法
  7. [转载](热议)“我不伟大”,但可以让善良“春暖花开”
  8. 多线程的那点儿事(之无锁队列)
  9. Bitmap简单使用及简单解析
  10. Redis系列之key操作命令与Redis中的事务详解(六)
  11. redis 集群_Redis集群部署
  12. sizeof和strlen区别
  13. CM安装部署介绍说明-尚硅谷大数据培训
  14. sir模型初始值_SIR 模型笔记
  15. 七大江河水系--长江(一)
  16. asp.net1050-消防车辆维修保养辅助系统#毕业设计
  17. B. Luxurious Houses
  18. 使用expdp和impdp导出导入本地oracle数据.dmp文件
  19. Element UI是什么?基本用法
  20. dddd带带弟弟OCR识别验证码

热门文章

  1. 《数字图像处理》实验二
  2. 推荐一款个人感觉比较舒服的idea主题
  3. 华为HCNA认证---简介及资源
  4. js将人民币小写金额转换为大写
  5. python——基于Pandas读取asc文件并保存为csv格式
  6. Ubuntu 环境搭建系列--ubuntu20.04 tftp服务搭建
  7. Mac上双系统中Windows无法使用苹果鼠标键盘,如何处理
  8. python库之SnowNLP(自然语言处理)
  9. android 汉字 转 拼音首字母,Android开发之拼音转换工具类PinyinUtils示例
  10. MySql优化面试题