中断问题求解

2019-07-21 08:04发布

         KEY_Init();  //PA0,PE2,PE3,PE4
        /*RCC->APB2ENR|=1<<0;
       
        AFIO->EXTICR[0]&=0xFFFF00F0; //相应为复位
        AFIO->EXTICR[0]&=0xFFFF44F0;
       
        AFIO->EXTICR[1]&=0xFFFFFFF0;
  AFIO->EXTICR[1]&=0xFFFFFFF4;
        //触发沿
        EXTI->RTSR|=1<<0;
       
        EXTI->FTSR|=1<<2;
        EXTI->FTSR|=1<<3;
        EXTI->FTSR|=1<<4;
        //EXTI->PR &=0x00000000;
        //开放中断
        EXTI->IMR|=1<<0;
        EXTI->IMR|=1<<2;
        EXTI->IMR|=1<<3;
        EXTI->IMR|=1<<4;*/
        //不知道什么原因只能中断0,其他都不行

        Ex_NVIC_Config(GPIO_E,2,FTIR);         //下降沿触发
        Ex_NVIC_Config(GPIO_E,3,FTIR);         //下降沿触发
        Ex_NVIC_Config(GPIO_E,4,FTIR);          //原子哥实验代码
        MY_NVIC_Init(2,3,EXTI0_IRQn,2);        //抢占2,子优先级3,组2
        MY_NVIC_Init(2,2,EXTI2_IRQn,2);        //抢占2,子优先级2,组2          
        MY_NVIC_Init(2,1,EXTI3_IRQn,2);        //抢占2,子优先级1,组2          
        MY_NVIC_Init(2,0,EXTI4_IRQn,2);        //抢占2,子优先级0,组2         

用原子哥的实验代码替换:Ex_NVIC_Config(GPIO_E,2,FTIR);         //下降沿触发
                                  Ex_NVIC_Config(GPIO_E,3,FTIR);         //下降沿触发
                                 Ex_NVIC_Config(GPIO_E,4,FTIR);          
其他都没变化就可以实验,我自己编的寄存器中断就只能实验中断0,其他2,3,4都不行!小小萌新求助

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
studyST
1楼-- · 2019-07-21 10:47
 精彩回答 2  元偷偷看……
烟酒不沾
2楼-- · 2019-07-21 13:13
你看是不是你这个结构体的成员名不对啊EXTI->RTSR|=1<<0;
        EXTI->FTSR|=1<<2;
        EXTI->FTSR|=1<<3;
        EXTI->FTSR|=1<<4;;
      RTSR写成FTSR了!
studyST
3楼-- · 2019-07-21 17:15
烟酒不沾 发表于 2017-8-13 15:55
你看是不是你这个结构体的成员名不对啊EXTI->RTSR|=1

typedef struct
{
  __IO uint32_t IMR;
  __IO uint32_t EMR;
  __IO uint32_t RTSR;
  __IO uint32_t FTSR;
  __IO uint32_t SWIER;
  __IO uint32_t PR;
} EXTI_TypeDef;
定义是这样,还是不懂啊,大神
qhm
4楼-- · 2019-07-21 17:17
原子哥的这些代码,能直接用?我直接写有错  :Ex_NVIC_Config(GPIO_E,2,FTIR);         //下降沿触发
                                  Ex_NVIC_Config(GPIO_E,3,FTIR);         //下降沿触发
                                 Ex_NVIC_Config(GPIO_E,4,FTIR);

一周热门 更多>