GPIO 唤醒深度睡眠的esp32-c3

经实验,led 必须接入c3 的gpio 20,21 脚,接入0-10脚led不亮。1脚接高电平,led亮,断开,led灭。特别注意,c3 刷入代码后,要按an键退出下载模式单片机才能正常运行。

开启程序的定时唤醒功能,led周期性隔5秒点亮一次。

代码

复制代码
#include <stdio.h>
#include "esp_sleep.h"
#include "esp_log.h"
#include "driver/gpio.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_timer.h"

#define LED 21          //led 不能接入0-10脚
#define AJ  1
void app_main(void) {
    // 配置 LED GPIO 为输出模式   gpio 0 脚为1,led 亮
    gpio_config_t io_conf;
    io_conf.intr_type = GPIO_INTR_DISABLE;
    io_conf.mode = GPIO_MODE_OUTPUT;
    io_conf.pin_bit_mask = (1ULL << LED);
    io_conf.pull_down_en = 0;
    io_conf.pull_up_en = 0;
    gpio_config(&io_conf);

     
    //配置唤醒源
    gpio_deep_sleep_hold_dis();	    //在深度睡眠时禁用所有数字gpio pad保持功能。
    esp_deep_sleep_enable_gpio_wakeup((1ULL<<AJ), ESP_GPIO_WAKEUP_GPIO_HIGH); //high
    gpio_set_direction(GPIO_NUM_1, GPIO_MODE_INPUT);	//GPIO定向,设置为输入或输出
	 
 //   esp_sleep_enable_timer_wakeup(5 * 1000000);
	
   //开始睡眠
    esp_deep_sleep_start();
    // 深度睡眠后代码将不会继续执行
	
    gpio_set_level(LED,1);
}
相关推荐
山木嵌入式9 小时前
【STM32实战】轻量级任务调度器实现
stm32·单片机·rtos·任务调度器·裸机开发
guygg889 小时前
基于霍尔传感器的BLDC控制源码
单片机·嵌入式硬件
ytttr8739 小时前
DSP 28335 CAN总线通信程序
开发语言·stm32·单片机
一枝小雨11 小时前
RISC-V架构sp寄存器 & RISC-V架构下FreeRTOS任务上下文保存与恢复
单片机·架构·嵌入式·risc-v·rtos·内核原理
BW.SU13 小时前
PackagingTool 嵌入式资源打包合并工具
单片机·二进制·嵌入式开发·资源合并软件·图片打包
长安第一美人13 小时前
工业级实时监控系统开发:PHP+ZMQ+JS 前后端分离架构全解析
前端·嵌入式硬件·架构·交互·rk3588·zmq后端
田甲13 小时前
STM32开发环境迁移实践:从 CubeMX 生成 CMake 工程到 VS Code 编译与调试
stm32·单片机·嵌入式硬件
hoiii18713 小时前
在 STM32F1上读取 BMX055 三轴加速度
stm32·单片机·嵌入式硬件
嵌入式小站14 小时前
STM32 零基础可移植教程 04:按键输入,为什么按下去读到的是 0 或 1
chrome·stm32·嵌入式硬件
三佛科技-1873661339714 小时前
BP8522D贴片SOP7,5V150mA高集成度无VCC电容降压型恒压芯片解析
单片机·嵌入式硬件