// 按键驱动模块 // KEY2(GPIO4):iot_button 驱动,支持单击/双击/长按 // BOOT(GPIO0):由board类的iot_button处理,本模块提供1200ms长按注册接口 #pragma once #ifdef __cplusplus extern "C" { #endif #include "esp_err.h" // 按键引脚定义 #define PIN_BTN_BOOT 0 // GPIO0 BOOT按键(低电平有效) #define PIN_BTN_KEY2 4 // GPIO4 KEY2按键(低电平有效) // 初始化按键驱动(KEY2使用iot_button) esp_err_t dzbj_button_init(void); // 注册BOOT 1200ms长按事件(传入board类的boot_button iot_button句柄) void dzbj_button_register_boot_long_press(void *boot_handle); // 注册BOOT+KEY2组合键模式切换(BOOT 2000ms长按时检测KEY2是否按下) void dzbj_button_register_mode_switch_combo(void *boot_handle); // 吧唧模式 BOOT 单击处理(兼容接口,内部转发到key_nav) void dzbj_boot_click_handler(void); #ifdef __cplusplus } #endif