EXTI—外部中断事件控制器
2016-07-04 18:14
162 查看
外部中断概述
STM32F4的每个IO都可以作为外部中断输入。
STM32F4的中断控制器支持22个外部中断/事件请求:
从上面可以看出,STM32F4供IO使用的中断线只有16个,但是STM32F4XX系列的IO口多达上百个,那么中断线怎么跟IO口对应呢?
可以看出GPIOx.0映射到EXTI0
GPIOx.1映射到EXTI1
...
GPIOx.15映射到EXTI15
同一个中断线在某一时刻,只能映射一个对应的GPIO口的某个脚。
那么有16跟中断线,是否就对应有16个中断服务函数呢?
答案是不是的!
IO口外部中断在中断向量表中只分配了7个中断向量,也就是只能使用7个中断服务函数。
可以看出,外部中断线5-9分配一个中断向量,共用一个服务函数,外部中断10-15分配一个中断向量,共用一个中断服务函数。
bsp_exti.h文件
#ifndef __BSP_EXTI_H #define __BSP_EXTI_H
#include "stm32f4xx.h"
void EXTI_Key_Config(void);
#endif
bsp_exti.c文件
#include "bsp_exti.h"
1、EXTI 功能框图
STM32F4的每个IO都可以作为外部中断输入。
STM32F4的中断控制器支持22个外部中断/事件请求:
从上面可以看出,STM32F4供IO使用的中断线只有16个,但是STM32F4XX系列的IO口多达上百个,那么中断线怎么跟IO口对应呢?
可以看出GPIOx.0映射到EXTI0
GPIOx.1映射到EXTI1
...
GPIOx.15映射到EXTI15
同一个中断线在某一时刻,只能映射一个对应的GPIO口的某个脚。
那么有16跟中断线,是否就对应有16个中断服务函数呢?
答案是不是的!
IO口外部中断在中断向量表中只分配了7个中断向量,也就是只能使用7个中断服务函数。
可以看出,外部中断线5-9分配一个中断向量,共用一个服务函数,外部中断10-15分配一个中断向量,共用一个中断服务函数。
bsp_exti.h文件
#ifndef __BSP_EXTI_H #define __BSP_EXTI_H
#include "stm32f4xx.h"
void EXTI_Key_Config(void);
#endif
bsp_exti.c文件
#include "bsp_exti.h"
1、EXTI 功能框图
相关文章推荐
- java:File.deleteOnExit()实现分析塈用于多级目录时的讲究
- 使用Abator自动生成ibatis的DAO.Model.mapper.xml方法使用说明
- hiho一下第一周
- C++中public,protected,private访问
- AVL树
- 将JSON转换成MAP的工具类
- 我爱我家:我为什么选择AppCan?
- javaScript--02 CSS基础 下 相对定位,绝对定位,顺序流,z-index,float
- 一些常用的Intent_ACTION以及属性
- Crossfilter总结
- 建造者模式的简写方式分析
- 文本导出到pdf文件
- linux 启动 关闭 防火墙
- Qt: GIF图片播放器(QMovie类)
- tableView侧边栏索引
- Post请求传递参数时,最好在请求头加上item.ContentType = "application/x-www-form-urlencoded";
- css用背景图来替换文字来达到隐藏文字的目的
- 详解spring 每个jar的作用
- mysql-5.7.5-labs-http-documentation中文翻译-第一章 概述
- 我的新博客