• 大小: 2.66MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-08-11
  • 语言: 其他
  • 标签: proteu  仿真  stm32f  

资源简介

下降沿或者上升沿实现外部中断,控制LED的闪烁,下载即可使用,最好使用proteus8.6或者更高版本打开。亲测可用。

资源截图

代码片段和文件信息

#include “exti.h“
#include “led.h“
#include “key.h“
#include “misc.h“
#include “stm32f10x_exti.h“
#include “pbdata.h“
#include “lcd1602.h“
//////////////////////////////////////////////////////////////////////////////////  
//本程序只供学习使用,未经作者许可,不得用于其它任何用途
//Mini STM32开发板
//外部中断 驱动代码    
//正点原子@ALIENTEK
//技术论坛:www.openedv.com
//修改日期:2010/12/01  
//版本:V1.0
//版权所有,盗版必究。
//Copyright(C) 正点原子 2009-2019
//All rights reserved   
//////////////////////////////////////////////////////////////////////////////////    
 
int flag;
int flag1;
//外部中断初始化函数
void EXTIX_Init(void)
{
 
    EXTI_InitTypeDef EXTI_InitStructure;
    NVIC_InitTypeDef NVIC_InitStructure;

   RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIOENABLE);//外部中断,需要使能AFIO时钟

  KEY_Init();//初始化按键对应io模式

    //GPIOC.5 中断线以及中断初始化配置
   GPIO_EXTILineConfig(GPIO_PortSourceGPIOAGPIO_PinSource9);

   EXTI_InitStructure.EXTI_Line=EXTI_Line9;
   EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
   EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;//下降沿触发
   EXTI_InitStructure.EXTI_LineCmd = ENABLE;
   EXTI_Init(&EXTI_InitStructure);   //根据EXTI_InitStruct中指定的参数初始化外设EXTI寄存器

    //GPIOA.15   中断线以及中断初始化配置
   GPIO_EXTILineConfig(GPIO_PortSourceGPIOAGPIO_PinSource15);

   EXTI_InitStructure.EXTI_Line=EXTI_Line15;
   EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
   EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;
   EXTI_InitStructure.EXTI_LineCmd = ENABLE;
   EXTI_Init(&EXTI_InitStructure);    //根据EXTI_InitStruct中指定的参数初始化外设EXTI寄存器

    //GPIOA.0   中断线以及中断初始化配置
   GPIO_EXTILineConfig(GPIO_PortSourceGPIOAGPIO_PinSource0);

    EXTI_InitStructure.EXTI_Line=EXTI_Line0;
   EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
   EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising;
   EXTI_InitStructure.EXTI_LineCmd = ENABLE;
   EXTI_Init(&EXTI_InitStructure); //根据EXTI_InitStruct中指定的参数初始化外设EXTI寄存器


 
   NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn; //使能按键所在的外部中断通道
   NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x02; //抢占优先级2 
   NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x02; //子优先级1
   NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //使能外部中断通道
   NVIC_Init(&NVIC_InitStructure);     //根据NVIC_InitStruct中指定的参数初始化外设NVIC寄存器

