PSoC电容式触摸感应技术
PSoC是由Cypress半导体公司推出的具有数字和模拟混合处理能力的可编程片上系统芯片,某些系列的PSoC(如CY8C21X34系列),由于其内部配备的特殊资源,使得它可以很容易地实现电容式触摸感应功能,仅需少量的几个外置分立元件,可以将每一个通用的I/O都配置为电容感应输入。
电容式触摸感应原理如图1所示,电路板上两块相邻的覆铜之间存在一个固有的寄生电容Cp,当手指(或其他导体)靠近时,手指和两块覆铜之间又产生新的电容,这些电容相当于并联到原来的Cp之上,当我们把其中一块覆铜连接到PSoC的模拟I/O上,另一块连接到地上,就可以通过测量电容的变化来判断手指的存在。
我们把连接到PSoC上的覆铜称之为电容传感器(Capacitive Sensor),电容传感器上需覆盖绝缘材料(产品外壳)。通过在PSoC内部搭建电路并用内建8位处理器的程序来控制电路的运作,就可以把电容的变化转化成计数值的变化,进而转化成按键动作所需要的开关量。

P
SoC内部有几种预先设计好的电容感应用户模块,用户模块可以看作是硬件电路配置与软件库函数(API)的集合,用户所需要做的就是在PSoC开发环境(PSoC designer)中将用户模块配置到数字/模拟阵列中,开发环境会自动生成硬件寄存器配置及库函数,剩下的工作就是一些用户模块参数的调整,以及应用代码的编写。整个开发过程非常直观、流畅,对于有嵌入式系统开发经验的工程师来说,很快就会得心应手。
电容式感应技术为工业设计提供新的思路
有了电容式感应技术,工业设计师首先能想到的就是把传统的机械按键换成电容式的感应开关。这增加了工业设计的灵活性,因为电容式开关可以隐藏在一块完整的表面下边,不需要像机械按键那样需要预留机械部件运动的空间。在有些便携式产品上,设计师希望能在产品上赋予自然的灵性,比如像贝壳一样的MP3播放器、像卵石一样的手机,用电容式开关取代机械按键可以在最大程度上还原设计师的构思,让产品外观有浑然天成的效果。
按键是电容式感应技术最常见的应用方式,利用PSoC内建8位处理器的运算,可以在产品上实现更为人性化的操作方式,比如滑动条(一维操作)和触摸板(二维操作)。
将多个电容传感器并排放在一起就可以实现滑动条(slider)的功能,如图2所示,PSoC按顺序感测每一个传感器的电容变化,除当前正在被感测的传感器以外,其他的传感器都在PSoC内部连接到地上,这样可以保证每个传感器的电容一致性。

滑动条在布局时需保证手指可以同时覆盖或接近至少2个传感器,这样在图2的计数值曲线上会呈现一个凸起型的变化趋势,通过插值算法可以精确计算出当前的手指的中心位置,此位置的分辨率要远远大于实际传感器的个数。而位置的变化即手指滑动的方向和位移即可以转化成用户的输入信息。


改变滑动条的排列形状可以使滑动条呈现各种各样的线条,从而美化产品的外观。图3是一种圆型的滑动条的传感器排布。根据工业设计的需要,滑动条还可以在外观上体现为扇形、椭圆形、波浪形等等。滑动条不但提供了一种新的UI输入方式,还在产品外观上增加了必要的美学点缀,使设计更富有神秘感。
二维的滑动条就构成了触摸面板,如图4所示,通过在横向和纵向分别扫描就可以定位触摸点的二维坐标,笔记本电脑上的Trackpad就是利用这个原理。随着显示屏幕(如LCD)分辨率的日渐增加,越来越需要二维的坐标信息来定位屏幕上的位置,因此触摸面板也就有了用武之地。
充分利用有限的输入区域
随着便携设备的发展,在产品的有限空间上摆放尽量多的输入元素就成为一个新的挑战。PSoC的软功能键定义为这个需求提供了一个很好地解决方案。图3中给出了的软功能键的基本原理,在滑动条或触摸面板上定义一个坐标区域,当手指在此区域中保持一定时间,就认为是该区域对应的功能键被按下。
软功能键的设计为设计节省了空间,在一块滑动条或触摸面板上,可以实现不同类型的输入元素,如图5所示,在5a的这样的一块触摸面板上,通过覆盖不同的提示图案5b、5c或5d,可以同时实现按键和触摸面板的功能,用户的输入意图可以根据手指的运动规律由PSoC软件自动识别,无需机械切换动作。这样的设计,在提高空间利用率的同时,也为设计师提供了更多想像的空间。

