一、目的

在上一篇《ESP32系列--第九篇 ADC的使用》中我们介绍了ESP32的ADC1模块,一般情况下我们会配合一个电阻网络按键来扩展按键的功能,这样一个ADC channel就可以完成多个按键的功能。

二、介绍

什么是模拟电阻网络按键呢?

通过分压电阻,当不同的按键按下时,IO39采集到的电压不同,我们可以限制每个按键的电压范围然后判断当某个按键被按下时电压是否落入对应的范围内来判断是否被按下;通过适当的电阻值设定还可以实现组合按键。 ​​​​​​

三、实战

由于内容过于简单就不再添加代码,实现原理就是通过采样周期(50ms)采样IO39的电压,如果电压值在某个按键的电压范围内,例如PLAY按键,理论电压为1.57V,我们可以设定一个1.35-1.75的范围,如果某个时刻电压属于这个范围(可以两次采样比较),就认为PLAY按钮被按下。

以上,ADC模拟电阻网络按键就实现好了。

下一篇实现按键驱动,支持按下、松开、短按、长按、长按再次触发、周期时间内的点击次数(双击、三连击)。


​​​​​​​

ESP32系列--第十篇 ADC电阻网络按键相关推荐

  1. 奋斗的小孩系列 FPGA学习altera系列: 第十篇 按键控制LED

    奋斗的小孩系列 FPGA学习altera系列: 第十篇 按键控制LED 作者:奋斗的小孩 郝旭帅(转载请注明出处) 大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分.大侠可以关注FPGA技术江 ...

  2. ESP32系列--第六篇 WiFi AP模式

    一.目的 在上一篇<ESP32系列--第五篇 WiFi Station模式>我们介绍了station模式,本篇我们介绍一下AP模式. 二.准备 首先我们从esp-idf里面拷贝一份官方的示 ...

  3. ESP32系列--第三篇 GPIO操作(基本输入输出)

    一.目的 在前面的章节中我们已经介绍了ESP32的开发环境的搭建过程,从本篇开始我们将从最基本的GPIO控制讲起,介绍ESP32上面相关的外设操作. 二.介绍 参考资料 GPIO & RTC ...

  4. “睡服”面试官系列第二十篇之generator函数的异步应用(建议收藏学习)

    目录 1. 传统方法 2. 基本概念 2.1异步 2.2回调函数 2.3Promise 3. Generator 函数 3.1协程 3.2协程的 Generator 函数实现 3.3Generator ...

  5. “睡服”面试官系列第十篇之module的语法(建议收藏学习)

    目录 1.概述 2. 严格模式 3. export 命令 4. import 命令 5. 模块的整体加载 6. export default 命令 7. export 与 import 的复合写法 8 ...

  6. 【云原生Docker系列第十篇】搭建本地私有仓库(我问青山何时老,青山问我几时闲)

    文章目录 系列文章目录 前言 一.搭建本地私有仓库过程 首先下载registry镜像 在daemon.json文件中添加私有镜像仓库地址 运行registry 为镜像打标签 上传到私有仓库 列出私有仓 ...

  7. 数据与广告系列三十:从oCPX的无形调控之手到定向价值定位

    作者·黄崇远 『数据虫巢』 全文共6005字 题图ssyer.com " 从定向的优化目标出发,理解oCPX的无形调控之手,最后在回归到定向逻辑的定位价值问题." 本文的背景是,站 ...

  8. 【云原生Kubernetes系列第五篇】kubeadm v1.20 部署K8S 集群架构(人生这道选择题,总会有遗憾)

    系列文章目录 ??即日起,更新云原生相关知识,喜欢的小伙伴可以给我点个三连喔 ??收录至专栏 云原生 ??[云原生Docker系列第一篇]Docker镜像管理 ??[云原生Docker系列第二篇]Do ...

  9. ESP32系列--第九篇 ADC的使用

    一.目的 本篇主要介绍ESP32的ADC功能,ESP32有两个ADC模块,分别为ADC1/ADC2,每个ESP32系列具有的通道数不一样,详情请看下表. 在WiFi在使用时,ADC2的使用受到一些限制 ...

最新文章

  1. 两年AI研究经验(教训)总结,进来看看吧!
  2. python 参数个数 同名函数_如何在python中编写不同参数的同名方法
  3. JS调用后台带参数的方法
  4. tensorflow中使用tf.ConfigProto()配置Session运行参数GPU设备指定
  5. 更新日志_Roam 更新日志:0.7.3 啦
  6. Leet Code OJ 110. Balanced Binary Tree [Difficulty: Easy]
  7. php如何检测键盘按键,js键盘事件,判断按下的是哪个键
  8. mfc mysql操作_MFC的数据库操作
  9. 关于python下的mysql数据库查询存储操作
  10. spring data jpa 之初体验
  11. Unity游戏开始界面制作教学
  12. 论文答辩相关PPT:论文答辩模板及其它
  13. html标题栏显示文字居中,让标题栏文字居中
  14. 关于大学,关于游戏和游戏开发
  15. CF14E Camels
  16. DataGrip下载安装及使用教程(详细版)
  17. 数据分析及挖掘到底能带来什么价值?
  18. 视频处理入门 | 六
  19. 统计_偏态、峰值(Datawhale概率统计温习2)
  20. Linux入门一:什么是Linux和shell?

热门文章

  1. 枚举类与注解的详细介绍
  2. xbox下载游戏一直显示排队解决方法
  3. ubuntu 20.04的netplan多VLAN配置
  4. 优盘中发现计算机病毒怎么办,U盘插入电脑中发现autorun.inf病毒怎么删除
  5. 131页8万字数字化矿山整体解决方案
  6. 狼人杀个人理解玩法之(守卫)
  7. 2-3超市购物程序设计
  8. 计算机视觉cv(2)
  9. 印度孟买机器人餐厅_孟买 | 印度不是我的菜,但这家上百年的#最奢华酒店#是个例外...
  10. 我在办公室鱼缸里 找到了窃密设备【反窃密知识分享】