微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 怎样使用MSP430来构建触摸按键

怎样使用MSP430来构建触摸按键

时间:02-27 来源:本站整理 点击:

触摸按键的实现主要是通过检测板级系统上构建的RC振荡电路在固定时间内的振荡次数,如果振荡次数发生明显变化,则判断为触摸状态。那么振荡次数主要是由RC的值决定,在系统中R值是固定的,而电容C即系统的中的传感器,是由PCB layout的一个尺寸与手指大小的覆铜片。其与周围的地层构建一个电容值微小的电容(大约为10pF)。当手指接近会改变其介电常数, 导致电容值发生改变,因而导致振荡次数发生改变。如1图所示

图1

那么从实现角度来说,要实现触摸功能需要有RC振荡比较网络,比较器以及计数器。而MSP430具有这类资源,且其管脚漏电流非常小,非常适合用于触摸按键的功能。目前主要有检测RC充放电时间的方法(RC)与检测RC振荡次数即弛张振荡的方法(RO)。从目前的应用的角度,RO方法具有更好的稳定性与抗干扰能力。其原理如图2所示。

图2

MSP430的内置比较器和外部的冲放电电阻Rc以及感应电容Csensor一起构成了一个张驰振荡器结构。而感应电容Csensor就是这个振荡器的调协元件,Csensor的任何变化都相应的改变张驰振荡器的谐振频率。我们利用MSP430内置的定时器A来采样振荡频率,从而可以检测到Csensor的变化。

基于MSP430的触摸按键2

触摸按键的原理性东西在第一篇里已经大概讲过,本篇主要具体介绍一下怎么样使用MSP430来构建触摸按键。

图1

这张图1在上一章已经讲过。对于图中Px.y为高,比较器正端为高,Csensor进行充电,直到比较器负端为高时,比较器输出反向为低,则Csensor开始放电,如此持续振荡。比较器内部输出的是方波信号,通过TimerA对其进行计数。通过对比在固定时间窗里振荡数目的变化来判断是否有触摸的动作。下图为时间窗与震荡次数的关系。

图2

那么我们在使用430时有哪些方法来构建触摸按键系统呢?

图3

图3给我们展示了3种在MSP430上构建触摸按键的方法。第一种使用的是比较器COMPA+来实现,在所有430中只有带有比较器的器件都能够实现。第二种使用的是比较器COMPB来实现,相比第一种,由于比较器COMPB中已经带有参考电压网络Vref,所以可以省去在外部使用硬件构建参考电压。第三种方法是PinOsc使用的是MSP430 value line G2xxx系列,其引脚功能带有触摸功能,它的实现方式是在芯片内部构建了类似于斯密特触发器的功能,无需管脚外部在使用电阻R构成RC振荡网络,其内部的斯密特触发器能够进行振荡。如图四所示。

图四

总结一点,在MSP430中只要由COMPA+或者COMPB,以及Value line 中的MSP430G2xx2/3的器件中都能够构建触摸按键功能,其中按键的个数与比较器的通道数有关,而在Vauleline中,按键的个数与TOUCH I/O引脚数有关。最高支持24个按键(G2553)。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top