设计师也许会问,在图5中,5b、5c和5d这样不同的输入功能,可不可以在这一个区域上同时实现呢?答案是肯定的,将5a的触摸面板换成透明的金属材料(如ITO,即铟锡氧化物),将此透明的触摸面板贴合到具有动态显示功能的显示屏(如LCD)上,由显示屏显示出不同的按键布局,即可实现动态输入键的功能。ITO这种金属材料的透明度与自身阻抗成正比,即透明度越高,阻抗越高,采用PSoC最新的触摸感应算法,可以使电容式触摸感应免受高阻抗的影响,从而保证显示的效果。
如何与用户产生交互
传统机械按键的使用方式已经深入人心,机械按键给人的力学反馈是触摸按键所不能提供的,这不禁让人担心触摸按键的交互性不好。其实这种担心是没有必要的,PSoC为用户提
供了其他的选择。
PSoC内部有丰富的数字和模拟资源,电容式触摸感应只用到了其中的一部分,剩余的资源可以用来进一步增加系统功能和优化系统设计。如图6所示,用PSoC来连接不同的外设,可以为用户提供听觉反馈(蜂鸣器),触觉反馈(马达)或视觉(LED)反馈,而推动这些外设都可以用PSoC内部资源来实现,无需或仅需少量的分立元件。

