esp32按键长按重启esp32按键 消抖 目录前言一、工作原理二、按键的基本使用1.使用CubeMX配置GPIO2.编写代码 三、按键使用的问题四、软件消抖1、利用延时避免抖动 2、利用定时器中断避免抖动2.1、基本思路2.2、配置CubeMX 2.3、代码编写总结 前言按键是学习STM32必不可少的一个部分,是一个典型的GPIO口输入的案例。
在STM32的GPIO可以配置成八种模式,输入的模式有浮空输入,上拉输入,下拉输入,模拟输入。上拉输入模式顾名思义就是接一个上拉电阻的输入模式,也就是说在正常状态下PA15会处于一个高电平的状态。所以我们在配置GPIO模式的时候要选择上拉输入。 二、按键的基本使用 1.使用CubeMX配置GPIO 2.编写代码 三、按键使用的...
{//定义一个gpio_config类型的结构体,下面的都算对其进行的配置gpio_config_t io_conf;//禁用中断io_conf.intr_type =GPIO_PIN_INTR_DISABLE;//设置为输出模式io_conf.mode =GPIO_MODE_OUTPUT;//你想设置的引脚io_conf.pin_bit_mask = (1<<GPIO_OUTPUT_IO_LED);//关闭下拉模式io_conf.pull_down_en ...
ADC2_CH3(GPIO 15) ADC2_CH4(GPIO 13) ADC2_CH5(GPIO 12) ADC2_CH6(GPIO 14) ADC2_CH7(GPIO 27) ADC2_CH8(GPIO 25) ADC2_CH9(GPIO 26) 注意:使用Wi-Fi时不能使用ADC2引脚。因此,如果使用的是Wi-Fi,并且无法从ADC2 GPIO获取值,则可以考虑改用ADC1 GPIO,这样可以解决问题。 ADC输入通道具有12位分...
对ESP32 芯片的内部硬件进行初始设置,包括时钟、GPIO、中断等。 3.CPU 异常配置: 重新配置 CPU 异常处理器,允许应用程序自己处理中断和严重错误,而不是依赖于 ROM 中的基本错误处理程序。 4.RTC 看门狗定时器: 如果没有启用 CONFIG_BOOTLOADER_WDT_ENABLE 配置,则不使...
ESP32-C3 学习测试(二、GPIO中断、按键驱动测试) 我们通过按键操作,对示例中保存的数据进行删除,在按键驱动中,我们修改一下代码: staticvoidbutton_single_click_cb(void*arg){uint8_t*num = (uint8_t*)arg;uint8_tgpio_num = *num; ESP_LOGI(TAG,"BTN%d: BUTTON_SINGLE_CLICK\n", gpio_num);printf...
1.5 按键(GPIO) 按键操作目的在于,当产品需要配网的时候,手动删除以前的配网信息,按键的操作在 ESP32-C3入门教程 基础篇(二、GPIO中断、按键驱动测试) 有过说明,同时在 ESP32-C3入门教程 网络 篇(二、 Wi-Fi 配网 — Smart_config方式 和 BlueIF方式)也有过说明,这里主要的用法和Wi-Fi配网教学篇中的一样,...
配置正确的GPIO引脚作为I2C的SDA和SCL,并设置为中断引脚。 配置RTC中断,使其能够在I2C事件发生时唤醒ESP32。 示例代码 代码语言:txt 复制 #include "esp_sleep.h" #include "driver/i2c.h" #define I2C_MASTER_NUM I2C_NUM_0 #define I2C_MASTER_TX_BUF_DISABLE 0 #define I2C_MASTER_RX_BUF_DISABLE 0 ...
LED、GPIO(+中断) 按键(队列方式,数目几无上限)、触摸按键 ADC(8通道)、DAC(2通道) LEDc、PWM(+输入捕获)、PCNT(编码器计数) RMT红外、RMT-WS2812B-RGB灯带 UART、RS485 I2C_TOOLS、I2C_MPU6050、I2C_AHT20 SPI液晶屏(支持ST7735、ST7735S、ST7789V、ILI9341、ILI9488、ILI9481、ST7796S、HX8357C8种IC...