張瑋
(中國電子科技集團(tuán)第十五研究所后勤信息化事業(yè)部,北京100083)
基于TTP229的電容式觸摸鍵盤設(shè)計(jì)與實(shí)現(xiàn)
張瑋
(中國電子科技集團(tuán)第十五研究所后勤信息化事業(yè)部,北京100083)
為了實(shí)現(xiàn)電子產(chǎn)品的電容式觸摸輸入方式,提出了一款基于TTP229的電容式觸摸鍵盤系統(tǒng)的設(shè)計(jì)方案,并完成了鍵盤系統(tǒng)的軟硬件設(shè)計(jì)。該鍵盤被設(shè)計(jì)成一個(gè)獨(dú)立模塊,硬件部分實(shí)現(xiàn)按鍵檢測上傳信息等功能,軟件部分實(shí)現(xiàn)鍵盤按鍵事件處理等功能。在實(shí)際應(yīng)用中表明,該鍵盤系統(tǒng)使用簡單方便,用戶使用自由度較高,可移植性較強(qiáng),能夠滿足多數(shù)電子產(chǎn)品的使用需求,達(dá)到了設(shè)計(jì)要求。
電容式觸摸;鍵盤設(shè)計(jì);TTP229;抗干擾設(shè)計(jì)
在2007年蘋果公司發(fā)售iPhone后,全球掀起了一陣電容式觸摸屏大潮。其后電容式觸摸技術(shù)也不再局限于屏幕這一單一設(shè)備,越來越多的電子設(shè)備開始采用電容式觸摸作為其輸入設(shè)備的輸入方式。電容式觸摸鍵盤便是繼電容式觸摸屏之后另一廣泛使用的電容式觸摸設(shè)備。
與傳統(tǒng)鍵盤的機(jī)械式按鍵相比,電容式觸摸按鍵其形狀不受限制,根據(jù)設(shè)備需求可設(shè)計(jì)成不同形狀以使電子設(shè)備更為美觀。同時(shí),電容式觸摸按鍵實(shí)質(zhì)是PCB板上的一個(gè)面積稍大的覆銅焊盤,因此電容式觸摸按鍵的厚度幾乎可以忽略不計(jì),這一特點(diǎn)也高度契合現(xiàn)今電子設(shè)備越來越輕薄的趨勢。另外,相比于傳統(tǒng)的機(jī)械式按鍵,電容式觸摸按鍵不存在接點(diǎn),沒有物理磨損和消耗,因此其壽命可以認(rèn)為是半永久性的[1]。
正因電容式觸摸按鍵的這些優(yōu)點(diǎn),越來越多的廠商選用觸摸按鍵來替代傳統(tǒng)按鍵。但是目前市場上多數(shù)的觸摸鍵盤均是針對性設(shè)計(jì),這類鍵盤與主板綁定,不可拆卸,因而在設(shè)計(jì)時(shí)需要更多的考慮抗干擾問題,增加設(shè)計(jì)的復(fù)雜度也提高設(shè)計(jì)成本。另外這類按鍵數(shù)量較少且功能較為單一,不能根據(jù)需要自主改變按鍵的功能,因而幾乎沒有普遍適用性。所以設(shè)計(jì)一款低成本、高性能且可自由定義按鍵功能的電容式觸摸鍵盤更能滿足電子產(chǎn)品的應(yīng)用需求。
電容式觸摸鍵盤判斷按鍵通斷的基本原理是將觸摸按鍵等效為一個(gè)電容,并基于此電容構(gòu)建一個(gè)不斷進(jìn)行充電放電的振蕩器,通過對振蕩器的振蕩周期或者振蕩頻率的測量來判定電容的改變量,通過電容的改變量△C確定按鍵的通斷。等效電路如圖1所示。
圖1所示電路中,圓圈代表觸摸按鍵,該按鍵就是位于PCB上的一個(gè)焊盤,它與地構(gòu)成了一個(gè)感應(yīng)電容。虛線框內(nèi)是一個(gè)簡化的振蕩器電路,R是下拉電阻,T是定時(shí)器用來檢測振蕩器充放電的周期。當(dāng)人的手指未觸摸到按鍵時(shí),這個(gè)感應(yīng)電容為一個(gè)固定值,由這個(gè)感應(yīng)電容所構(gòu)成的振蕩器的充放電周期也是固定的。當(dāng)人的手指靠近該焊盤時(shí),因?yàn)槿耸菍?dǎo)體,所以人的手指與該焊盤會形成一個(gè)耦合電容△C,這個(gè)耦合電容會疊加到焊盤與地所形成的感應(yīng)電容上,從而改變了感應(yīng)電容的容值,這樣一個(gè)新的電容所構(gòu)成的振蕩器其充放電周期與原來的感應(yīng)電容不同,觸摸芯片便通過檢測該周期的變化來判斷按鍵是否被觸摸。振蕩器充放電的周期計(jì)算公式如下:
式(1)中,t表示振蕩器的充放電時(shí)間,R表示下拉電阻,C表示按鍵等效電容,v2表示蕩器充電和放電的初始電壓,v1表示振蕩器充電和放電的截止電壓,而vt則代表了振蕩器在振蕩周期t時(shí)刻時(shí)電容上的電壓值。
當(dāng)電源的開關(guān)斷開時(shí),按鍵所構(gòu)成的感應(yīng)電容C電壓被下拉電阻R拉低,此時(shí)按鍵所構(gòu)成的電容的電勢為0。當(dāng)將開關(guān)閉合時(shí),由電源為按鍵所構(gòu)成的電容C充電,待其充電穩(wěn)定后,開關(guān)斷開,此時(shí)電容C通過電阻R進(jìn)行放電,直至電量完全放盡,電勢再次歸0。利用定時(shí)器T記錄這個(gè)充電和放電的時(shí)間,并反復(fù)進(jìn)行該過程。如果手指未觸摸按鍵其充放電時(shí)間t不變,如果手指觸摸按鍵,那么上述公式中的C變化為C+△C,所得充放電時(shí)間變會變?yōu)閠+△t,通過△t來判定按鍵是否被按下。
圖1 觸摸按鍵等效電路原理圖
2.1鍵盤系統(tǒng)組成
鍵盤系統(tǒng)由觸控芯片和觸摸按鍵矩陣兩部分組成。鍵盤系統(tǒng)通過接口與控制單元進(jìn)行通信。一個(gè)完整的鍵盤控制系統(tǒng)組成如下:
圖2 系統(tǒng)組成
圖中觸控芯片選用臺灣通泰公司的TTP229TonTouchTM。該芯片內(nèi)置穩(wěn)壓電源,同時(shí)支持外置穩(wěn)壓源;休眠模式下采用8Hz低功耗采樣,并能由休眠模式中快速喚醒;提供Option選擇8鍵或16鍵;支持單鍵有效或多鍵同時(shí)有效;靈敏度可由外部電容控制;支持和2_線接口,操作便捷;帶有自校準(zhǔn)功能,當(dāng)所有按鍵在一段時(shí)間之內(nèi)沒有被觸摸到時(shí),芯片內(nèi)置系統(tǒng)會自動對鍵盤進(jìn)行校準(zhǔn),校準(zhǔn)時(shí)間約為0.4 s[2]。
觸摸按鍵采用4*4的矩陣式排布,被印制在獨(dú)立的PCB上。
2.2硬件電路設(shè)計(jì)
觸摸鍵盤由4部分組成,分別是16鍵的觸摸按鍵矩陣、接口電路、穩(wěn)壓電路和觸摸控制電路。電路原理圖如下:
2.2.116鍵觸摸按鍵矩陣
TTP229支持8鍵或16鍵,同時(shí)支持單鍵或多鍵有效。本設(shè)計(jì)選用16鍵和單鍵有效模式,16個(gè)觸摸按鍵與觸控芯片可直接相連,不需添加額外的器件。16位鍵盤采用一個(gè)16位的2進(jìn)制數(shù)進(jìn)行編碼,每一個(gè)觸摸按鍵對應(yīng)16位中的一位,即S1對應(yīng)最低位,S16對應(yīng)最高位,當(dāng)對應(yīng)按鍵沒有被觸摸時(shí)該位為0,當(dāng)按鍵被按下時(shí)該位被置1,由TTP229內(nèi)置的寄存器記錄這個(gè)二進(jìn)制數(shù)并通過接口上傳給控制單元。
圖3 觸摸控制和穩(wěn)壓電路
2.2.2接口電路
接口電路為鍵盤系統(tǒng)與控制單元間的通信提供支持。外接設(shè)備可以通過該接口為鍵盤供電并且共地。該接口設(shè)計(jì)有四個(gè)數(shù)據(jù)接口,分別是的數(shù)據(jù)接口IIC2_KEYBOARD_SDA、時(shí)鐘接口IIC2_KEYBOARD_SCK、鍵盤中斷信號PA16_ KEYBOARD_INT和鍵盤控制接口KEY_VCC_CTRL。當(dāng)觸控芯片檢測有按鍵被觸摸后,觸控芯片產(chǎn)生的中斷信號會通過PA16_KEYBOARD_INT接口傳入控制單元,控制單元對中斷信號做出反應(yīng)后數(shù)據(jù)便會通過接口傳送至控制單元。KEY_ VCC_CTRL主要是控制鍵盤穩(wěn)壓電路的上下電,當(dāng)不需要使用鍵盤時(shí)可以通過該接口使電源下電以降低系統(tǒng)功耗。
同時(shí)為了方便鍵盤的檢修和測試,在接口電路中設(shè)置了6個(gè)測試點(diǎn)TP1_TP6,6個(gè)測試點(diǎn)分別與鍵盤地、電以及上述4個(gè)接口相連。可根據(jù)實(shí)際需要外接示波器或萬用表進(jìn)行測試。
2.2.3穩(wěn)壓電路
穩(wěn)壓電路負(fù)責(zé)為TTP229提供穩(wěn)定的電源輸入。盡管TTP229提供了內(nèi)置穩(wěn)壓電路,但是其內(nèi)置的穩(wěn)壓電路在實(shí)際的使用中去紋波效果不理想,為了減少電源對TTP229的影響,在設(shè)計(jì)中仍采用外置的穩(wěn)壓電源為其供電。穩(wěn)壓電路選用TLV70033DCK做穩(wěn)壓電源,該芯片外圍電路簡單,輸出紋波較低[3],極大程度上減少電源對觸控芯片的干擾,使能端通過KEY_VCC_CTRL與核心處理器相連,以實(shí)現(xiàn)上下電控制。
2.2.4觸摸控制電路
觸摸控制電路主要完成按鍵檢測、上傳數(shù)據(jù)等功能。在電路設(shè)計(jì)中TTP229的VDD端需加去耦電容,并且該電容必須靠近觸控芯片VDD引腳和電源芯片輸出引腳,使電源的輸入更為平滑穩(wěn)定。TTP229支持通過調(diào)節(jié)外部電容來調(diào)節(jié)觸摸按鍵的靈敏度,按鍵的靈敏度可以通過調(diào)節(jié)圖3中與SENADJ0_J3連接的4個(gè)電容來完成,其中SENADJ0對應(yīng)按鍵S1_S4,SENADJ1對應(yīng)S5_S8,SENADJ2對應(yīng)S9_ S12SENADJ3對應(yīng)S13_S16,容值可在1pf_50pf間選擇,容值越大靈敏度越低。4個(gè)電容可同時(shí)調(diào)節(jié),也可分開調(diào)節(jié),建議分開調(diào)節(jié),例如離觸控芯片較遠(yuǎn)的一組按鍵所對應(yīng)的電容值可稍微增大,因其遠(yuǎn)離芯片受干擾幾率增大,適當(dāng)降低其靈敏度可屏蔽一些微小的擾動。
鍵盤在實(shí)際使用中不會直接裸露,而是會附加一層面板,面板的厚度將會直接影響觸摸按鍵的靈敏度選擇。表1列出了不同容值時(shí)感應(yīng)距離的變化,實(shí)驗(yàn)方法是制好的鍵盤PCB板,觸摸按鍵為板上覆銅區(qū)。于PCB正上方,在按鍵表面放置不同厚度的面板,以確定不同容值范圍內(nèi)時(shí),觸摸按鍵感應(yīng)距離的變化情況。
由表1可知面板的厚度越大按鍵的靈敏度要求越高,因此建議在覆蓋好面板后再進(jìn)行靈敏度的調(diào)節(jié)。
圖4 接口電路和按鍵矩陣
表1 容值和感應(yīng)距離
2.3鍵盤PCB設(shè)計(jì)
鍵盤采用雙層PCB設(shè)計(jì),觸摸按鍵應(yīng)被單獨(dú)置于鍵盤PCB的一面,相鄰按鍵之間的距離不小于3 mm;按鍵與觸控芯片引腳間的導(dǎo)線與按鍵分屬PCB的兩面,利用過孔相連,按鍵下方不能走線;鍵盤的觸控芯片與電源等元器件放置于導(dǎo)線所在層面,并且集中于鍵盤的一端遠(yuǎn)離觸摸按鍵;預(yù)留的6個(gè)測試點(diǎn)緊靠接口電路,與觸摸按鍵以及導(dǎo)線的間距不小于5 mm;PCB制版時(shí)觸摸按鍵不裸露且表面有阻焊層,同時(shí)表面阻焊層不含任何導(dǎo)電成分。PCB設(shè)計(jì)圖如下:
由圖5可知電容式觸摸按鍵其實(shí)是PCB上的一小塊覆銅焊盤,根據(jù)電容式觸摸按鍵的原理,當(dāng)有導(dǎo)體靠近該焊盤時(shí)都會對焊盤的等效電容產(chǎn)生影響,從而造成觸控芯片的誤判斷,因此有必要增強(qiáng)鍵盤抗干擾能力以使其達(dá)到最佳的工作狀態(tài)。
為使鍵盤的抗干擾能力增強(qiáng),在進(jìn)行PCB設(shè)計(jì)時(shí)要注意以下幾點(diǎn):
1)電源的輸出穩(wěn)定性一定要好。因?yàn)殡娫吹募y波會對觸控芯片產(chǎn)生巨大影響,尤其是在使用線性開關(guān)電源時(shí),如果其紋波較大不好控制,那么可以使用LDO進(jìn)行轉(zhuǎn)換。在觸控芯片的電源輸入端必須加濾波電容j
2)按鍵的大小適中。盡管按鍵面積越大靈敏度越高,但是超過人手指面積時(shí)超過的部分不再會增加有效靈敏度,同時(shí)過大的面積對控制鍵盤尺寸無益。按鍵的大小最好與手指45°斜放時(shí)面積相當(dāng)即可,建議15 mm*10 mm;
3)按鍵間的距離不宜過小,建議大于5 mm,間距過小可能會造成誤識別。若無法加大按鍵間距,需要在按鍵間加地線隔離;
4)PCB布局時(shí)濾波電容要靠近芯片,電容要用地線隔離。觸摸按鍵要盡量靠近觸摸控制芯片,保證同一組按鍵到觸控芯片引腳間差異最小。觸控芯片的電源輸入端與穩(wěn)壓電源的輸出端要盡量靠近。所有的芯片都應(yīng)遠(yuǎn)離觸摸按鍵,并且與觸摸按鍵分屬PCB的兩面;
5)按鍵與觸控芯片間的導(dǎo)線與觸摸按鍵分屬PCB的兩面,利用過孔相連,導(dǎo)線越短越細(xì)越好,按鍵之間的導(dǎo)線間距應(yīng)大于2倍線寬,在走線時(shí)遠(yuǎn)離其他信號線,尤其是電源線,在走線0.5 mm的范圍內(nèi)不要覆銅[4]。
采用上述方法設(shè)計(jì)的PCB除具有成本低、適用范圍廣等優(yōu)點(diǎn)外,還注重抗干擾能力,使其在不同環(huán)境下都能保證鍵盤使用的穩(wěn)定性,為鍵盤長時(shí)間運(yùn)行提供了重要保障。
圖5 PCB頂層
圖6 PCB底層
因?yàn)殒I盤使用與控制單元進(jìn)行通信,為方便鍵盤使用,優(yōu)化編程,在實(shí)際的使用中可以將對鍵盤的處理過程置于中斷函數(shù)中,根據(jù)需要調(diào)取即可。在此我們以AT91SAM9G35作為核心控制單元的設(shè)備為例簡述其程序編寫的思想。
在使用AT91SAM9G35時(shí),用戶可以根據(jù)設(shè)備的實(shí)際用途選擇是否加載操作系統(tǒng),當(dāng)使用操作系統(tǒng)時(shí)我們只需將與鍵盤功能對應(yīng)的中斷函數(shù)進(jìn)行注冊并由系統(tǒng)自動為其分配入口地址即可,當(dāng)不需加載操作系統(tǒng)時(shí),需要人為為鍵盤功能所對應(yīng)的中斷函數(shù)分配入口地址[5]。這樣當(dāng)TTP229發(fā)出中斷信號請求進(jìn)入中斷處理函數(shù)時(shí),AT91SAM9G35會自動跳轉(zhuǎn)至與之對應(yīng)的中斷處理函數(shù)中,并完成相關(guān)的操作步驟,中斷處理函數(shù)的流程圖如下:
圖7 中斷處理函數(shù)流程圖
當(dāng)AT91SAM9G35檢測到TTP229產(chǎn)生的中斷后,會跳轉(zhuǎn)到中斷處理函數(shù)中。由圖7可知,在中斷處理函數(shù)中主要包含3部分:
1)讀取鍵值:當(dāng)TTP229的某一個(gè)鍵被觸摸時(shí),TTP229會產(chǎn)生一個(gè)16位的二進(jìn)制數(shù)以表示對應(yīng)鍵位被按下,這個(gè)值稱為物理鍵值,它由TTP229內(nèi)部寄存器記錄,并經(jīng)由上傳給AT91SAM9G35;
2)鍵值轉(zhuǎn)換:因?yàn)門TP229上傳給AT91SAM9G35的完整數(shù)據(jù)是一個(gè)16的二進(jìn)制數(shù),所以需要將該數(shù)值轉(zhuǎn)換為AT91SAM9G35可識別處理的數(shù)據(jù),在AT91SAM9G35中我們將其轉(zhuǎn)化ASCII碼;
3)確定鍵盤事件:在AT91SAM9G35中定義一個(gè)數(shù)組,稱之為鍵盤事件數(shù)組,數(shù)組中的每一個(gè)數(shù)值都代表了一種鍵盤事件,用戶可以根據(jù)需要來定義每一個(gè)觸摸按鍵的功能,比如上下左右、數(shù)字輸入等基本功能,還可以設(shè)計(jì)組合鍵[6],在完成了數(shù)值轉(zhuǎn)換后,將轉(zhuǎn)換后所得值與鍵盤事件數(shù)組中作對比,如果一致就會完成相應(yīng)的鍵盤事件。
該鍵盤的編程思想簡單易懂、邏輯思路清晰明確。因?yàn)椴捎昧酥袛嗪瘮?shù)的處理方法,使其編程難度大大降低,用戶不需要為鍵盤處理函數(shù)編排在程序位置,只需提供中斷入口即可;同時(shí)采用了中斷函數(shù)的處理方法,使程序的可移植性也大大增強(qiáng),可在不同的電子設(shè)備間根據(jù)需求自由轉(zhuǎn)換。另外按鍵功能并未綁定,在實(shí)際的使用中可以根據(jù)需求自行更改,使鍵盤的適用性更強(qiáng)。
本文設(shè)計(jì)的電容式觸摸鍵盤適用目前市場上大多數(shù)的電子產(chǎn)品,同類產(chǎn)品相比,除了實(shí)用性外還兼顧了低成本和可移植性,鍵盤被設(shè)計(jì)成獨(dú)立的模塊,通過8口排線與外界相連,實(shí)用性更佳。本文完整的敘述了電容式觸摸鍵盤的設(shè)計(jì)過程,對類似的設(shè)計(jì)有一定的參考意義。另外本文所設(shè)計(jì)鍵盤主要針對便攜式電子產(chǎn)品,因此在大型設(shè)備的觸摸鍵盤的應(yīng)用中略顯不足,如若更換支持更多鍵位的觸控芯片其工程實(shí)用性將會更強(qiáng)。
[1]田野,廖明燕.基于充放電原理的電容式觸摸按鍵設(shè)計(jì)[J].電子設(shè)計(jì)工程,2010(10):142_144.
[2]TTP229 DataSheet[R].Version 1.1.TonTouch:2009.10.
[3]TLV70033DCK DataSheet[R].Version A.Texas Instruments:2009.09.
[4]David.A.Weston.電磁兼容原理與應(yīng)用[M].楊自佑,王守三,譯.北京:機(jī)械工業(yè)出版社,2006.
[5]AT91SAM9G35 User Guide[R].Version 11053B.Atme1:2011.
[6]李兵兵,黃子強(qiáng).電容式多點(diǎn)觸摸屏的器件設(shè)計(jì)及算法實(shí)現(xiàn)[J].液晶與顯示,2011(2):216_219.
Deslgn and lmPlementatlon of caPacltlVe touch keyboard based on TTP229
ZHANG Wei
(Department of Logistics Informationization,The Fifteenth Research Institute of China Electronic Technology Group Corporation,Beijing 100083,China)
In order to achieve the capacitive touch input for e1ectronic products,a design of capacitive touch keyboard system based on TTP229 is proposed.And software and hardware design of the keyboard system is comp1eted.The keyboard is designed as a stand_a1one modu1e.The hardware part is designed for detecting key and up1oading information.The software part is designed for hand1ing event of key pressing.Practica1 app1ications showed that the keyboard system is easy to use.There is a high degree of freedom for the users.It has strong portabi1ity and can meet the needs of most e1ectronic products.The design requirements are achieved.
capacitive touch;keyboard design;TTP229;antijam design
TN7
A
1674_6236(2016)10_0123_04
2015_06_14稿件編號:201506142
張瑋(1990—),男,吉林輝南人,碩士。研究方向:計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)。