ESP32/ESP32S3模组在使用Touchpad例子发生flash出错问题解决方式
目前楼主使用的是ESP32S3-WROOM-1
前天发现跑了一个致命问题:开发板跑examples\peripherals\touch_sensor\touch_sensor_v2\touch_pad_read这个demo,在读取线程里调用esp_light_sleep_start进入低功耗,这时候程序跑一会就出问题,该问题表现为模组启动失败,提示E (409) esp_image: Image hash failed - image is corrupt
该问题比较隐蔽且致命。查找原因发现跟低功耗有关,官方问题有相关记录:https://github.com/espressif/esp-idf/issues/8175
但是,该记录没有写解决方式,目前楼主已经通过一个方法解决出现该flash出错问题的方式。
因为我们程序运行一段时间需要进低功耗,昨天晚上试了一个好的模组跑一会进入低功耗就有问题了,于是我尝试在进入低功耗前,关闭touch的功能,在退出低功耗时,重新初始化touch功能,问题不再出现,附上代码~~~
```c
static void tp_read_init(void)
{/* Initialize touch pad peripheral. */touch_pad_init();for (int i = 0; i < TOUCH_BUTTON_NUM; i++) {touch_pad_config(button[i]);}
#if TOUCH_CHANGE_CONFIG/* If you want change the touch sensor default setting, please write here(after initialize). There are examples: */touch_pad_set_meas_time(TOUCH_PAD_SLEEP_CYCLE_DEFAULT, TOUCH_PAD_MEASURE_CYCLE_DEFAULT);touch_pad_set_voltage(TOUCH_PAD_HIGH_VOLTAGE_THRESHOLD, TOUCH_PAD_LOW_VOLTAGE_THRESHOLD, TOUCH_PAD_ATTEN_VOLTAGE_THRESHOLD);touch_pad_set_idle_channel_connect(TOUCH_PAD_IDLE_CH_CONNECT_DEFAULT);for (int i = 0; i < TOUCH_BUTTON_NUM; i++) {touch_pad_set_cnt_mode(button[i], TOUCH_PAD_SLOPE_DEFAULT, TOUCH_PAD_TIE_OPT_DEFAULT);}
#endif/* Denoise setting at TouchSensor 0. */touch_pad_denoise_t denoise = {/* The bits to be cancelled are determined according to the noise level. */.grade = TOUCH_PAD_DENOISE_BIT4,.cap_level = TOUCH_PAD_DENOISE_CAP_L0,};touch_pad_denoise_set_config(&denoise);touch_pad_denoise_enable();ESP_LOGI(TAG, "Denoise function init");/* Enable touch sensor clock. Work mode is "timer trigger". */touch_pad_set_fsm_mode(TOUCH_FSM_MODE_TIMER);touch_pad_fsm_start();
}static void tp_read_deinit(void)
{touch_pad_deinit();touch_pad_reset();touch_pad_denoise_disable();touch_pad_fsm_stop();
}void low_power()
{//gpio唤醒,仅用于light sleep modeesp_sleep_enable_timer_wakeup(5000000);//us //SLEEP_TIMEesp_sleep_enable_gpio_wakeup();esp_light_sleep_start();/* Determine wake up reason */const char* wakeup_reason;uint8_t ret = esp_sleep_get_wakeup_cause();printf("esp wakeup!! ret:%d\n", ret);switch(ret){case ESP_SLEEP_WAKEUP_TIMER:wakeup_reason = "timer";break;case ESP_SLEEP_WAKEUP_GPIO:wakeup_reason = "pin";break;default:wakeup_reason = "other";break;}
}tp_read_deinit();//这里不加容易导致flash出错
low_power();
tp_read_init();//与tp_read_deinit成对出现
全文完.....
ESP32/ESP32S3模组在使用Touchpad例子发生flash出错问题解决方式相关推荐
- 安信可 ESP32-S3 模组上驱动摄像头 OV2640,实现远程拍照并 HTTP 传输到阿里云对象存储OSS,并显示在微信小程序上。(深度好文,全部开源)
文章目录 一. ESP32-S3 特性 CPU 和存储 外设接口和传感器 功耗特性 二. 准备工作 硬件 软件 接线 三.通讯协议和原理 3.1 模组拍照上传服务器 3.2 小程序下发指令给模组拍照给 ...
- 乐鑫ESP32芯片/模组选型参考指南
1.最近一个项目中用到了ESP32的模组,于是开始查询相关的资料,首先来到乐鑫的官网可以看到关于ESP32分为芯片.模组与开发板三部分. 2.由于乐鑫的芯片主打无线通信,包括蓝牙和wifi等一些高频信 ...
- 无线WiFi通信模组方案,智能家居无线物联网应用,ESP32芯片模组技术
近年来,技术进步大幅增加了智能家居的可用性.硬件方面,芯片算力的升级.通讯技术的更新以及传感器功能的增强为智能家居发展提供技术基础:软件方面,边缘计算.人工智能催生出新型IoT系统,以实现万物互联. ...
- 【工程师有空了】安信可ESP8266系列及ESP32系列模组AT指令实现网页配网---又多了一个配网方式
文章目录 前言 AT指令介绍: 配网原理 一.实验准备 可能你还要用到: 二.编译固件 三.开启配网 四.常见问题 1.AT固件烧录不显示 "ready" 2.显示配网失败 3.除 ...
- 无线通用型Wi-Fi模组,热像仪技术应用,ESP32芯片模组方案
tCam-Mini 是基于 ESP32 设计开发的小型无线热像仪,能够使用户轻松地通过 Flir Lepton 3.5 传感器获取并使用辐射数据. 它可以获取每个像素的温度并进行各类热成像分析:也可以 ...
- ESP32芯片模组技术应用,自动浇水看护盆栽,智能技术方案
长时间无人看守盆栽的生长问题,设计一种可自动寻光的智能盆栽系统.通过对光敏传感器.温度和湿度传感器获取盆栽实时环境信息的分析,利用自动寻光单元和智能浇水单元保证植物正常生长. 在此基础上,基于Wi-F ...
- 如何使用ESP32相机模组实现视频流和人脸识别
人证识别系统有许多种方式,比如使用签名.指纹.语音.面部识别等来识别人员,但是只有人脸识别系统可以检测和识别机场.零售店和火车站等公共场所中的人员.人脸识别系统不仅可以用于安全目的以识别公共场所中的人 ...
- Windows下搭建ESP-IDF开发环境,适合ESP32/S2/C3/S3系列模组二次开发
前言 本教程适用于以下两种用户: ①无Linux环境搭建经验或搭建Linux开发环境不成功: ②使用安信可windows一体化环境IDE V1.5开发环境搭建不成功: 本教程提供了windows下搭建 ...
- Linux下搭建ESP-IDF 开发环境教程,适合ESP32/S2/C3/S3系列模组二次开发
1 Ubuntu安装 在Linux下编译速度比Windows快很多,一般推荐优先使用Linux开发.Ubuntu是非常常见的Linux操作系统. 网上已经有非常多的Ubuntu安装教程,这里推荐一篇, ...
最新文章
- 深度学习模型的中毒攻击与防御综述
- Android开发环境简单配置
- CentOs7下systemd管理知识要点
- 数据结构与算法(一)——排序
- 发言稿开场白范文_发言稿开场白
- python调用ffmpeg合并_用ffmpeg命令处理mp4剪切与合并
- Notes:DOM的事件模拟
- python编程入门书籍-关于 Python 的经典入门书籍有哪些?
- OpenGl图元基本操作之点选高亮
- pandas之DataFrame常用方法
- Hive的内置HASH()函数使用哪种哈希算法
- 洛谷 P2440 木材加工(二分,含边界处理的笔记)
- oracle 按天数 均值,oracle 按天数统计数据
- 什么是一个可执行文件?
- 【Tryhackme】Hacker of the Hill #1
- 十万评论告诉你谁在给《流浪地球》打 1 星
- 关于CASIO系列可编程计算器在公路施工测量中的应用
- 秒云与趋动科技联合发布容器云平台与GPU资源池化整体解决方案
- Esper学习之十:EPL语法(六)
- 2022年G2电站锅炉司炉操作证考试题库及模拟考试