error: #20: identifier "EXTI_Initstructure" is undefined

2019-08-11 17:34发布

小弟初学stm32,还望各位大神能指点下。这个问题你好几天了,conf.h里面所有的文件都使能了,照着视频做的,改的也跟例程一样。还是有这个问题。
代码入下:
#include "key.h"
#include "led.h"
#include "sys.h"
#include "delay.h"
#include "exti.h"
//////////////////////////////////////////////////////////////////////////////////  
//本程序只供学习使用,未经作者许可,不得用于其它任何用途
//ALIENTEK mini?STM32开发板
//LED驱动代码   
//正点原子@ALIENTEK
//技术论坛:www.openedv.com
//修改日期:2012/9/2
//版本:V1.0
//版权所有,盗版必究。
//Copyright(C) 广州市星翼电子科技有限公司 2009-2019
//All rights reserved  
//////////////////////////////////////////////////////////////////////////////////   
   
//LED IO初始化
void exti_Init(void)
{
 EXTI_InitTypeDef EXTI_InitStructure;
 NVIC_InitTypeDef NVIC_InitStructure;

 RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO , ENABLE); //使能中断时钟

  KEY_Init();

 /////gpio.c中断线及中断初始化配置
 GPIO_EXTILineConfig(GPIO_PortSourceGPIOC,GPIO_PinSource5);
 EXTI_InitStructure.EXTI_Mode =EXTI_Mode_Interrupt ;//为中断请求
 EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; //下降沿触发
 EXTI_InitStructure.EXTI_LineCmd =ENABLE ; //使能line
 EXTI_Initstructure.EXTI_Line=EXTI_Line5;  //选定line
 EXTI_Init(&EXTI_InitStructure); //中断初始化 */


//////gpioa.15中断线初始化及配置
GPIO_EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource15);
 EXTI_InitStructure.EXTI_Mode =EXTI_Mode_Interrupt ;//为中断请求
 EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; //下降沿触发
 EXTI_InitStructure.EXTI_LineCmd =ENABLE ; //使能line
 EXTI_Initstructure.EXTI_Line=EXTI_Line15 ;  //选定line15
 EXTI_Init(&EXTI_InitStructure); //中断初始化

 ////中断线gpioa。0初始化及配置
GPIO_EXTILineConfig(GPIO_PortSourceGPIOA,GPIO_PinSource0);
 EXTI_InitStructure.EXTI_Mode =EXTI_Mode_Interrupt ;//为中断请求
 EXTI_InitStructure.EXTI_Trigger =  EXTI_Trigger_Falling; //上升沿触发
 EXTI_InitStructure.EXTI_LineCmd =ENABLE ; //使能line
 EXTI_Initstructure.EXTI_Line=EXTI_Line0;  //选定line
 EXTI_Init(&EXTI_InitStructure); //中断初始化


//配置中断优先级

NVIC_InitStructure.NVIC_IRQChannel= EXTI0_IRQn;  
NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE; //使能
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0x02;  //确定抢占优先级
NVIC_InitStructure.NVIC_IRQChannelSubPriority=0x02; //确定响应优先级
NVIC_Init(&EXTI_InitStructure);

/////////////////////
NVIC_InitStructure.NVIC_IRQChannel= EXTI9_5_IRQn;  
NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE; //使能
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=2;  //确定抢占优先级
NVIC_InitStructure.NVIC_IRQChannelSubPriority=0x01; //确定响应优先级
NVIC_Init(&NVIC_InitStructure);

//
NVIC_InitStructure.NVIC_IRQChannel= EXTI15_10_IRQn;  
NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE; //使能
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0x02;  //确定抢占优先级
NVIC_InitStructure.NVIC_IRQChannelSubPriority=0x00; //确定响应优先级
NVIC_Init(&NVIC_InitStructure);
}

void  EXTI0_IRQHandler(void)
{
delay_ms(50) ;
if(WAKEUP==1)
{
LED0=!LED0;
LED1=!LED1;
}
EXTI_ClearITpendingBit(EXTI_Line0);
}

void  EXTI9_5_IRQHandler(void)
{
delay_ms(50) ;
if(KEY0==0)
{
LED0=!LED0;
}
EXTI_ClearITpendingBit(EXTI_Line5);
}

void  EXTI15_10_IRQHandler(void)
{
delay_ms(50) ;
if(KEY1==0)
{
LED1=!LED1;
}
EXTI_ClearITpendingBit(EXTI_Line15);
}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。