找回密码
 立即注册
查看: 1431|回复: 8

用普通IO脚做触摸按键

[复制链接]

1

主题

0

回帖

9

积分

新手上路

积分
9
发表于 2023-6-26 22:05:23 | 显示全部楼层 |阅读模式
本帖最后由 wsh5188stc 于 2023-6-26 22:05 编辑

有没有大佬用普通IO脚做过触摸按键,教一下该怎么搞,我现在在玩stc8G1K08,想弄一个触摸按键。
回复

使用道具 举报 送花

已绑定手机

0

主题

5

回帖

144

积分

注册会员

积分
144
发表于 2023-7-17 10:58:17 | 显示全部楼层
我以前做过   程序和硬件要配合调试
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:116
  • 最近打卡:2025-07-03 09:40:59

741

主题

1万

回帖

1万

积分

管理员

积分
17346
发表于 2023-7-17 19:43:44 | 显示全部楼层
改用 STC8H1K08T-33I-TSSOP20, 内置硬件触摸按键模块
1.png

1.png

回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2023-12-05 19:37:53

3

主题

324

回帖

363

积分

禁止发言

积分
363
发表于 2023-9-24 02:13:37 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:312
  • 最近打卡:2025-03-11 13:20:13

54

主题

1327

回帖

5499

积分

荣誉版主

积分
5499
发表于 2023-9-24 09:27:51 | 显示全部楼层
WangC*** 发表于 2023-9-24 02:13
触摸按键不是跟普通按键的功能都是一样的吗 没有什么区别啊

不一样.

触摸按键 是电容感应输入(内部是模拟电压输入, 输入阻抗高), 抗干扰性差.

普通按键 是高低电平输入(输入阻抗低), 抗干扰性极强.
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2024-01-21 18:40:43

4

主题

21

回帖

142

积分

注册会员

积分
142
发表于 2023-10-11 01:18:30 来自手机 | 显示全部楼层
触摸按键是一个电容啊,你用普通io肯定不行,用adc吧
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:4
  • 最近打卡:2025-03-05 16:19:25

3

主题

10

回帖

119

积分

注册会员

积分
119
发表于 2023-10-17 14:24:37 | 显示全部楼层
本帖最后由 LiHooo 于 2023-10-17 14:32 编辑

一、通过电阻方式实现触摸
普通IO口设置成“输入模式”,通过人体充当导体来输入低电平。程序中直接读入IO口的值即可。
IO口上接上拉电阻,R1大约几百K~几M(越大越灵敏也越容易被干扰),C1是滤波电容,也可以稍微的预防人体静电对MCU的损坏,在这里取100pF~470pF。
缺点也很明显:1、受环境湿度和手指湿度影响。2、容易被静电损坏。3、触摸的金属片露在空气中容易被氧化。

截图202310171259464677.jpg

二、通过电容方式实现触摸
电容触摸键一般是PWM+ADC来实现的。
高频脉冲输出到触摸级片上,用ADC来检测极片上经过滤波后的电压。
在STC15系列的数据手册上有详细的介绍。

截图202310171335491531.jpg

此外,还有一种思路是通过电容充放电的方式实现。
1.IO口设置为开漏输出模式。
2.IO口输出“0”,让外部寄生电容放电。
3.IO口输出“1”(即开漏悬空状态),让外部的上拉电阻给寄生电容充电。与此同时开始计时。
4.当IO口检测到“1”时停止计时。
5.当计时时间变大说明检测到触摸动作。
以1~5循环检测。
原理:
当手指靠近或隔着绝缘物触摸极片时,人体对地电容极片的寄生电容并联,使步骤3中的充电时间变长。

截图202310171402263537.jpg
充电过程。纵坐标是IO口上的电压,VIH1是单片机检测到“1”的电压阈值,在数据手册中有说明(此电压与本文关系不大)。
黄线是未触摸的充电曲线,绿线是触摸的充电曲线
截图202310171417168194.jpg
截图202310171414401207.jpg

当电容发生变化时,充电至VIH1的时间也会发生变化。

截图202310171417396585.jpg
个人博客www.lihooo.top
回复 支持 1 反对 0

使用道具 举报 送花

0

主题

8

回帖

42

积分

新手上路

积分
42
发表于 2023-10-21 08:40:19 | 显示全部楼层
触摸按键自带高级感,因无机械部件,使用寿命很长,当然,也不可避免存在触摸不灵或易受干扰等问题。
用普通IO端口(非ADC端口)模拟触摸按键应该是可以的,但一定需要前置硬件电路的配合(不仅仅是软件),建议参考常用的延时触摸开关(核心是多施密特非门)来设计。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:436
  • 最近打卡:2025-07-03 08:19:04

10

主题

214

回帖

1545

积分

金牌会员

积分
1545
发表于 2023-12-25 09:17:35 | 显示全部楼层
学习了
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-7-3 09:51 , Processed in 0.123255 second(s), 111 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表