登录
|
注册会员
开启辅助访问
设为首页
收藏本站
扫一扫关注官方微信
论坛
BBS
M币充值
M currency prepaid phone
M币获取
附件中心
搜索
search
全新论坛MCU智学网上线,欢迎访问新论坛!稀缺资源、技术干货、参考设计、原厂资料尽在MCU智学网
MCU资讯论坛
»
论坛
›
单片机论坛
›
单片机应用于方案
›
使用普通I/O口实现电容触摸感应的解决方案
更新自动建库工具PCB Footprint Expert 2023.13 Pro / Library Expert 破解版
使用普通I/O口实现电容触摸感应的解决方案
[复制链接]
5244
1
ad***
管理员
发表在
单片机/DSP
2013-6-7 11:58:57
|
查看全部
|
阅读模式
本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要
登录
才可以下载或查看,没有帐号?
注册会员
x
技术背景
现在电子产品中,触摸感应技术日益受到更多关注和应用,不仅美观耐用,而且较传统机械按键具有更大的灵敏度、稳定性、可靠性,同时可以大幅提高产品的品质。触摸感应解决方案受到越来越多的IC设计厂家的关注,不断有新的技术和IC面世,国内的公司也纷纷上马类似方案。Cpress公司的CapSense?技术可以说是感应技术的先驱,走在了这一领域的前列,在高端产品中有广泛应用,MCP推出了mTouch?,AT也推出了QTouch?技术,FSL推出的电场感应技术与MCP的电感触摸也别具特色,甚至ST也有QST产品。
但是目前所有的触摸解决方案都使用专用IC,因而开发成本高,难度大,而本文介绍的基于RC充电检测(RC Acquisition)的方案可以在任何MCU上实现,是触摸感应技术领域革命性的突破。首先介绍了RC充电基础原理,以及充电时间的测试及改进方法,然后详细讨论了基于STM8S
单片机
实现的硬件、软件设计步骤,注意要点等。
一、RC充电检测基本原理
RC充电检测基本原理是对使用如
PCB
的电极式电容的充电放电时间进行测量,通过比较在人体接触时产生的微小变化来检测是否有‘按下’动作产生,可选用于任何单独或多按键、滚轮、滑条。
如图1(a)所示,在RC网络施加周期性充电电压Vin,测量Vout会得到如(b)的时序,通过检测充电开始到Vout到达某一门限值的时间tc的变化,就可以判断出是否有人体接触。图2显示出有人体接触时充电时间会变长。
实现电路如图3,使用一个I/O口对PCB构成的电容充电,另一个I/O口测量电压,对于多个按键时使用同一个I/O口充电。R1通常为几百K到几M,人体与PCB构成的电极电容一般只有几个pF,R2用于降低噪声干扰,通常为10K。
二、充电时间测量方法
对充电时间的测量可以使用MCU中定时器的捕捉功能,对于多个按键一般MCU没有足够的定时器为每个按键分配一个,也可以使用软件计时的方法,这要求能对MCU的时钟精确计数,并且保证每个周期的时钟个数保持一定。这种情况通常要求对按键使用一个独立的MCU,以保证不被其他任务中断。
为了提高系统的可靠性和稳定性,改进的测量方法是对Vout进行高和低两个门限进行测量。如图4所示,通过对t1和t2的测量,从而达到更可靠的效果。另外,多次测量也是有效的降低高频干扰的有效方法。
实际应用中可以使用数字信号的方式直接测量t1和t2,因为数字信号的‘1’和‘0’也都有最高与最低输入门限。使用软件查询方式测量,通过固定频率检测输入脚,其中‘0’的个数就是t1,‘1’的个数就是t2,实际上就是输入信号上升到VIHmin和下降到VILmax的时间。
三、PCB设计注意事项
不论是单按键、多按键、滑条、滚轮设计,还是混合应用,都可以使用一个I/O进行充电,即可减少资源应用,又可以因使用同一定时标准从而简化软件设计。
用于传递按键信号的线一定要足够的细,以降低线路造成的电容的影响,信号线间距为两倍线宽,不同组的信号间距应保证3mm~5mm。同组的信号线长度应尽量保持一致,不同组的信号线不可以交叉。独立按键的形状可设计为、圆、三角或正多边形,尺寸以10mm~15mm为宜。滑条的形状可以是长方形或锯齿形,滚轮可以设计为幅射的扇形或环形,也可以是交错的齿轮,每个部分之间应保持0.2~0.5mm。按键PCB层不应该覆铜,否则会影响感觉的灵敏度,而反面可以覆铜,可以减少干扰。
按键除设计为单通道模式,还可以设计为多通道模式,通过对附近按键的感应信号强度判断手指的位置,甚至可设计出‘连续’的滑动效果。
LED经常在感应设计中用来指示按键是否有效按下,注意按键的地或电源线就尽量短,线路较长时宜增加1nF的滤波电容。
另外,建议电源电路使用线性电源而不是开关电源,这对提高感应灵敏度很重要。
四、软件设计流程
ST公司设计了完整的基于RC充电检测的电容式感应触摸方案的完整设计,包括PCB和完整的源程序,以及基于STM8S的标准触摸感应库(Touch Sense Library:TSL)和应用API接口,采用易于移植的C设计,用户可以方便地应用于其他任何MCU系统中。因为RC充电理论涉及的专利已经对公众开放,所以完全没有专利的限制。
图7是ST的触摸感应设计库TSL的架构示意。
ST的TSL内容包括滤波和校正算法,环境变化系统,自动根据环境温度、湿度、电压、灰尘等因素调整配置参数。提供了包括单通道和多通道的感应设计API函数,层次驱动的项目工程。基于STM8Sxxx-TS1-EVAL演示板的软件在STVD开发平台下设计,使用COSMIC-C语言编译器,包括完整的源代码,篇幅有限,不能详述。
结论:通过实验,我们使用STM8S的触摸感觉按键与CY的CAPSENSE触摸按键的效果进行了对比,结果证明二者在灵敏度与可靠性方面不相上下,在水浸、增加覆盖物情况下,本方案适应性更佳。
举报
回复
1 个评论
ray***
新手上路
发表于 2022-9-22 13:37:58
|
显示全部楼层
非常精彩,膜拜大神,好好
举报
回复
支持
反对
返回列表
*
滑块验证:
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册会员
本版积分规则
发表回复
回帖后跳转到最后一页
回复
转播
评分
分享
打开支付宝扫一扫,最高立得1212元红包
搜索
本版
帖子
用户
热搜:
传感器
51串口程序
电子管放大器
夾式電表
夾式電流
Mentor论坛
打印机
版块推荐
百宝箱
My 布拉格
无边框Z9
Z9Max
Z9mini
nubia动态
问题 & 建议
资源分享
爱拍
同城会
牛仔生活
查看论坛所有版块>>
每日签到
论坛任务
摄影技巧
跳蚤市场
互助问答
论坛导读
申请内测
红包中心
每日摇一摇
活动中心
网站地图
官方旗舰店
图文热点
俄罗斯的6H23+6П43推挽电路机器欣赏
AP3215 8-150V 外围简单 宽输入 电压降压BU
产品描述 AP3215是 一系列外围电路简洁的宽输入电压降压BUCK 恒压恒流驱动器 ,适用
VK1056Q QFN246是一个点阵式存储映射的LCD
产品品牌:永嘉微电/VINKA 产品型号:VK1056Q 封装形式:QFN24L 概述 VK1056Q是
超高清图解示波器使用方法
3线串行接口/工作电压工作电压 2.4-5.2V/VK
产品品牌:永嘉微电/VINKA 产品型号:VK1056B/C 封装形式:SOP/SSOP24 概述 VK1
更多
精华推荐
俄罗斯的6H23+6П43推挽电路机器欣赏
AP3215 8-150V 外围简单 宽输入 电压降压BU
VK1056Q QFN246是一个点阵式存储映射的LCD
一个名为伯努瓦(Gislain)的人,用了3年时
AP2121太阳能草坪灯驱动芯片
超高清图解示波器使用方法
3线串行接口/工作电压工作电压 2.4-5.2V/VK
单片机驱动彩屏最简方案:单片机_RA8889最
更多
社区学堂
俄罗斯的6H23+6П43推挽电路机器欣赏
AP3215 8-150V 外围简单 宽输入 电压降
俄罗斯的6H23+6П43推挽电路机器欣赏
AP3215 8-150V 外围简单 宽输入 电压降压BU
产品描述 AP3215是 一系列外围电路简洁的宽输入电压降压BUCK 恒压恒流驱动器 ,适用
VK1056Q QFN246是一个点阵式存储映射的LCD
产品品牌:永嘉微电/VINKA 产品型号:VK1056Q 封装形式:QFN24L 概述 VK1056Q是
更多
客服中心
QQ:187196467
服务时间:周一至周日 8:30-20:30
在线客服
客服微博
产品咨询
售后中心
关注我们
关于我们
关于我们
友情链接
联系我们
帮助中心
网友中心
购买须知
支付方式
服务支持
资源下载
售后服务
定制流程
关注我们
官方微博
官方空间
官方微信
QQ:187196467
周一到周日 8:30-22:00 (全年无休)
7 x 24小时在线客服
手机版
Powered by
MCUZX!
X3.4 © 2008-2015
MCU资讯论坛
版权所有
京ICP备18035221号-2
客服QQ: 187196467
技术支持:
MCU资讯论坛
|
网站地图
快速回复
返回顶部
返回列表