STM32L152 外部中断配置

发布者:码字奇思最新更新时间:2018-09-08 来源: eefocus关键字:STM32L152  外部中断  配置 手机看文章 扫描二维码
随时随地手机看文章

1、中断配置


以外部中断0,管脚为PA0为例来进行配置


    void SYS_EXTI0Init(void)

    {

    GPIO_InitTypeDef GPIO_InitStructure;

    EXTI_InitTypeDef EXTI_InitStructure;

    NVIC_InitTypeDef NVIC_InitStructure;


    //初始化PA0管脚

    /* Enable GPIOA clock */

    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);//打开PA口时钟

    /* Configure PA0 pin as input floating */

    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//输入

    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;//浮空,不上拉不下拉

    GPIO_InitStructure.GPIO_Pin = KEY_PIN;//管脚

    GPIO_Init(KEY_PORT, &GPIO_InitStructure);//初始化


    /* Enable SYSCFG clock */

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG, ENABLE);

    /* Connect EXTI0 Line to PA0 pin */

    SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOA, EXTI_PinSource0);


    /* Configure EXTI0 line */

    EXTI_InitStructure.EXTI_Line = EXTI_Line0;//中断线0

    EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;//外部中断

    EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;//下降沿触发 

    EXTI_InitStructure.EXTI_LineCmd = ENABLE;

    EXTI_Init(&EXTI_InitStructure);//初始化


    /* Enable and set EXTI0 Interrupt to the lowest priority */

    NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn;//外部中断0类型

    NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x0F;

    NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x0F;

    NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

    NVIC_Init(&NVIC_InitStructure);

}


2、中断服务子程序编写


中断服务子程序的函数名是已经定义好了,在固件库中中断文件中这样子说明: 

这里写图片描述

在startup_stm32l1xx_mdp.s 文件中,中断函数名如下定义:


; External Interrupts

                DCD     WWDG_IRQHandler           ; Window Watchdog

                DCD     PVD_IRQHandler            ; PVD through EXTI Line detect

                DCD     TAMPER_STAMP_IRQHandler   ; Tamper and Time Stamp

                DCD     RTC_WKUP_IRQHandler       ; RTC Wakeup

                DCD     FLASH_IRQHandler          ; FLASH

                DCD     RCC_IRQHandler            ; RCC

                DCD     EXTI0_IRQHandler          ; EXTI Line 0

                DCD     EXTI1_IRQHandler          ; EXTI Line 1

                DCD     EXTI2_IRQHandler          ; EXTI Line 2

                DCD     EXTI3_IRQHandler          ; EXTI Line 3

                DCD     EXTI4_IRQHandler          ; EXTI Line 4

                DCD     DMA1_Channel1_IRQHandler  ; DMA1 Channel 1

                DCD     DMA1_Channel2_IRQHandler  ; DMA1 Channel 2

                DCD     DMA1_Channel3_IRQHandler  ; DMA1 Channel 3

                DCD     DMA1_Channel4_IRQHandler  ; DMA1 Channel 4

                DCD     DMA1_Channel5_IRQHandler  ; DMA1 Channel 5

                DCD     DMA1_Channel6_IRQHandler  ; DMA1 Channel 6

                DCD     DMA1_Channel7_IRQHandler  ; DMA1 Channel 7

                DCD     ADC1_IRQHandler           ; ADC1

                DCD     USB_HP_IRQHandler         ; USB High Priority

                DCD     USB_LP_IRQHandler         ; USB Low  Priority

                DCD     DAC_IRQHandler            ; DAC

                DCD     COMP_IRQHandler           ; COMP through EXTI Line

                DCD     EXTI9_5_IRQHandler        ; EXTI Line 9..5

                DCD     LCD_IRQHandler            ; LCD

                DCD     TIM9_IRQHandler           ; TIM9

                DCD     TIM10_IRQHandler          ; TIM10

                DCD     TIM11_IRQHandler          ; TIM11

                DCD     TIM2_IRQHandler           ; TIM2

                DCD     TIM3_IRQHandler           ; TIM3

                DCD     TIM4_IRQHandler           ; TIM4

                DCD     I2C1_EV_IRQHandler        ; I2C1 Event

                DCD     I2C1_ER_IRQHandler        ; I2C1 Error

                DCD     I2C2_EV_IRQHandler        ; I2C2 Event

                DCD     I2C2_ER_IRQHandler        ; I2C2 Error

                DCD     SPI1_IRQHandler           ; SPI1

                DCD     SPI2_IRQHandler           ; SPI2

                DCD     USART1_IRQHandler         ; USART1

                DCD     USART2_IRQHandler         ; USART2

                DCD     USART3_IRQHandler         ; USART3

                DCD     EXTI15_10_IRQHandler      ; EXTI Line 15..10

                DCD     RTC_Alarm_IRQHandler      ; RTC Alarm through EXTI Line

                DCD     USB_FS_WKUP_IRQHandler    ; USB FS Wakeup from suspend

                DCD     TIM6_IRQHandler           ; TIM6

                DCD     TIM7_IRQHandler           ; TIM7

                DCD     0                         ; Reserved

                DCD     TIM5_IRQHandler           ; TIM5

                DCD     SPI3_IRQHandler           ; SPI3

                DCD     0                         ; Reserved

                DCD     0                         ; Reserved

                DCD     DMA2_Channel1_IRQHandler  ; DMA2 Channel 1

                DCD     DMA2_Channel2_IRQHandler  ; DMA2 Channel 2

                DCD     DMA2_Channel3_IRQHandler  ; DMA2 Channel 3

                DCD     DMA2_Channel4_IRQHandler  ; DMA2 Channel 4

                DCD     DMA2_Channel5_IRQHandler  ; DMA2 Channel 5

                DCD     AES_IRQHandler            ; AES

                DCD     COMP_ACQ_IRQHandler       ; Comparator Channel Acquisition


