搜索
bottom↓
回复: 4

外部中断进不去

[复制链接]

出0入0汤圆

发表于 2017-2-23 22:05:36 | 显示全部楼层 |阅读模式
  
#include "exti.h"

/**
  * @brief  配置嵌套向量中断控制器NVIC
  * @param  无
  * @retval 无
  */
static void NVIC_Configuration(void)
{
  NVIC_InitTypeDef NVIC_InitStructure;
  
  /* Configure one bit for preemption priority */
  NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
  
  /* 配置PB8.9为中断源 */
  NVIC_InitStructure.NVIC_IRQChannel = EXTI9_5_IRQn;
  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
  NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
  NVIC_Init(&NVIC_InitStructure);
}

/**
  * @brief  配置 PC13 为线中断口,并设置中断优先级
  * @param  无
  * @retval 无
  */
void EXTI_PB89_Config(void)
{
        GPIO_InitTypeDef GPIO_InitStructure;
        EXTI_InitTypeDef EXTI_InitStructure;

        /* config the extiline(PC13) clock and AFIO clock */
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO,ENABLE);
                                                                                               
        /* config the NVIC(PC13) */
        NVIC_Configuration();

        /* EXTI line gpio config(PC13) */       
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;      
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;         // 上拉输入
  GPIO_Init(GPIOB, &GPIO_InitStructure);
       
        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;      
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;         // 上拉输入
  GPIO_Init(GPIOB, &GPIO_InitStructure);

        /* EXTI line(PC13) mode config */
  GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource8);
        GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource9);
  EXTI_InitStructure.EXTI_Line = EXTI_Line8;
        EXTI_InitStructure.EXTI_Line = EXTI_Line9;
  EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
  EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; //上升沿中断
  EXTI_InitStructure.EXTI_LineCmd = ENABLE;
  EXTI_Init(&EXTI_InitStructure);
}
/*********************************************END OF FILE**********************/


这个是我外部中断的初始化程序,要以PB8和PB9为中断口,就是进不去,不知道为什么

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2017-2-24 09:09:39 | 显示全部楼层
GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource8);          GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource9);   EXTI_InitStructure.EXTI_Line = EXTI_Line8;         EXTI_InitStructure.EXTI_Line = EXTI_Line9;   EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;   EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; //上升沿中断   EXTI_InitStructure.EXTI_LineCmd = ENABLE;   EXTI_Init(&EXTI_InitStructure); 这些地方检查下

出0入0汤圆

 楼主| 发表于 2017-2-27 21:50:51 | 显示全部楼层
请问这些地方有什么错误

出0入0汤圆

 楼主| 发表于 2017-2-27 22:10:04 | 显示全部楼层
xuboluan 发表于 2017-2-24 09:09
GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource8);          GPIO_EXTILineConfig(GPIO_PortSo ...

或者说在这些地方有什么容易出现错误的地方吗,请指正一下

出0入0汤圆

发表于 2017-2-28 08:25:33 | 显示全部楼层
於氏天鹰 发表于 2017-2-27 22:10
或者说在这些地方有什么容易出现错误的地方吗,请指正一下

不妨把代码整理下 ,每个初始化 写一起
        /* EXTI line(PC13) mode config */
  GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource8);
        GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource9);
  EXTI_InitStructure.EXTI_Line = EXTI_Line8|EXTI_Line9;           //我感觉是这个地方的问题,要不是就是你 中断函数写的有问题
//        EXTI_InitStructure.EXTI_Line = EXTI_Line9;
  EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
  EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; //上升沿中断
  EXTI_InitStructure.EXTI_LineCmd = ENABLE;
  EXTI_Init(&EXTI_InitStructure);
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 23:26

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表