

这次小安给大家带来的是快速入门教程之中断控制 LED:
用料
用料
BW21-CBV-Kit x 1
按键 x 1
示例
在本示例中,使用按钮触发中断并控制 LED。请注意,在 Arduino 示例 "Button and LED"中,只有在按住按钮时 LED 才会亮起,而当我们松开按钮时,LED 会变暗。
打开示例,"文件" -> "示例" -> "AmebaGPIO" -> "Interrupt_Ctrl_LED"。

由于BW21-CBV-Kit]没有内置按钮,可以选择将黄色突出显示的代码更改为任何 GPIO 引脚编号,本例中使用的是GPIO引脚0。

BW21-CBV-Kit 电路图:

编译并上传程序后,按下 BW21-CBV-Kit 上的复位按钮。LED 指示灯首先会亮起。按下并松开按钮,LED 指示灯会变暗。再次按下按钮,LED 亮起。
代码参考
在这个函数中:
setup()
将上例中的 GPIO 引脚设置为:
INPUT_IRQ_RISE
也就是说,当该引脚的电压从 GND 变为 3V3 时,就会发生中断。因此,我们将按钮的另一端连接到 3V3,以便在按下按钮时触发中断事件。
pinMode(button, INPUT_IRQ_RISE);
另一方面可以将上例中的 GPIO 引脚设置为:
INPUT_IRQ_FALL
这意味着当该引脚的电压从 3V3 变为接地时会发生中断。在这种情况下,按钮的另一端连接到 GND。接下来,我们需要指定要执行的函数来处理中断:
digitalSetIrqHandler(button, button_handler);
第二个参数是一个函数指针,带有原型:
void button_handler(uint32_t id, uint32_t event)
在这个处理程序中,每次按下和松开按钮都会触发一个中断,并改变 LED 的状态。
拿到BW21-CBV-Kit的小伙伴不知道怎么下手?提前看最全教程已经准备好啦,如何使用BW21-CBV-Kit?最新最全教程来了~
微信改版,容易错过最新资讯和福利?
快将“安信可科技”设为星标⭐
可以第一时间接收小安的推送!
▼

Ai-M61/M62系列模组支持CAN接口了?
星闪网卡:Wi-Fi6+SLE+BLE,三模合一Linux网卡
安信可更多产品信息可进入以下链接查阅:
●开发资料:https://docs.ai-thinker.com/
●官方教程:https://blog.csdn.net/Boantong_
●安信可官网:www.ai-thinker.com
●安信可社区:https://bbs.ai-thinker.com
●业务咨询请联系:18022036575


