电容式触摸按键的设计与实现软件部分Word格式文档下载.docx
- 文档编号:16768668
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:45
- 大小:2.63MB
电容式触摸按键的设计与实现软件部分Word格式文档下载.docx
《电容式触摸按键的设计与实现软件部分Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《电容式触摸按键的设计与实现软件部分Word格式文档下载.docx(45页珍藏版)》请在冰豆网上搜索。
由于电阻式的触摸按键需要在设备表面贴一张触摸电阻薄膜,其耐用性较低;
而电容感应按键技术具有在非金属操作面板上无须开孔处理、防水防污、易清洁、无机械开关磨损而寿命长等优点。
本论文通过分析电容式触摸感应技术,研究人体触摸算法,设计出基于PIC单片机的电容式触摸按键系统。
根据系统的要求完成了整体方案设计,在所设计的控制方案里对控制系统的软、硬件设计作了详细论述。
本论文主要介绍软件部分,并将系统软件分为:
系统初始化模块、按键识别模块、LCD显示模块、高优先级和低优先级中断服务程序模块。
首先将各个模块进行分析研究,然后进行软硬件联合调试,最后完成该毕业设计所要求的内容。
关键词:
电容式触摸感应;
模块化;
调试;
PIC16F1937
Designandimplementationofcapacitivetouchkeys
Abstract
Nowadays,automaticcontrolsystemshavebeenwidelyusedanddevelopedinEveryaspectoflife,theapplicationofportablemediaplayersandmobilehandsets,suchaslarge-capacity,high-visibilityproducts,thetouchbuttonsasaninterfacetechnologyhasbeenwidelyadopted.Easytouse,stylishandlow-costadvantage,moreandmoreelectronicproductsbegantoshiftfromthetraditionalmechanicalbuttonswithtouchbutton.
Touch-buttontechnologycanbedividedintoresistivetouchbuttonsandcapacitivesensingbuttons.Resistivetouchkeystouchthesurfaceofthedeviceisattachedaresistivefilm,theloweritsdurability;
Capacitivesensingkeytechnologieshasahandleonthepanelofnon-metallicoperatingwithoutopening,wateringpollution,easytocleaning,non-mechanicalswitcheswearlonglifeadvantages.
Inthispaper,byanalyzingcapacitivetouchsensingtechnologyandstudyinghumantouchalgorithm,wefinishthedesignofcapacitivetouchbuttonsystembasedonPICmicrocontroller.Accordingtotherequirementsofthesystemwecompletetheoveralldesignofthecontrolsystem,inwhichhardwareandsoftwaredesignarediscussedindetail.Thispapermainlyintroducesthesoftwarepart,whichisdividedintofourmodules:
thesysteminitializationmodule,thekeyrecognitionmodule,LCDdisplaymodule,ahighpriorityandlowpriorityinterruptserviceroutinemodule.Firstdoanalysisandstudyoneverymodule.Thencombinehardwarewithsoftwareanddebug.Finallycompletethegraduationdesign’srequirements.
KEYWORD:
Capacitivetouchsensing;
Modulardesign;
Debugging;
第一章前言
在便携式媒体播放器和移动手持终端等大容量、高可视性产品的应用中,触摸式按键作为一种接口技术已被广泛采用[1]。
因此触摸式按键作为一种简单方便的接口成果具有十分重要的意义。
1.1系统简介
为解决传统的机械式按键输入方式易磨损、寿命短等问题,消费电子产品已经开始逐步采用触摸感应按键,以取代传统的机械式按键。
最新一代电荷检测技术,利用操作者的手指与触摸按键焊盘之间产生电荷电平来进行检测,通过监测电荷的微小变化来确定手指接近或者触摸到感应表面。
通过本次设计可以更加深入了解电容触摸感应的相关知识,熟悉电容式触摸按键实现的具体过程。
1.2课题的研究背景
触摸技术如今已经成为信息技术发展的新趋势,由于操控直观、快捷,大大提升了人机互动的效率,被大量用于高端智能手机及平板电脑。
触摸控制技术[2]又可分为触摸屏(TouchScreen)技术和触摸按键(TouchKey)技术。
电阻式的触摸按键由多块导电薄膜按照按键的位置印制而成,需要在设备表面贴一张触摸薄膜。
电阻式触摸按键虽然价格低廉,但其导电薄膜耐用性较低。
因此,电容式触摸按键便成了一种理想的替代方案。
电容式触摸按键的优点在于它不易受到温度、静电、水、灰尘等外界因素影响,操作准确性高;
靠人手感应,整个界面没有按键存在,可使产品更加美观。
此外,由于按键没有接点,使用寿命更为长久。
1.3课题研究现状与发展趋势
触摸控制技术又可分为触摸屏技术和触摸按键技术。
在触摸按键技术方面,目前主要可分为电阻式触摸按键与电容式感应按键。
近几年随着苹果公司将电容触摸感应技术从笔记本电脑引用到iPod后,电容触摸感应热浪正席卷几乎所有电子产品,从笔记本电脑、智能电话、PDA、游戏机等手持设备,到LCD、TV、DVD等消费电子产品,再到洗衣机、空调、冰箱、热水器、电磁炉以及咖啡壶等大小家电,无不以加入电容触摸感应为新的卖点。
目前,世界知名电子元件供应商均加大了对电容触摸按键的应用研究,并推出众多的专业芯片,有专用电容感应按键类的全ASIC,也有众多基于MCU集成类的IC。
但这些芯片价格较高,在一些按键数量少、成本要求低的电路中很难得到运用。
另外,使用这些集成类IC,很难做到所选资源恰好等于使用的情况,存在资源的浪费情况。
而且对于升级成熟产品的机械式按键,还存在变更原MCU代码的风险。
同时,目前,对于电容式触摸按键的介绍大多也停留在基于电容量测量的原理上。
1.4课题研究的内容
我组在结合电容式触摸按键的原理上,设计基于RC充放电原理,即根据这个充电时间的变化量就可以判断出是否有按键按下,中央处理器是否获得信号,LED是否发光,从而判断出按键是否设计成功。
需要研究的问题如下:
1、分析电容式触摸感应技术;
2、了解人体触摸检测算法的研究;
3、理解电容式触摸按键的工作原理;
4、了解控制核心单片机PIC16F1937组成及功能;
5、完成基本电路的设计,并画出电路原理图;
6、编写出程序,并进行调试。
1.5本章小结
本章主要介绍接口技术的发展,从机械按键转化为触摸按键,从电阻式按键与电容式按键的比较重看出,电容式按键在现在及未来的发展前途十分光明,同时也引出本次毕业设计电容式触摸按键的设计与实现,最后在本次毕业设计所要实现的要求做出了大概的介绍。
第二章系统设计
2.1设计任务
电容式触摸按键的设计是采用模块化设计的方法。
根据课题研究的内容和实现的功能可以将系统划分成几个模块,每个模块可以单独设计和调试,最后可以进行模块间的接口和调试,因此,该系统的结构和性能就可以取决于各个功能模块的性能和模块之间的兼容性。
根据课题研究的内容分析,电容式触摸按键的设计任务和要求如下:
1、分析电容触摸感应技术;
2、研究人体触摸检测算法;
3、以单片机PIC16F1937为中央处理器;
4、现场可以通过控制按键使得观察LCD显示和LED流水灯来进行判断。
2.1.1电容触摸感应技术的分析
电容式感应正在越来越多地应用于我们的日常生活。
优雅时尚的电容式感应界面越来越广泛地应用在便携媒体播放器(PMP)、手机、计算机、POS终端和其它家用电子设备上,如今又开始广泛应用于工业和医学应用领域。
电容式感应是一种以触摸操作为基础的感应形式。
作为传统机械式按钮和滑动触头的一种替代技术,电容式感应技术还可以用于设计触摸屏、触摸板和接近感应装置。
这项技术并不感应按钮的具体状态,而是用于检测导电物体是否存在,许多情况下,用户的手指就是这个导电物体。
1、触摸操作系统的优点和实现方式:
之所以采用触摸操作系统,其原因有几种。
基本原因之一是为了获得更高的可靠性和耐久性。
例如,公共信息亭内的按钮要承受大量不当的使用和频繁的操作。
机械式按钮会很容易磨损并导致故障发生。
而更换按钮和修理机械式传感器将会增加总系统成本。
而使用触摸操作系统时,系统更为耐用,从长期角度来说,能够减少总成本。
触摸操作系统还可以拥有更多灵活性,因为它的按钮可以用于多项功能。
例如,在传统的工业键盘上,机械式按钮实际上只能执行单项功能,或者只能代表规定好的某个菜单选项。
而在使用触摸屏时,因为显示可以连续改变,所以可以采用更多方式来设计界面。
唯一的限制只是设计方案的需要而巳。
同样的道理,由于单个按钮可以应用于多种用途,触摸操作系统就能够在更小的空间内拥有更多的功能。
最后,触摸操作系统与机械式按钮相比的一个重要优点是:
它可以改善最终用户的体验。
基于触摸操作的解决方案通常更为直观易懂并且方便用户使用。
触摸操作系统可以采用多种不同方式来实现。
其中包括采用电阻膜、红外传感器,甚至是表面声波。
电容式感应能够在感应到手指存在时启用,而无需电阻膜所要求的触摸笔或压力。
由于基于触摸的解决方案没有机械运动部件,因此它比机械式按钮和开关更为经久耐用。
而在各种基于触摸的解决方案中,电容传感器拥有极其优秀的耐久性。
红外解决方案会受到表面污染物的不良影响,而电容式感应技术对环境因素具有较强的耐受性。
由于电容式感应可以采用多种外覆层材料,并可以采用不同水平的分辨率和精确度,因此不会仅限于某些特定应用领域。
电容式感应可以应用于消费类电子产品中,如移动手机、MP3播放器和数码相机,也可以应用于工业或家用电器,如冼衣机或信息亭。
2、电容式感应的工作原理
在两个导电元件相互之间靠得很近时,就会产生一个电容值,本图中标为Cp,这个电容值是由于传感器垫板与接地板之间的耦合现象而形成的。
Cp属于寄生电容,典型数量级任10pF至300pF。
传感器与接地板靠近时也会形成一个边缘电场,这个电场能够穿透外覆层。
基本上,人体组织也属于导电体。
将一根手指放存边缘电场附近时,就会增加这个电容系统的导电表面面积。
但是,附加手指电容值的数量级在0.1pF至10pF。
虽然一根于指的存在会导致电容发生变化,但与寄生电容相比,该变化的幅度是相当小的。
而传感器的测得电容值称为CX。
在没有手指存在的情况下,CX基本上等于CP。
而在于指存在时,CX则为CP和CF的和。
在当今的电子产品领域,噪声也成为另一项重要的考虑因素[3]。
各类感应噪声,诸如来自电力线路的噪声,以及来自移动手机或日光灯的辐射噪声,无时无刻不存在,所以必须加以考虑。
为了进行有效防范,可以增加信噪比,并消除虚假触摸响应。
在设计信噪比、耐久性、静电放电抵抗力以及精确度时,所选择的外覆层材料以及外覆层厚度具有很大的影响。
而且,在考虑材料的类型和厚度时,必须根据产品的需要,在许多方面采取折衷方式。
随着外覆层材料厚度的增加,信号和噪声两方面均会减少。
但是,外覆层材料越厚,则对于静电放电的抵抗力就越强。
人体的静电电压可以高达15KV,而电容式感应系统的外覆层有助于避免集成电路在遭受此类静电放电时发生永久性损坏。
另一种解决方法是,使用一层聚酰亚胺(Kapton)带,这种材料在需要超强静电放电保护的应用中能够发挥良好的作用。
当然,外覆层越厚,也就越不容易破裂或者遭到破坏。
因此本设计中会通过这些电容感应的分析提出比较合理的方案来实现电容式触摸按键的设计。
2.1.2人体触摸检测算法的研究
触摸感应检测按键是近年来迅速发展起来一种新型按键。
它可以穿透绝缘材料外壳(玻璃、塑料等等),通过检测人体手指带来的电荷移动,而判断出人体手指触摸动作,从而实现按键功能。
电容式触摸按键不需要传统按键的机械触点,也不再使用传统金属触摸的人体直接接触金属片而带来的安全隐患以及应用局限。
电容式感应按键做出来的产品可靠耐用,美观时尚,材料用料少,便于生产安装以及维护,取代传统机械按钮键以及金属触摸。
目前业内已有好几种电容触摸传感技术存在。
多数技术是基于测量由于人手指触摸产生额外电容而改变的频率或占空比。
有些其他的方法则使用电荷平衡或是充电上升及下降时间的测量。
由于玻璃-手指-地之间产生电容,我们才能够检测到触压,人体电路模型的最简单描述为“接地的导体[4]。
按照前面对电容的定义,手指是作为接地的电极来影响触摸屏本身的电容分布的。
该电容与电路对地的自然寄生电容并联。
并联电容相加,所以当手指接近焊盘时总电容将变大。
电容增量的百分比如式(2-1)是:
ΔC%=((Cp+Cf)–Cp)/Cp=Cf/Cp。
(2-1)
电容增量就是我们检测的依据,手指将引入额外的电容,导致振荡器的RC时间常数改变。
稍后将看到,RC时间常数增加,振荡器频率将减小,在单片机中将检测这一频率变化。
还值得注意的是,希望Cp比较小,因为我们知道Cf非常小。
如果Cp较小,则电容和频率的增量百分比将比较大。
已知手指触压产生的电容范围在5-15pF之间。
不应把手指电容视作常数,也不要认为它与环境无关。
2.2总体方案分析
通过电容式触摸按键的设计任务和要求可以看出,本系统需要设计以单片机PIC16F1937为控制核心,将电容式触摸按键所发出信号进行分析和输出显示。
系统总体设计框图如图2-1所示:
图2-1系统总体设计框图
由总体方案框图可以看出,电容式触摸按键的设计可划分为:
中央处理模块,触摸按键模块、电源转换模块和信息显示模块等。
2.2.1中央处理模块
中央处理模块是本系统核心部分,即CPU部分,它的主要工作任务是将数据传输、处理和控制等等。
本系统中的中央处理模块可以采用PIC16F1937的单片机。
2.2.2电源转换电路
电源转换电路是将相对较高的交流电压转化为本电子系统可以正常运行的电源电压的电路,该电路是任何电子系统稳定运行的基础电路,任何电子系统都不可或缺电源转换和稳压电路,只有正确合理的设计了电源转换盒稳压电路才能保证电子系统的正常、稳定的运行。
本课题中,设计输入工作电压为5V。
2.2.3信息显示模块
信息显示模块主要包括LCD、LED的显示。
通过调节按键来观察LCD显示,LED是为了检测触摸按键是否正常工作。
2.3系统功能结构及组成
2.3.1系统功能结构
本次电容式触摸按键设计主要采用PIC16F1937单片机,外围电路主要包括触摸式按键模块,LCD和LED显示控制模块与及主要实现的功能是单片机通过PICkit3与PC机获得所编程的源代码,将程序拷入硬件中,用手触摸按键时,按键出激发一个信号,传输到单片机,再由单片机经过处理分别传送到LED和LCD,CPU通过液晶驱动器HT1621将湿度与温度值在液晶中显示。
人机接口设立四个触摸按键;
触摸式按键主要采用电容式传感器;
CPU通过测量电容式传感器充放电时间读出键值,CPU再对相应的键值做出响应。
通过调节按键来观察LCD显示情况,LED主要作用是为了检测触摸按键是否正常工作。
2.3.2系统组成
通过方案的确定以及功能的明确,可以得到系统的结构组成如图2-2所示
图2-2系统组成框图
2.4本章小结
本章首先主要介绍了总体的方案设计,并对各个模块进行分析,和对电容式触摸按键设计进行系统分析;
依据系统技术要求进行了整体方案设计;
分析了系统的整体结构;
依据系统技术要求和方案对单片机进行了选型,并且绘制出总体的系统框图,从而更加系统的看出各模块所需要进行的任务。
第三章系统软件设计
3.1软件设计思想
电容式触摸按键的软件设计主要分成电容式触摸按键的检测和信号经过单片机对各个显示模块作用部分,而显示模块主要通过对LCD与LED的显示来判断触摸按键是否正常运行,软件设计和系统功能的开发和完善是一个循序渐进过程,本文所作的软件开发是基于实现触摸按键基本功能要求设计的该系统软件有主程序、功能键处理程序、显示程序、延时子程序等。
3.1.1按键检测思想
一、检测原理
(3-1)
电容式触摸按键电路的原理[5]构成如图3-1所示,按键即是一个焊盘,与地构成一个感应电容,在周围环境不变的情况下电容值固定为微小值,具有固定的充放电时间,而当有一个导体向电极靠近时,会形成耦合电容,这样就会改变固有的充放电时间,而手指就是这样的导体。
通过测量充放电时间的改变即可检测是否有按键被按下。
充放电时间t的计算如公式(3-1)所示:
(3-2)
式中,t,R,C分别为充放电时间,电阻值,电容值;
V1为充放电终止电压值;
V2为充放电起始电压值;
Vt为充放电t时刻电容上的电压值。
其中电容可根据电容公式求得如公式(3-2):
其中,εo为真空的介电常数,εr为相对介电常数,d为电容基板间的距离,A为基板面积。
图3-1电容式触摸按键基本原理示意图
首先,开关在断开的状态下该按键被下拉电阻拉低,电势为0V,这时开关闭合开始对按键充电,等充满电稳定后再断开开关,这时按键开始放电,并用定时器记录这段放电时间t1,反复该过程。
当有手指触碰按键时,放电时间会改变为t2,如图3-2所示,由此即可判断出手指是否触摸到该按键。
图3-2电容式触摸按键放电时间示意图
二、按键的软件设计
在电容触摸传感技术中,多数技术是基于测量由于人手指触摸产生额外电容而改变的频率或占空比。
有些其他的方法则使用电荷平衡或是充放电上升及下降时间的测量。
本次软件设计最主要的是基于以上步骤不断对键盘进行扫描,除此之外由于触摸按键的电容值会受环境的影响而变化,尤其是温度和湿度的影响,因此能跟踪环境变化及时校正基本充放电时间tbase很必要,基本流程如图3-3。
如果控制器发现很长时间内没有按键被按下(这里设置为60s),就开始启动校正功能,重新扫描键盘,获取新的充放电时间,并作为基准值,这样可以克服环境变化带来的影响。
图3-3触摸按键程序流程图
3.1.2各个显示模块设计思想
该系统的整个软件设计全部采用模块化程序设计思想,由系统初始化模块、按键识别模块、LCD模块、高优先级和低优先级中断服务程序四大模块组成。
其中,系统初始化模块、按键识别和LCD显示模块在主程序完成,而中断服务完成TMR0定时溢出中断、TMR1外部计数溢出中断、TMR3的1计数溢出中断以及INT0外脉冲上边沿捕获中断等。
3.2主处理程序设计
主程序的系统初始化模块包括对PIC[6]单片机的CPU系统时钟初始化、PIC单片机的I/O方向初始化、TMR0定时/计数器的初始化、TMR3定时/计数器的初始化和系统相关变量的初始化过程。
一、CPU系统始终初始化
PIC16单片机内部集成了经过校正的4MHz主时钟源,系统上电默认主时钟为1MHz。
通常,需要对OSCCON寄存器进行配置,使其工作在4MHz。
若为了提高CPU的运算速度,则采用PIC16单片机的内部PLL的4倍频以使CPU主时钟达到16MHz,只需要对OSCTUNE寄存器进行设置。
本系统采用16MHz的时钟源,因此初始化的结果如下:
OSCCON=0b01101000,选择内部4MHz的主振荡器
OSCTUNE=0b00000000,使能PLL的4倍频,从而CPU内核时钟为F为16MHz
二、PIC单片机I/O口方向初始化
RA0为传感器的输入,RB0..3由于RB端口接有4个按键K1..4和INT0外部中断信号输入,因此需要将RB端口配置成带有上拉功能的输入端口,可以启用RB内部弱上拉。
RD端口的RD0..7和RE端口的RE0..2是与LCD模块连接,主要是从PIC单片机输出数据或指令到LCD模块,因此可以将其全部设置为输出方向;
另外,由于RE0..2上电复位默认为模拟输入口,不是数字I/O口,因此需要对ADCON1控制寄存器配置RE0..2为数字I/O口。
P1A和P1B是PWM信号的输出,应将R1A和R1B配置成输出引脚。
具体的初始化结果如下:
ADCON1=0b10110000;
//内部FrcVref=VDD
ADCON0=0b00000001;
//ADON=1AsAN0
TRISA=0b11111111;
//PORTA输入
ANSELA=0b00000001;
//RA0传感器输入
TRISB=0b11111111;
//RB0-RB3触摸按键
ANSELB=0b00001111;
//4个触摸按键
WPUB=0b00000000;
//无上拉
IOCBP=0b00000000;
//关电平变化中断
IOCBN=0b00000000;
TRISD=0b11111001;
//LATD1LATD2LED输出
ANSELD=0b00000000;
//数字I/O
TRISC=0b10011000;
//串口I2C
TRISE=0b00000111;
//PORTE输出
ANSELE=0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电容 触摸 按键 设计 实现 软件 部分
![提示](https://static.bdocx.com/images/bang_tan.gif)