打印
[STM32F1]

外部中断的问题

[复制链接]
585|28
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
huangchui|  楼主 | 2021-3-4 09:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
查看了寄存器的值没发现问题 但是不可以用 求大佬指教
#include "EXIT.h"
#include "delay.h"
#include "key.h"
#include "LED.h"


//ÍⲿÖжϳõʼ»¯
void EXIT_Init()
{
   //ÅäÖÃIO¿Ú
         //ʹÄÜIO¿ÚµÄʱÖÓ
         //ÅäÖÃIO¿ÚµÄģʽ ÊäÈë Êä³ö ¸´Óà ÉÏÀ­ÏÂÀ­ ¿ªÂ©ÍÆÍìµÈģʽ
         GPIO_InitTypeDef GPIO_Initure;
         
         __HAL_RCC_GPIOA_CLK_ENABLE();           //ʹÄÜGPIOAµÄʱÖÓ
   __HAL_RCC_GPIOC_CLK_ENABLE();           //ʹÄÜGPIOBµÄʱÖÓ
   __HAL_RCC_GPIOH_CLK_ENABLE();           //ʹÄÜGPIOHµÄʱÖÓ
        //ÅäÖÃPA0
   GPIO_Initure.Pin = GPIO_PIN_0;
         GPIO_Initure.Mode = GPIO_MODE_IT_RISING;//ÉèÖÃΪÉÏÉýÑØ´¥·¢
         GPIO_Initure.Pull = GPIO_PULLDOWN;      //ÏÂÀ­
         HAL_GPIO_Init(GPIOA, &GPIO_Initure);
        //ÅäÖÃPC13
         GPIO_Initure.Pin = GPIO_PIN_13;
         GPIO_Initure.Mode = GPIO_MODE_EVT_FALLING;//ÉèÖÃϽµÑØ´¥·¢
         GPIO_Initure.Pull = GPIO_PULLUP;          //ÉÏÀ­
         HAL_GPIO_Init(GPIOC,&GPIO_Initure);
        //ÅäÖÃPH2ºÍPH3
         GPIO_Initure.Pin = GPIO_PIN_2 | GPIO_PIN_3;
         HAL_GPIO_Init(GPIOH,&GPIO_Initure);
        
         //ÉèÖÃÖжÏÏßµÄÓÅÏȼ¶
         
         //ÖжÏÏß0
   HAL_NVIC_SetPriority(EXTI0_IRQn,2,0);//ÇÀÕ¼ÓÅÏȼ¶2 ÏìÓ¦ÓÅÏȼ¶0
         HAL_NVIC_EnableIRQ(EXTI0_IRQn);      //ʹÄÜÖжÏ
         //ÖжÏÏß2
         HAL_NVIC_SetPriority(EXTI2_IRQn,2,1);
   HAL_NVIC_EnableIRQ(EXTI2_IRQn);
         //ÖжÏÏß3
         HAL_NVIC_SetPriority(EXTI3_IRQn,2,2);
         HAL_NVIC_EnableIRQ(EXTI3_IRQn);
         //ÖжÏÏß13
         HAL_NVIC_SetPriority(EXTI15_10_IRQn,2,3);
         HAL_NVIC_EnableIRQ(EXTI15_10_IRQn);
         

}
//ÖжϷþÎñº¯Êý
        void EXIT0_IRQHandler()
         {
          HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0);
         }
        void EXIT2_IRQHandler()
         {
         HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_2);
         }
  void EXIT3_IRQHandler()
         {
         HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_3);
         }
   void EXIT13_IRQHandler( )
         {
         HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_13);
         }
         
         //»Øµ÷º¯Êý
         //ËùÓеÄÖжϺ¯Êý¶¼Òªµ÷ÓÃ
         void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
         {
                 delay_ms(100);
           switch(GPIO_Pin)
                 {
                         case GPIO_PIN_0:
         if(WK_UP==1)
                                 {                                         
                                         //printf("\r\nWK_UP\r\n");
                                         LED0(0);
                                         LED1(0);
                                 }
                                 break;
                         case GPIO_PIN_2:
                                 if(KEY1==0)
                                 {
                                   printf("\r\nKEY1\r\n");
                                 }
                                 break;
       case GPIO_PIN_3:
         if(KEY0==0)
                                 {
                                   printf("\r\nKEY0\r\n");
                                 }
                                 break;
       case GPIO_PIN_13:
                                 if(KEY2==0)
                                 {
                                         printf("\r\nKEY2\r\n");
                                 }
                                 break;        
                 }
         }

使用特权

评论回复
沙发
chuxh| | 2021-3-4 09:42 | 只看该作者
到底啥问题,不能用如何不能用

使用特权

评论回复
板凳
dingy| | 2021-3-4 09:48 | 只看该作者
编译能通过吗

使用特权

评论回复
地板
supernan| | 2021-3-4 09:52 | 只看该作者

跑个官方的例子。

使用特权

评论回复
5
yinxiangh| | 2021-3-4 09:56 | 只看该作者
下载cubeF7里面很多例子的。这个HAL库要掌握个基本使用方法。

使用特权

评论回复
6
ousj| | 2021-3-4 10:01 | 只看该作者
楼主这个中断时什么问题呢?      

使用特权

评论回复
7
dengdc| | 2021-3-4 10:04 | 只看该作者
是不是外部的中断没有开启呢   

使用特权

评论回复
8
lizye| | 2021-3-4 10:08 | 只看该作者
楼主可以使用官网的代码进行测试。  

使用特权

评论回复
9
午夜粪车| | 2021-3-4 10:12 | 只看该作者
外部中断存在什么问题呢?            

使用特权

评论回复
10
wyjie| | 2021-3-4 10:16 | 只看该作者
STM32F7这个芯片没有使用过。         

使用特权

评论回复
11
yszong| | 2021-3-4 10:19 | 只看该作者
楼主可以使用stm32cube生成文件呢。   

使用特权

评论回复
12
dingy| | 2021-3-4 10:28 | 只看该作者
楼主的问题解决了吗?               

使用特权

评论回复
13
xxrs| | 2021-3-4 10:32 | 只看该作者
现在来看也有可能是硬件的问题了。   

使用特权

评论回复
14
pangb| | 2021-3-4 10:36 | 只看该作者
软件解决不了吗?                  

使用特权

评论回复
15
ousj| | 2021-3-4 10:40 | 只看该作者
使用别人配置好的代码进行编写。  

使用特权

评论回复
16
dengdc| | 2021-3-4 10:43 | 只看该作者
这个代码报错吗?           

使用特权

评论回复
17
jiahy| | 2021-3-4 10:49 | 只看该作者
参考例子。

使用特权

评论回复
18
huangchui|  楼主 | 2021-3-4 10:52 | 只看该作者
就是按下之后 能进入中断 但是串口并没有输出数据

使用特权

评论回复
19
huangchui|  楼主 | 2021-3-4 10:58 | 只看该作者
解决了 但是只有一个按键可以用其他三个却不可以用

使用特权

评论回复
20
liliang9554| | 2021-3-4 11:03 | 只看该作者
是进不了中断吗

使用特权

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

本版积分规则

918

主题

12323

帖子

4

粉丝