为什么中断照着写写不出

2019-07-20 20:01发布

主函数:


#include "stm32f4xx.h"
#include "delay.h"
#include "usart.h"
#include "ledhebeep.h"
#include "exti.h"
#include "anjian.h"
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
delay_init(168);   
uart_init(115200);   
GPIO_INIT();
exti_init();      
LED1=0;         
while(1)
{
   printf("OK ");
  delay_ms(1000);  
}
}
中断文件:
#include"exti.h"
#include"ledhebeep.h"
#include"anjian.h"
void EXTI4_IRQHandler(void)
{
if(KEY0==0)
{
  LED1=!LED1;
  LED2=!LED2;
}
EXTI_ClearITPendingBit(EXTI_Line4);
}
void exti_init(void)
{
  NVIC_InitTypeDef nvic_struct;
EXTI_InitTypeDef exti_struct;
ANJIAN_INIT();
RCC_APB2PeriphClockLPModeCmd(RCC_APB2Periph_SYSCFG,ENABLE);
  
  SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOE,EXTI_PinSource4);

exti_struct.EXTI_Line=EXTI_Line4;
exti_struct.EXTI_LineCmd=ENABLE;
exti_struct.EXTI_Mode=EXTI_Mode_Interrupt;
exti_struct.EXTI_Trigger=EXTI_Trigger_Falling;
  EXTI_Init(&exti_struct);

nvic_struct.NVIC_IRQChannel=EXTI4_IRQn;
nvic_struct.NVIC_IRQChannelCmd=ENABLE;
nvic_struct.NVIC_IRQChannelPreemptionPriority=0x01;
nvic_struct.NVIC_IRQChannelSubPriority=0x02;
NVIC_Init(&nvic_struct);
}

请大神指教。



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
1723068930wm
1楼-- · 2019-07-20 20:43
可能是中断服务函数中消抖问题,表现出没有发生中断,也遇到过,可以试试
企鹅之心
2楼-- · 2019-07-20 21:01
 精彩回答 2  元偷偷看……
xiaokun
3楼-- · 2019-07-20 21:37
 精彩回答 2  元偷偷看……

一周热门 更多>