0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何制作ESP32电容式触摸输入器

454398 来源:工程师吴畏 2019-08-22 09:49 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:硬件。

如何制作ESP32电容式触摸输入器

该设计采用以下硬件:

一,WiFi套件32.

三个,3/8“金属孔塞。

三,四“长度的28awg电线。

为了组装硬件,我执行了以下步骤:

剥离并镀锡每根4“线长的末端,如图所示。

将第一根导线焊接到ESP32的针脚13(TOUCH4,或”T4“,输入)。/li》

将第二根导线焊接到ESP32的第12针(TOUCH5,或“T5”,输入)。

将第三根导线焊接到ESP32的第14针(TOUCH6,或“T6”输入)。

将三个3/8“金属孔塞中的每一个焊接到三根线长度的自由端。

步骤2:软件。

文件“Buttons.ino”是一个包含设计软件的Arduino环境文件。除此文件外,您还需要WiFi Kit32 OLED显示屏的“U8g2lib”图形库(有关此库的更多信息,请参阅https://github.com/olikraus/u8g2/wiki)。

在Arduino目录中安装U8g2lib图形库,并将“Buttons.ino”加载到Arduino环境中,编译并将软件下载到ESP32中。

下载并运行后,顶部的显示屏应显示“按钮”,显示屏的第二行显示“1 2 3”作为按钮指示。在每个1,2,3按钮指示器下方是未经过滤的触摸读取值,并且在每个按钮指示器下方是按钮按下指示器(按下“1”,未按下“0”)。从视频中可以看出(并且经过长期测试确认),软件过滤器提供可靠的按钮输入检测,没有错误触发。

步骤3:关于软件。

该软件包含三个主要代码部分; Arduino需要“setup()”和“loop()”部分,以及“Interrupts”部分。 setup()部分包含初始化OLED和中断服务所需的代码。 OLED设置功能在上面的链接中描述。中断服务设置功能如下:

timerLoopSemaphore = xSemaphoreCreateBinary()”为“InterruptService()”(中断服务程序)创建一个信号量,以便在时间结束时通知loop()执行循环传递。

“timerInterruptService = timerBegin(0,80,true)”使用预定义为80的硬件定时器0创建一个定时器。

“timerAttachInterrupt(timerInterruptService,&InterruptService,true)”将InterruptService()附加到计时器。

“timerAlarmWrite(timerInterruptService,1000,true)”将中断服务速率设置为1000hz。

“timerAlarmEnable(timerInterruptService)”启动计时器警报,从而中断服务。

设置完成后,进入loop()并立即停在该行:

if(xSemaphoreTake(timerLoopSemaphore,portMAX_DELAY)== pdTRUE),

意味着loop()将在此时等待,直到来自InterruptService()的信号量到达。当信号量到达时,loop()代码执行,用按钮数据更新OLED显示,然后返回到顶部再次等待下一个信号量。 InterruptService()以1000hz运行且LOOP_DELAY值为30,loop()每30ms执行一次,或以33.333hz的显示更新速率执行。虽然这是大多数ESP32应用程序所需的更高的显示刷新率,但我使用此设置来说明过滤器的响应性。我测试并确定执行单个循环()传递所需的时间为20ms。

InterruptService()由setup()中创建的计时器以1000hz的速率调用。调用时,它会更新两个向下计数器,nLoopDelay和nButtonDelay。当nLoopDelay向下计数到零时,它发送信号量,允许loop()执行单次传递,然后重置nLoopDelay。当nButtonDelay向下计数到零时,它也会被重置,然后按钮“过滤”执行。

每个按钮过滤器都有一个唯一的过滤器计数器(例如nButton1Count,nButton2Count和nButton3Count)。只要分配给按钮的触摸输入值大于或等于定义的阈值(BUTTON_THRESHHOLD),分配给按钮和按钮的过滤器计数器保持为零。如果分配给按钮的触摸输入值小于定义的阈值,则分配给按钮的过滤器计数器每20ms递增一次。当过滤器计数器超过按钮过滤器值(BUTTON_FILTER)时,该按钮被视为“按下”。此方法的效果是创建一个过滤器,需要80ms(nmsutDelay * 4ms nButtonCountN,其中N是按钮数),连续触摸输入值低于定义的阈值,以考虑实际按下的按钮。任何小于80毫秒的时间都被视为“故障”并被过滤器拒绝。

鉴于此简要说明,如果您有任何疑问,请随时提出,我会尽力回答。

希望你喜欢它!

第4步:“即将推出的项目”。

即将推出的项目“Intelligrill®Pro”是一款双温度探头吸烟器监测仪,具有以下特点:

Steinhart-Hart温度探头计算(与“查找”表相对)增加准确性。

探针1的预测完成时间,包括Steinhart-Hart计算得出的提高的准确度。

第二个探头,探头2,用于监测吸烟者的温度(限制在32到399度之间)。

电容式触摸输入控件(如本教程中所示)。

基于WIFI的远程监控(使用固定的IP地址,可以在任何可以连接互联网的地方监控吸烟者的进度)。

扩展温度范围(再次为32至399度)。

在Intelligrill®发射器和大多数支持WiFi的监控设备上发出声音完成警报。

温度显示为°F或°C。

时间格式为HH:MM:SS或HH:MM。

电池显示为伏特或%充电。

即将推出基于螺旋钻的吸烟者的PID输出。

“Intelligrill®Pro”正在测试成为最准确,功能最强大且基于HTML的Intelligrill®我已经设计好了。

它仍然在测试中,但是在测试过程中它正在协助准备,我已经获得了超过几磅。

再次,我希望你喜欢它!

步骤5:下一个:ESP32 NTP温度探头模拟输入与Steinhart-Hart校正

Be准备为你的代数书除尘。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 触摸
    +关注

    关注

    8

    文章

    200

    浏览量

    65630
  • ESP32
    +关注

    关注

    24

    文章

    1083

    浏览量

    20849
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    电容式触摸屏适合用于工业环境是否被夸大?

    作者: Abhishek Jadhav 触摸屏技术彻底改变了人类操作员与工厂和工业场所复杂机器的交互方式。 受到智能手机和平板电脑精确且直观的界面的启发,制造商已在工厂车间采用电容式触摸屏(图 1
    的头像 发表于 10-04 18:13 1319次阅读
    <b class='flag-5'>电容式触摸</b>屏适合用于工业环境是否被夸大?

    ESP32内置电容触摸传感的使用

    本文介绍了ESP32芯片内置的电容式触摸传感能够探测由手指或其他物品直接接触或接近而产生的电容差异。利用此原理原理。把读取到的
    的头像 发表于 07-23 19:56 851次阅读
    <b class='flag-5'>ESP32</b>内置<b class='flag-5'>电容</b><b class='flag-5'>触摸</b>传感<b class='flag-5'>器</b>的使用

    PT8023W电容式触摸控制ASIC中文手册

    PT8023W 是一款电容式触摸控制 ASIC,支持单通道触摸输入和双路 PWM 输出,可引脚配置 6 种功能。PT8023W 主要应用于触摸
    发表于 03-19 18:12 0次下载

    PT2031电容式触摸控制ASIC中文手册

    PT2031 是一款电容式触摸控制 ASIC,支持单通道触摸输入和单路同步开关输出。适用于雾化、车载用品、电子玩具、消费类电子产品等领域,
    发表于 03-19 18:09 2次下载

    PT8020电容式触摸控制ASIC中文手册

    PT8020 是一款电容式触摸控制 ASIC,支持 10 通道触摸输入,高速 IIC 输出,多键同步模式。具有低功耗、高抗干扰、宽工作电压范围、高穿透力的突出优势。
    发表于 03-19 18:06 0次下载

    PT8028电容式触摸控制ASIC中文手册

    PT8028 是一款电容式触摸控制 ASIC,支持 8 通道触摸输入,二进制 BCD 编码和有效按键指示输出。算法带有自补偿功能,具有低功耗、高抗干扰、宽工作电压范围、高穿透力的突出优
    发表于 03-19 18:05 0次下载

    PT8026N电容式触摸控制ASIC中文手册

    PT8026N 是一款电容式触摸控制 ASIC,支持 6 通道触摸输入,一对一同步 NMOS 开漏输出。算法带有自补偿功能,具有低功耗、高抗干扰、宽工作电压范围、高穿透力的突出优势。
    发表于 03-19 18:01 0次下载

    PT8026电容式触摸控制ASIC中文手册

    PT8026 是一款电容式触摸控制 ASIC,支持 6 通道触摸输入,一对一同步 CMOS 输出。算法带有自补偿功能,具有低功耗、高抗干扰、宽工作电压范围、高穿透力的突出优势。
    发表于 03-19 18:00 0次下载

    PT8041电容式触摸控制ASIC中文手册

    PT8041 是一款电容式触摸控制 ASIC,支持 4 通道触摸输入1 线 DAC 输出。具有低功耗、高抗干扰、宽工作电压范围、高穿透力的突出优势。
    发表于 03-19 17:58 1次下载

    PT8032电容式触摸控制ASIC中文手册

    PT8032 是一款电容式触摸控制 ASIC,支持 3 通道触摸输入2 线 BCD 码输出。具有低功耗、高抗干扰、宽工作电压范围、高穿透力的突出优势。
    发表于 03-19 17:32 0次下载

    PT2025单键电容式触摸控制ASIC规格书

    1. 产品概述     PT2025 是一款单键电容式触摸控制 ASIC,支持单通道触摸输入和单路/双路 PWM 输出,可引脚配置 4 种模式。主要应用于
    发表于 03-17 17:34 0次下载

    白皮书:在HMI应用中实现高精度电容式触摸传感

    在HMI 应用中实现高精度电容式触摸传感
    的头像 发表于 03-17 16:46 1773次阅读
    白皮书:在HMI应用中实现高精度<b class='flag-5'>电容式</b><b class='flag-5'>触摸</b>传感<b class='flag-5'>器</b>

    深度应用在智能冰箱触摸屏中的电容式触摸芯片-GT301L

    ‌智能冰箱触摸屏的工作原理主要基于电容式触摸屏技术‌。当手指触摸到屏幕上时,会对屏幕的电容板产生电荷,通过感应电极实现电荷的感应和定位。
    的头像 发表于 01-14 09:41 1016次阅读
    深度应用在智能冰箱<b class='flag-5'>触摸</b>屏中的<b class='flag-5'>电容式</b><b class='flag-5'>触摸</b>芯片-GT301L

    电容式触摸芯片 超强抗干扰 选型指南、应用方案

    的制约;硬件结构包括:控制电容感测;控制负责执行软件算法,以处理电容式触触控芯片的输入
    的头像 发表于 12-23 16:14 1296次阅读
    <b class='flag-5'>电容式</b><b class='flag-5'>触摸</b>芯片 超强抗干扰 选型指南、应用方案

    MSP430电容式触摸电源设计GUI用户指南

    电子发烧友网站提供《MSP430电容式触摸电源设计GUI用户指南.pdf》资料免费下载
    发表于 12-10 14:03 0次下载
    MSP430<b class='flag-5'>电容式</b><b class='flag-5'>触摸</b>电源设计<b class='flag-5'>器</b>GUI用户指南