新闻中心

EEPW首页>嵌入式系统>设计应用> STM32学习笔记——外部中断EXTI

STM32学习笔记——外部中断EXTI

作者: 时间:2016-11-28 来源:网络 收藏

学习笔记

本文引用地址://m.amcfsurvey.com/article/201611/322884.htm

forSTM32F103C8

redesignedbyzhangbin

2012-10-30

versions:V-0.1

AllRightsReserved

main.c如下,注释的比较详细,把下面的例子即说明都看明白基本上就可以用了:

//抢占级别高的会打断其他中断优先执行,而响应级别高的会在其他中断执行完优先执行。

//EXTI:外部中断/事件控制器

//EXTI控制器可以产生高达19个软件事件/中断请求

//将19根线配置为中断源,将19根线配置为事件源,将19根线配置为软件中断/事件线,详见《STM32F103xxx使用手册》

//P135

//在这个文件中主要是进行各种初始化配置,包括GPIO配置、EXTI配置、系统时钟配置等

//中断服务程序则在stm32f10x_it.c文件中,该文件提供所有异常处理程序和外围中断服务程序的模板,详见该文件

#include"stm32f10x_lib.h"

EXTI_InitTypeDefEXTI_InitStructure;//定义外部中断初始化结构体变量内部含有4个成员详见EXTI_InitTypeDef的定义

ErrorStatusHSEStartUpStatus;//定义错误状态变量,是枚举类型

voidRCC_Configuration(void);

voidGPIO_Configuration(void);

voidNVIC_Configuration(void);

intmain(void)

{

#ifdefDEBUG

debug();

#endif

RCC_Configuration();//系统时钟配置

NVIC_Configuration();//NVIC配置

GPIO_Configuration();//配置GPIO

//STM32的外部中断不是固定的,是可以映射的。如EXTI6既可以映射到PB6也可以映射到PA6,详见外部中断/事件与GPIO的映射关系

//将IO端口注册至中断线(将IO口映射到中断线N)

//

GPIO_EXTILineConfig(GPIO_PortSourceGPIOB,GPIO_PinSource6);//选择GPIO管脚用作外部中断线路

//第一个参数选择用作外部中断线源的GPIO端口第二个参数是待设置的外部中断线路,可以是GPIO_PinSourcex(x可以0~15)


上一页 1 2 3 下一页

评论


技术专区

关闭