ESP32 之 ESP-IDF教学(二)——GPIO(2) 中断的简单配置

本文详细介绍ESP32 GPIO中断配置,包括`gpio_set_intr_type()`函数解析、中断示例(两种方法)、响应中断步骤和示例代码。探讨GPIO触发中断的Bug及官方推荐的解决方案。适合ESP-IDF开发者深入理解中断管理。
摘要由CSDN通过智能技术生成

本文章 来自原创专栏《ESP32教学专栏 (基于ESP-IDF)》,讲解如何使用 ESP-IDF 构建 ESP32 程序,发布文章并会持续为已发布文章添加新内容! 每篇文章都经过了精打细磨!

↓↓↓通过下方对话框进入专栏目录页↓↓↓
CSDN 请求进入目录       _ O x

是否进入ESP32教学导航(基于ESP-IDF)?

       确定


一、配置GPIO中断

通过gpio_config()函数传递一个结构体gpio_config_t指针,在gpio_config_t结构体中声明中断类型。或通过函数gpio_set_intr_type()函数(前文中省略了函数参数)

注意:必须将GPIO配置为包含输入的模式,比如 GPIO_MODE_INPUTGPIO_MODE_INPUT_OUTPUT 等。

(1)函数gpio_set_intr_type()解析

1、功能简介
GPIO set interrupt trigger type.
2、返回值

类型 名称 意义
esp_err_t ESP_OK 配置成功
同上 ESP_ERR_INVALID_ARG Parameter error
3、参数值
[类型] 名称 意义
- -
[gpio_num_t][uint32_t] gpio_num GPIO number. If you want to set the trigger type of e.g. of GPIO16, gpio_num should be GPIO_NUM_16 (16);
[gpio_int_type_t] intr_type Interrupt type, select from gpio_int_type_t ←点红字看详情
(2)配置中断示例(两种方法)

提前将GPIO配置为包含输入的模式 / 方向

gpio_config_t ioConfig = {
   
//	.	.... = ... ,		//省略
//	.	.... = ... ,		//省略
	.intr_type = GPIO_INTR_NEGEDGE,	//本例中设置为下降沿触发中断
	.pull_down_en = 1,				//要触发下降沿中断,所以要允许下拉
}
  • 26
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Augtons正(单片机)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值