【求助帖】Ai-M61无法进入外部中断

[复制链接]
查看142 | 回复1 | 2025-1-4 10:47:56 | 显示全部楼层 |阅读模式
本帖最后由 大猫的鱼 于 2025-1-4 13:31 编辑

  今天使用Ai-M61-32S-Kit最小系统板做个外部中断实验,发现没有任何效果 即使是直接使用泽哥帖子 (八)零基础开发小安派-Eyes-S1【外设篇】——GPIO中断编程 中的代码,也没有效果,先看一下代码吧:

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include "board.h"
  5. #include "log.h"
  6. #include "bflb_gpio.h"
  7. #include "bflb_mtimer.h"

  8. #define DBG_TAG "MAIN"

  9. #define EXIT_GPIO       GPIO_PIN_10

  10. struct bflb_device_s *gpio;

  11. void ISR_Exit(void);

  12. void System_Init(void)
  13. {
  14.     gpio = bflb_device_get_by_name("gpio");

  15.     bflb_gpio_init(gpio,EXIT_GPIO,GPIO_INT_TRIG_MODE_SYNC_RISING_EDGE);
  16.     bflb_irq_attach(gpio->irq_num, ISR_Exit, NULL);
  17.     bflb_gpio_int_mask(gpio, EXIT_GPIO, false);
  18.     bflb_irq_enable(gpio->irq_num);
  19. }

  20. void ISR_Exit(void)
  21. {
  22.     bool intstatus = bflb_gpio_get_intstatus(gpio, EXIT_GPIO);
  23.    if (intstatus)
  24.    {
  25.       bflb_gpio_int_clear(gpio, EXIT_GPIO);
  26.       printf("ok\r\n");
  27.    }
  28. }

  29. int main(void)
  30. {
  31.     board_init();
  32.     System_Init();

  33.     while (1)
  34.     {
  35.         if (bflb_gpio_get_intstatus(gpio, EXIT_GPIO))
  36.         {
  37.            printf("Exit sta = 1\r\n");
  38.         }
  39.         else
  40.             printf("Exit sta = 0\r\n");
  41.         
  42.         bflb_mtimer_delay_ms(500);
  43.     }
  44. }
复制代码
现象:
{S7@J(~S6J~82Y4(`%V%3`3.png
一直显示 Exit sta = 1 ,进入bflb_gpio_git_intstatus() 函数中,发现代码是灰色的,整个函数相当于空的,并没有BL616或其他 宏。我看了其他好多文件都有这种型号的宏,所以这个应该在哪里有定义呢?求救
4U[O}9ANEO(VVEINZYN6DPY.png

回复

使用道具 举报

Ai-Thinker小泽 | 2025-1-6 09:04:50 | 显示全部楼层
换爱星云分支的SDK
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则