打印

为什么stm32f4的PB口进不了中断

[复制链接]
1517|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wwchang|  楼主 | 2013-8-16 17:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
//初始化
GPIO_InitTypeDef Gpio_strcut;
  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA|RCC_AHB1Periph_GPIOB,ENABLE);
  Gpio_strcut.GPIO_Pin = GPIO_Pin_6;
  Gpio_strcut.GPIO_Mode = GPIO_Mode_IN;
  Gpio_strcut.GPIO_PuPd = GPIO_PuPd_NOPULL;
  GPIO_Init(GPIOB, &Gpio_strcut);

//中断配置
        EXTI_InitTypeDef EXTI_InitStructure;
  NVIC_InitTypeDef NVIC_InitStructure;
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG, ENABLE);
        SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOB, GPIO_Pin_6);
        EXTI_InitStructure.EXTI_Line = EXTI_Line6;
        EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;   
        EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;
        EXTI_InitStructure.EXTI_LineCmd = ENABLE;
        EXTI_Init(&EXTI_InitStructure);

        NVIC_InitStructure.NVIC_IRQChannel = EXTI9_5_IRQn;
        NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0x00;//ÓÅÏȼ¶×îµÍ
        NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0x0F;
        NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
        NVIC_Init(&NVIC_InitStructure);

//中断响应函数
void EXTI9_5_IRQHandler(void)
{
        if(EXTI_GetITStatus(EXTI_Line6) != RESET)
        {
                delay_us(500);
                if(EXTI_GetITStatus(EXTI_Line6) != RESET)
                {
                        EXTI_ClearITPendingBit(EXTI_Line6);
                }
        }
}
沙发
wwchang|  楼主 | 2013-8-16 21:52 | 只看该作者
自己已经解决

使用特权

评论回复
板凳
Eric2013| | 2013-8-17 11:01 | 只看该作者
中断里面加延时的习惯一定要改掉

使用特权

评论回复
地板
mmuuss586| | 2013-8-17 11:04 | 只看该作者
是的。中断程序尽量简洁

使用特权

评论回复
5
墨如风0205| | 2013-9-15 15:43 | 只看该作者
请问你的是什么问题导致进不去中断呢?我写的程序也不好使

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:PC端视觉检测系统,ST芯片,TI芯片的开发,以及嵌入式和DSP研究。公司主要产品:机器视觉瑕疵系统

31

主题

247

帖子

3

粉丝