触控感应按钮计数(CYD)

复用 btntest 的 CYD + SoftSPI 触控 + LVGL 壳,针对 电容触控感应模块(如 TTP223)单独优化:抖沿确认、最短触摸、松手再武装。

GPIO22 读模块 OUT:每次有效触摸,屏幕计数 +1。

硬件

项目 说明
板子 CYD ESP32-2432S028R
模块 三脚触控感应(VCC / GND / OUT),典型 TTP223
输出 GPIO22

接线

模块 CYD
VCC / 3.3V 3.3V
GND GND
OUT / S / DO GPIO22

开机自动采空闲电平,反相视为触摸(兼容「触摸变高」或「触摸变低」)。引脚用浮空 INPUT(推挽输出,不上/下拉)。

屏上 OUT HIGH/LOW 与 act=:触摸时 OUT 应变到 act 那一侧并 +1;hold / 进度条显示持续触摸。

相对机械轻触的优化

点 说明
多数表决 5 次采样,压接近阈值时的抖沿
积分迟滞 更宽进入/离开门限
最短确认 稳定触摸 ≥ 35ms 才计 1 次
松手再武装 松开后再冷却 120ms,防悬停连计
UI 显示 TOUCHING / hold ms / 触摸条

上电时请勿按住感应区。

操作

  • 轻触感应面一次:计数 +1
  • 屏上触控 Reset:清零

构建 / 烧录

pio run -e cyd -t upload

预编译包:

cd firmware\cyd
.\flash.ps1
# 或 .\flash.ps1 -Port COMx

导出固件:

.\firmware\export_from_build.ps1
Description
CYD project: touchbtntest
Readme 1.1 MiB
Languages
C 53.1%
C++ 27%
PowerShell 12.8%
HTML 6.1%
Python 0.7%
Other 0.3%