在资源不够用的情况下,甚至可以利用PSoC的动态重配置功能,分时地使用PSoC内部的硬件资源,以达到资源利用的最大化。
让产品学会欢迎主人
电容式的触摸感应还有另外一个应用,就是接近式感应,亦即用户无需触摸到产品的外壳,只要接近了产品,就能被感应到。PSoC实现接近式感应是通过减小传感器上的固有电容Cp来相对放大外来的电容变化,从而能感应10cm范围内的人体接近。
这种接近式感应也为产品的工业设计提供了新的思路。比如说当用户接近产品的时候,产品的显示屏背光(或效果灯)亮起,让用户能提前看到目前的工作状态;或者产品上播放一段音乐,让用户产生被欢迎的感觉。这样的设计有两个好处,首先是省电,众所周知,产品上的显示屏是用电大户,而当用户未接近时,显示屏上的信息完全没有发挥作用,因此可以在此时将显示屏关闭,或背光关闭,而在用户靠近时打开,这可以在很大程度上节省电能;其次接近式感应设计可以增加交互的乐趣,提升产品的附加值,从而刺激客户的购买欲。
由于PSoC的硬件和软件可编程特性,以及其丰富的片上资源,使得其在电容式触摸感应技术领域具有得天独厚的优势,它可以使产品设计在功能和性能上差异化,并最大程度上降低系统的成本。
PSoC电容式触摸感应技术的更多相关文章
- Silicon Labs电容式触摸感应按键技术原理及应用
市场上的消费电子产品已经开始逐步采用触摸感应按键,以取代传统的机械式按键.针对此趋势,Silicon Labs公司推出了内置微控制器(MCU)功能的电容式触摸感应按键(Capacitive Touch ...
- 基于Microchip单片机的触摸感应技术
Microchip提供两种电容式触摸感应解决方案,一种为张驰振荡器方式,即通过检测触摸感应电容充放电的频率变化,来检测是否有键按下,根据单片机集成的硬件资源不同,另一种通过Microchip单片机集成 ...
- 【Android开发学习笔记】【第九课】重力感应
概念 使用重力感应技术的Android游戏已经屡见不鲜,不知道自己以后会不会用到,所以先研究了一下. 在网上学习了一下,貌似没有api,所以得自己去分析手机处在怎样状态下.注意: 下面提供的demo程 ...
- (转)iOS Wow体验 - 第八章 - 易用性与自动化技术
本文是<iOS Wow Factor:Apps and UX Design Techniques for iPhone and iPad>第八章译文精选,也是全书译文的最后一篇.上一篇:W ...
- 电子标签(RFID)天线的印制技术
电子标签是射频识别(RFID)的俗称,RFID是射频识别技术的英文(RadioFrequencyIdentification)缩写,射频识别技术是一项利用射频信号通过空间耦合(交变磁场或电磁场)实现无 ...
- H5之重力感应篇
手机的重力感应支持里,有两个主要的事件: 1. OrientationChange (在屏幕发生翻转的时候触发) 2. DeviceOrientation+DeviceMotion(重力感应与陀螺仪) ...
- android小游戏模版—重力感应
好久没更新博客了,今天来谈谈android小游戏---重力感应,一般在游戏里运用的比較多,比方这类游戏有:神庙逃亡.极品飞车,平衡球.三围重力迷宫,重力赛车等. 首先什么是重力感 ...
- 【朝花夕拾】Android自定义View篇之(八)多点触控(上)MotionEvent简介
前言 在前面的文章中,介绍了不少触摸相关的知识,但都是基于单点触控的,即一次只用一根手指.但是在实际使用App中,常常是多根手指同时操作,这就需要用到多点触控相关的知识了.多点触控是在Android2 ...
- RH6030 单通道触摸感应开关
1.概述: RH6030 是一款单通道电容式触摸感应控制开关IC,可以替代传统的机械式开关. 该 IC 采用CMOS 工艺制造,结构简单,性能稳定.IC 可通过外部引脚配置成多种工作模式,可广泛应用于 ...
随机推荐
- /var/log目录下的20个Linux日志文件功能详解 分类: 服务器搭建 linux内核 Raspberry Pi 2015-03-27 19:15 80人阅读 评论(0) 收藏
如果愿意在Linux环境方面花费些时间,首先就应该知道日志文件的所在位置以及它们包含的内容.在系统运行正常的情况下学习了解这些不同的日志文件有助于你在遇到紧急情况时从容找出问题并加以解决. 以下介绍的 ...
- 对vpn的认识
网上关于vpn的资料非常多,看后眼花缭乱,仍然感觉一片混沌.网上,网下參考一些资料后.试着理清一些概念问题,由于,概念理清了,找到门了,才不至于左右徘徊,一片混沌. 首先vpn,这个我们都知道叫虚拟专 ...
- Qt自定义控件(插件)并添加到QtDesigher
之前使用Qt的时候都是手写代码的(因为批量按钮可以使用数组实现),但当界面越来越复杂时,这种开发效率就太低了; 后来就开始使用QtDesigner,但要使QtDesigner支持我自己写的控件,需要提 ...
- object C—类中函数的调用
Object C-类中函数的调用 创建,三个类.然后,在代码中调用相同名字的函数.观察他们的调用次序. @interface test : NSObject - (void)print; @end @ ...
- Java基础知识强化01:short s = 1; s = s + 1;与short s = 1; s += 1;
1.short s = 1; s = s + 1;有没有问题?如果有怎么解决? short s = 1; s += 1;有没有问题?如果有怎么解决? 2.理解: short s=1; s=s+ ...
- linux下面安装和配置nginx
下载nginx-1.0.2.tar.gz wget nginx-1.0.2.tar.gz 解压 nginx-1.0.2.tar.gz tar -xzvf nginx-1.0.2.tar.gz 配置安装 ...
- js实现图片自动切换效果。
js实现图片自动切换效果,简单实用,原谅我只是一只小菜鸟还在学大神天天写博文装逼. <script language="javascript"> setInterval ...
- C# Activator.CreateInstance()
C#在类工厂中动态创建类的实例,所使用的方法为: 1. Activator.CreateInstance (Type) 2. Activator.CreateInstance (Type, Objec ...
- 在ASP中调用DLL的方法
.net的dll已经不是严格意义上的动态连接库了,而是一个类或者类库.它是不能直接在ASP.VB等其它的应用环境中使用的. 我们可以通过COM包装器(COM callable wrapper (C ...
- Spring+AOP+Log4j 用注解的方式记录指定某个方法的日志
一.spring aop execution表达式说明 在使用spring框架配置AOP的时候,不管是通过XML配置文件还是注解的方式都需要定义pointcut"切入点" 例如定义 ...