NVIC_InitStructure.NVIC_IRQChannel = EXTI9_5_IRQn; //使能按键所在的外部中断通道
   NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x02; //抢占优先级2, 
   NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x01; //子优先级1
   NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //使能外部中断通道
   NVIC_Init(&NVIC_InitStructure); 
 
 
    NVIC_InitStructure.NVIC_IRQChannel = EXTI15_10_IRQn; //使能按键所在的外部中断通道
   NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x02; //抢占优先级2, 
   NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x00; //子优先级1
   NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //使能外部中断通道
   NVIC_Init(&NVIC_InitStructure); 
 
}

 
void EXTI0_I

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-04-11 15:57  protues仿真stm32f103\
     目录           0  2019-04-11 15:57  protues仿真stm32f103\stm32f103r6仿真\
     文件       21413  2019-04-03 18:47  protues仿真stm32f103\stm32f103r6仿真\Backup Of GPIO口仿真.pdsbak
     文件       21413  2019-04-03 18:47  protues仿真stm32f103\stm32f103r6仿真\GPIO口仿真.pdsprj
     文件       14265  2019-04-03 18:47  protues仿真stm32f103\stm32f103r6仿真\GPIO口仿真.pdsprj.asus.asus1.workspace
     文件       14158  2018-04-26 13:07  protues仿真stm32f103\stm32f103r6仿真\GPIO口仿真.pdsprj.DESKTOP-332UV6A.happy.workspace
     文件       14486  2018-12-19 17:03  protues仿真stm32f103\stm32f103r6仿真\GPIO口仿真.pdsprj.USER-RA1K2PVR24.Administrator.workspace
     文件       14265  2017-05-08 14:05  protues仿真stm32f103\stm32f103r6仿真\GPIO口仿真.pdsprj.ZL.Liang.workspace
     文件       20856  2019-04-02 19:41  protues仿真stm32f103\stm32f103r6仿真\Last Loaded GPIO口仿真.pdsbak
     文件        4032  2018-04-26 11:01  protues仿真stm32f103\stm32f103r6仿真\STM32F103R6Demo.hex
     目录           0  2019-04-11 15:57  protues仿真stm32f103\外部中断例程\
     目录           0  2019-04-11 15:57  protues仿真stm32f103\外部中断例程\ASM\
     文件       10308  2008-09-21 13:21  protues仿真stm32f103\外部中断例程\ASM\cortexm3_macro.s
     文件       15761  2010-04-23 10:40  protues仿真stm32f103\外部中断例程\ASM\startup_stm32f10x_cl.s
     文件       15503  2019-04-02 19:42  protues仿真stm32f103\外部中断例程\ASM\startup_stm32f10x_hd.s
     文件       12376  2011-03-10 10:52  protues仿真stm32f103\外部中断例程\ASM\startup_stm32f10x_ld.s
     文件       13651  2010-04-23 10:40  protues仿真stm32f103\外部中断例程\ASM\startup_stm32f10x_ld_vl.s
     文件       12765  2011-03-10 10:52  protues仿真stm32f103\外部中断例程\ASM\startup_stm32f10x_md.s
     文件       14068  2010-04-23 10:40  protues仿真stm32f103\外部中断例程\ASM\startup_stm32f10x_md_vl.s
     文件       15950  2010-04-23 10:40  protues仿真stm32f103\外部中断例程\ASM\startup_stm32f10x_xl.s
     文件        9630  2009-11-21 17:22  protues仿真stm32f103\外部中断例程\ASM\stm32f10x_startup.s
     文件        3941  2019-04-03 18:39  protues仿真stm32f103\外部中断例程\core_cm3.crf
     文件          93  2019-04-03 18:39  protues仿真stm32f103\外部中断例程\core_cm3.d
     文件       11236  2019-04-03 18:39  protues仿真stm32f103\外部中断例程\core_cm3.o
     目录           0  2019-04-11 15:57  protues仿真stm32f103\外部中断例程\DebugConfig\
     文件        2403  2017-11-23 15:41  protues仿真stm32f103\外部中断例程\DebugConfig\LY-STM32_STM32F103VE_1.0.0.dbgconf
     文件        2403  2017-11-23 15:41  protues仿真stm32f103\外部中断例程\DebugConfig\LY-STM32_STM32F103ZE_1.0.0.dbgconf
     文件         289  2019-04-01 21:43  protues仿真stm32f103\外部中断例程\delay.crf
     文件          60  2019-04-01 21:43  protues仿真stm32f103\外部中断例程\delay.d
     文件        7820  2019-04-01 21:43  protues仿真stm32f103\外部中断例程\delay.o
     文件      238873  2019-04-03 18:39  protues仿真stm32f103\外部中断例程\dth11.crf
............此处省略168个文件信息

评论

共有 条评论