使用上面的对应的中断函数名来编写相对应的程序


关键字:STM32L152  外部中断  配置 引用地址:STM32L152 外部中断配置

上一篇:STM32 IAP实现流程
下一篇:STM32L152 RTC 日历和定时中断使用

推荐阅读最新更新时间:2024-03-16 16:13

51单片机TMOD及定时器配置
一,TMOD的配置 1.定时模式GATE=0 TMOD=0X01(T0工作方式1) TMOD=0X02(T0工作方式2) TMOD=0X10 (T1工作方式 1) TMOD=0X20 (T1工作方式2) 2.计数模式GATE=0
[单片机]
51单片机TMOD及定时器<font color='red'>配置</font>
MSP432滴答定时器(SysTick)说明和配置
MSP432是 TI 的一款基于 arm cortex-M4 内核的 32 位低功耗处理器。低功耗表现十分优越。但是由于上市的时间较短,网上能查找到的相关资料是极其稀少的。所以作者想在此分享一些MSP432的相关学习经验。 首先要学习使用MSP432必需要有一份很重要的官方文档: 所有关于 432 这款芯片的技术问题都可以从中找到解决方法,当然前提是能看懂,目前还没有发现有中文版的。 好了,接下来就直奔这篇文章的主题滴答定时器了。 MSP432的滴答定时器实质就是一个 24 位的自减计数器,在参考文档 2.2.1(P70)可以找到相关说明。 Cortex-M4 includes an integrated sy
[单片机]
三星S7 edge配置曝光 相机加入黑科技
    已经迈入2016年,各手机厂商新一轮旗舰大战马上就要拉开帷幕了。作为Android阵营的老大,三星旗舰机型S7/S7 edge自然备受关注。今日,网络上疑似有三星S7 edge的配置截图曝光,很是强大。 三星S7 edge配置截图流出   如图所示,这款机型型号为Samsung SM G93XX,拥有曲面侧边,采用5.71英寸2K屏幕,搭载骁龙820处理器,内置4GB运存,前置500万+1220万像素主摄像头。 三星注册Duo Pixel商标     看到这里,也许会有网友疑惑了,后置摄像头规格难道变低了?自然不会。结合之前报道来看,三星这颗后置摄像头很可能是配备了1/2英寸传感器,并且加入了双光电二极管(d
[手机便携]
嵌入式ARM-Linux平台上的编译、配置和运行使用
本文介绍了嵌入式ARM-Linux上的常用应用程序wpa_supplicant(以及wpa_supplicant依赖的libnl和openssl)的编译、配置和运行使用,iw、hostapd等应用的编译和使用。 wpa_supplicant 编译和配置运行 从 https://w1.fi/wpa_supplicant/ (git地址git://w1.fi/hostap.git)下载最新的wpa_supplicant源码压缩包,目前最新的为版本2.5. wpa_supplicant的编译依赖于openssl和libnl库( Netlink Protocol Library Suite (libnl) ),openssl是ssl协议的
[单片机]
联想A6 Note配置j揭秘:联发科P22+4000mAh
近日在flipkart网上商店中,联想A6 Note手机的配置已经完全公布,采用联发科MTK Helio P22处理器。 据flipkart购物网站信息了解到,联想A6 Note具有蓝色和黑色两种配色,采用了6.09英寸水滴屏,屏占比为88%,宽高比为19.5:9;采用4000mAh的电池,官方称可以使用大约两天。   在硬件方面,联想A6 Note手机搭载联发科MTK Helio P22处理器,运行Android 9 Pie操作系统。存储空间有16 GB和32 GB两个版本,内存为2GB。摄像方面为后置双摄,为1300万像素+200万像素组合,前置摄像头为500万像素。   据此前了解,联想官方宣布,联想Z6 Pr
[手机便携]
5.5KW电机应该配置多大的交流接触器?
交流接触器在电机控制电路当中应用非常的广泛,可以毫不夸张的说:大部分的电机电力拖动都离不开交流接触器的控制,提起交流接触器,相信很多的电工师傅们都很熟悉,并且经常使用和维修,但是提起如何给电机或者其他设备选择合适的相匹配的交流接触器,相信很多的电工师傅都不清楚,今天我们就重点来看看如何给电机选择合适的交流接触器: 首先来对交流接触器做一个基本认识: 解释:图片上方为电动机的额定功率~工作电流~交流接触器的型号规格,三者是一一对应的!例如:15KW的电机,工作电流大概为30A,我们可以选用CJX2–4010的交流接触器。 每一个交流接触器都有一个型号规格 下面我们来看一下具体的计算方法: 一,首先我们需要根据电动机的功率来计
[嵌入式]
5.5KW电机应该<font color='red'>配置</font>多大的交流接触器?
芯片盗版终结者 非法拷贝有望受抑制
  通过要求各种芯片在使用以前经由一种闭锁和密钥机制被安全地激活,反盗版配置减少了非法拷贝集成电路的机会。通过把加密的模块添加至各种芯片之中,专利持有者可能要求在新制造出来的芯片开始工作之前先被激活。   “在电子行业中,有计划的解剖微电子芯片正成为一种越来越严重的问题,”密歇根大学的教授Igor Markov表示,“我们的配置并不是无法拷贝的,但是,它确保购买许可且合法地生产芯片要比伪造芯片的成本更低。”   这种技术的工作原理是,把一种加密模块加入芯片之上以闭锁该芯片,只有通过电子方式插入正确的密钥,这颗芯片才能发挥作用。激活过程可以通过原始设备制造商的测试仪来执行,该测试仪需要被连接至互联网。通过这种办法,采用盗窃的蓝图
[焦点新闻]
形成单输出滤波器的PC配置RLC谐振器
本期"设计实例"栏目介绍的一种低功耗仪器用的通用滤波器电路,你可以使用并行端口通过PC 对它进行编程。这种滤波器电路不用数字式电位器而使用模拟开关和锁存器来进行数字控制(图1和图2)。只要在PC上运行简单的软件代码,你就可以配置出一种可靠的设计,用作低通滤波器、高通滤波器或带通滤波器,并且还可以选择所需的中心频率ω0(表1)。与类似的可控制设计(参考文献1)不同的是,这一设计是一种每次只有一个输出的滤波器。很多对功耗敏感的系统并不需要同时滤波功能。   这一设计的论据是串联RLC谐振器可通过其元件提供不同滤波功能。由于这一设计基于RLC部件,所以把它转换成PC控制的谐振器并不重要。 在图1中,电感LP是作为一个PC控制的
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved