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);
}
相关推荐
VekiSon1 小时前
ARM架构——时钟系统与定时器详解
linux·c语言·arm开发·嵌入式硬件·架构
宵时待雨1 小时前
STM32笔记归纳3:串口
笔记·stm32·嵌入式硬件
国科安芯1 小时前
抗辐照MCU在核电站交换机中的可靠性验证方法研究
单片机·嵌入式硬件·架构·安全性测试
松涛和鸣1 小时前
60、嵌入式定时器深度解析:EPIT与GPT
c语言·arm开发·单片机·嵌入式硬件·gpt·fpga开发
乐亦_Lee2 小时前
在Ubuntu下如何提升下载速度
linux·嵌入式硬件·ubuntu
俊俊谢2 小时前
HC32F460如何配置GPIO中断
单片机·嵌入式硬件·hc32f460
三佛科技-187366133972 小时前
SLD50N06T美浦森60V,50A N沟道MOS场效应管解析
单片机·嵌入式硬件
草丛中的蝈蝈2 小时前
单片机烧写新程序后,ST-LINK无法发现设备
单片机·嵌入式硬件
不做无法实现的梦~2 小时前
PX4怎么使用使用PlotJuggler分析PX4日志
linux·嵌入式硬件·机器人·自动驾驶
ae_zr2 小时前
STM32H743+DMA+串口空闲中断接收不定长数据,并使用DMA发送数据
stm32·单片机·嵌入式硬件·dma