#pragma once #include "esp_err.h" // 按键引脚定义 #define PIN_BTN_BOOT 0 // GPIO0 BOOT按键(低电平有效) #define PIN_BTN_KEY2 4 // GPIO4 KEY2按键(低电平有效) // 按键事件回调函数类型(与iot_button回调签名兼容) typedef void (*btn_event_cb_t)(void *arg, void *usr_data); // 初始化按键驱动(使用iot_button组件,支持单击/双击/长按) esp_err_t button_init(void); // BOOT按键事件回调注册 void button_on_boot_click(btn_event_cb_t cb, void *usr_data); void button_on_boot_double_click(btn_event_cb_t cb, void *usr_data); void button_on_boot_long_press(btn_event_cb_t cb, void *usr_data); // KEY2按键事件回调注册 void button_on_key2_click(btn_event_cb_t cb, void *usr_data); void button_on_key2_double_click(btn_event_cb_t cb, void *usr_data); void button_on_key2_long_press(btn_event_cb_t cb, void *usr_data);