alibaba / AliOS-Things

面向IoT领域的、高可伸缩的物联网操作系统,可去官网了解更多信息https://www.aliyun.com/product/aliosthings
Apache License 2.0
4.58k stars 1.14k forks source link

请问 庆科3080 不能进入GPIO中断 #1027

Closed xiaoyaodian closed 2 years ago

xiaoyaodian commented 5 years ago

使用EWM3080 2.1.0alithing 分支 GPIO 输入输出都正常但是进不来GPIO口中断服务函数,要怎么做,是hal文件没有适配吗?platform\mcu\下也找不到MK3080的适配文件 image

xiaowenxia commented 5 years ago

mk3080用的mcu是rtl8710bn,gpio的hal代码是适配了的。

xiaoyaodian commented 5 years ago

@xiaowenxia 可是,GPIO进不了中断服务函数啊, hal_gpio_enable_irq(&input, IRQ_TRIGGER_BOTH_EDGES, gpio_isr_handler, (void *) MICO_GPIO_7);

xiaoyaodian commented 5 years ago

编译的时候会自动适配rtl8710bn下的hal函数吗?

xiaowenxia commented 5 years ago

image 看源码,IRQ_TRIGGER_BOTH_EDGES并没有作用,你换成IRQ_TRIGGER_FALLING_EDGE或者IRQ_TRIGGER_RISING_EDGE试一次。

同样,hal_gpio_init()好像也对IRQ_MODE的gpio模式没有作用,换成其他的试一试。

xiaoyaodian commented 5 years ago

image

xiaoyaodian commented 5 years ago

@xiaowenxia 大佬,这样写还是不行啊

xiaowenxia commented 5 years ago

你参考下mk3080(board/mk3080/board.c)的配网按键的相关代码,也是使用gpio中断功能。