esp32 中断最简验证程序

13脚接3.3v脚,显示OK ,不能直接接5v电压脚

中断程序最好是为各种执行设置标志位。不能处理占用长时间的指令

准备利用中断对超声波模块编程

复制代码
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/gpio.h"
#include "esp_log.h"

// 定义GPIO引脚和标签
#define BUTTON_GPIO 13
#define TAG "BUTTON_ISR"

  char bz=0;
// 中断处理程序
void IRAM_ATTR button_isr_handler(void* arg) {
    // 打印一条信息,表示中断触发
    bz=1;
}

// 初始化GPIO和中断
void app_main() {
    // 配置GPIO引脚
    gpio_config_t io_conf;
    io_conf.intr_type = GPIO_INTR_NEGEDGE; // 下降沿触发
    io_conf.mode = GPIO_MODE_INPUT;        // 输入模式
    io_conf.pin_bit_mask = (1ULL << BUTTON_GPIO); // 配置为按钮GPIO
    io_conf.pull_down_en = GPIO_PULLUP_ENABLE; // 启用上拉
    io_conf.pull_up_en = GPIO_PULLDOWN_DISABLE; // 禁用下拉
 
    gpio_config(&io_conf);

    // 安装GPIO ISR服务
    gpio_install_isr_service(0);
    // 添加中断处理程序
    gpio_isr_handler_add(BUTTON_GPIO, button_isr_handler, NULL);

    // 主循环
    while (1) {
        if(bz==1){
			printf("%s\n","ok");
			bz=0;
		}
        vTaskDelay(pdMS_TO_TICKS(1000));
    }
}
相关推荐
szxinmai主板定制专家5 小时前
X86 工控机 vs RK3588 异构主控:AMR 控制器 BOM、散热、长期运维对比
运维·stm32·单片机·嵌入式硬件·fpga开发·am62x
HQB20268 小时前
屹晶微电子 EG1130|2‑24V 输入 / 最高 28V 输出 内置 MOS 异步升压 DC‑DC|SOT23‑6|摄像头 / 车充 / 电池充电电源
嵌入式硬件·硬件工程
泛凡(Linyongui)9 小时前
基于 CW32L010 的智能厨卫调温旋钮方案--低成本 EC21 编码旋钮全解析
单片机·嵌入式硬件·c#
十年磨一剑~10 小时前
Linux 内核中断处理机制与软硬件协同流程
linux·嵌入式硬件
糖糖单片机设计11 小时前
基于单片机的热水器节能控制系统
单片机·嵌入式硬件
数字新视界11 小时前
数字孪生技术赋能智能化转型与创新实践
嵌入式硬件·物联网·系统架构·机房管理·动力与环境监控系统
HQB202612 小时前
屹晶微电子 EG1195|10‑120V/10A+ 外置 MOS 异步降压控制器|ESOP‑8|电动车转换器 / 快充 / 工业电源
嵌入式硬件·硬件工程
不悔哥13 小时前
开源LineageOS:旧手机刷上开源系统
嵌入式硬件·智能手机·开源
服务器硬件项目经理13 小时前
《超节点修仙录》· 第一卷·炼气期【第04话】 超节点 vs 普通服务器——不就是多插了几张卡吗?
运维·服务器·人工智能·嵌入式硬件·深度学习·机器学习
一次调频AGCAVC14 小时前
一次调频系统控制柜的组成及一次调频装置主机功能详述
人工智能·嵌入式硬件