ESP32学习笔记-用中断的方式检测按钮触发

本文介绍了如何在Arduino中使用外部中断功能,如FALLING模式下的按钮触发,以及防抖机制的应用。通过实例展示了如何配置中断函数和处理按钮激活事件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

写在前面

今天看 中断 的示例代码,偶有心得,记录一下。

外部中断函数

attachInterrupt( pin,function,mode )

pin: 外部中断引脚

function : 外部中断回调函数

mode : 有5种外部中断模式,见下表:

中断触发模式 说明
RISING 上升沿触发
FALLING 下降沿触发
CHANGE 电平变化触发
ONLOW 低电平触发
ONHIGH 高电平触发
  • 关闭引脚中断 detchInterrupt(pin),无返回值。

测试代码

//加载库
#include <Arduino.h>

//定义按钮结构体
struct Button{
    const uint8_t PIN;   //定义按钮引脚
    bool pressed;        //定义按钮状态
};

//初始化按钮
Button button = {27,false};  //使用板载按钮

//中断处理函数
void ARDUINO_ISR_ATTR isr()
{
  button.pressed = true;
}

void set
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值