PSoc的電容式非接觸感應按鍵設計
電容式感應技術(shù)正在迅速成為面板操作和多媒體交互的全新應用技術(shù),其耐用性和降低bom成本方面的優(yōu)勢,使這種技術(shù)在非接觸式操作界面上得到廣泛的應用。本文采用psoc片上系統芯片,實(shí)現了非接觸式、穩定可靠的電容式感應按鍵的設計。
1 psoc片上系統
psoc微處理器由處理器內核、系統資源、數字系統和模擬系統組成。psoc片上系統包含8個(gè)數字模塊和12個(gè)模擬模塊。這些模塊都可進(jìn)行配置,用戶(hù)通過(guò)對這些模塊進(jìn)行配置,定義出用戶(hù)所需要的功能。數字模塊可配置成定時(shí)器、計數器、串行通信口(uarts)、crc發(fā)生器、pwm脈寬調制等功能模塊。模擬模塊可配置成模數轉換器、數模轉換器、可編程增益放大器、可編程濾波器、差分比較器等功能模塊。數字模塊和模擬模塊也可構成調制解調器、復雜的馬達控制器、傳感器信號的處理電路等[1]。
2 電容式感應原理
電容開(kāi)關(guān)是一對相鄰電極,在電極之間有很小的電容。當一個(gè)導體接近兩個(gè)電極時(shí),在電極與導體之間會(huì )產(chǎn)生一個(gè)耦合電容。在這里,手指就是這個(gè)導體,通常電容開(kāi)關(guān)的形式是一邊接地的電容,導體的存在增加了開(kāi)關(guān)到地之間的電容。檢測是否有手指靠近,也就是檢測是否有按鍵按下,可依據電容的變化來(lái)判斷。檢測電容變化的方法有很多:電流與電壓相位差檢測、電容構成振蕩器進(jìn)行頻率檢測、電容橋電荷轉換檢測。因為電容橋電荷轉換檢測的方法較適用于大量按鍵掃描和psoc的性能,所以在此采用該方法進(jìn)行檢測[2]。
電荷轉換電路從概念上來(lái)說(shuō)與r-c充放電電路相似,如圖1所示。電荷轉移的優(yōu)點(diǎn)是不需要附加電阻器件。cp感應的電容,它的值隨著(zhù)電極材料上所加導體而改變。csum是參考總電容。

在檢測周期開(kāi)始,通過(guò)一個(gè)復位開(kāi)關(guān)把csum上的電荷全部放掉。然后通過(guò)單刀雙向開(kāi)關(guān)使cp工作在非重迭的周期上。在第一半周,cp連接到vdd充電。當cp上的電荷以由cp值決定的速度充到vdd時(shí),開(kāi)關(guān)斷開(kāi),然后把開(kāi)關(guān)連接到csum,cp上的電荷轉移到csum中[3]。
在圖1中,因為csum的電容值比cp大得多,所以csum上的電壓值在充電的每一周期內只有微小的增加。這個(gè)cp到csum上的電荷轉換周期重復許多次,以使csum上積累到一個(gè)大的信號值。當連接到vdd時(shí),電容cp上的電荷為:
q=cv (1)不是cp上的所有電荷都轉移到csum中。當cp上的電壓跌落到csum上的預存電壓時(shí),轉換便不再進(jìn)行。為檢測感應的電容值是否有改變,可通過(guò)cp-csum的充放電方式,把csum充到固定的閾值vth,再計算到達這個(gè)閾值時(shí)的周期數。在任意采樣點(diǎn)n,csum上的電壓值為:

圖2示出了充放電115ms后的電荷轉換波形。其充放頻率為6mhz,所以其轉換次數為700次。
式(2)很明顯是一個(gè)指數函數,即電壓值vsum為:


檢測cp的變化率,可通過(guò)比較vsum和vth得到。即計算vsum充到vth時(shí)的充放電次數n:

當手指靠近時(shí),cp變成電極感應電容和手指接近產(chǎn)生的耦合電容之和cf+p,所以csum充電到閾值vth的速度更快,充放電周期數n也就更?。?

這樣,檢測是否有鍵按下就簡(jiǎn)化成了檢測周期數的變化率δn=n-nf+p。當δn>nth時(shí),表明有手指靠近。
3 電容式非接觸按鍵的設計與實(shí)現
3.1 電容式非接觸按鍵的硬件電路設計
電容式非接觸按鍵的硬件電路如圖3所示。該設計中,通過(guò)psoc芯片cy8c2714循環(huán)檢測感應電極的狀態(tài)來(lái)判斷是否有按鍵按下。該系統的硬件設計非常簡(jiǎn)單,感應電極不需要附加任何元器件。i/o口p0.2-p0.6共連接4個(gè)按鍵感應電極,芯片通過(guò)內部硬件配置和軟件算法,對感應電機上是否有手指按下進(jìn)行檢測。另外,psoc芯片可外接issp接口實(shí)現在線(xiàn)編程[4]。

3.2 電容式非接觸按鍵的軟件實(shí)現
非接觸按鍵的檢測,須通過(guò)比較器、充電電流源和復位開(kāi)關(guān)組成一個(gè)張弛振蕩器,來(lái)對按鍵電極電容充放電。psoc內部用戶(hù)模塊配置如圖4所示。比較器占用一個(gè)模擬模塊。它的同相輸入端多路模擬開(kāi)關(guān)連接到i/o口上,反相輸入端接內部參考電壓vbg作為電容充電閾值vth,與同時(shí)輸入端進(jìn)行比較。輸出端連接比較邏輯輸出總線(xiàn)0??偩€(xiàn)與通用輸出口連通,再把通用輸出口4和通用輸入口4連接在一起,作為pwm的時(shí)鐘輸入線(xiàn)。pwm脈寬調制模塊占用1個(gè)數字模塊,其時(shí)鐘輸入連到比較器的輸出,pwm的輸出連接到定時(shí)器的捕獲腳。1個(gè)16位定時(shí)器占用2個(gè)數字模塊,對pwm輸出的脈沖進(jìn)行定時(shí)。

非接觸式感應按鍵的實(shí)現過(guò)程為:首先設置i/o口的輸出驅動(dòng)模式,開(kāi)始掃描按鍵,把按鍵連接到模擬多通道輸入口,使能振蕩器。當cp上的電壓線(xiàn)性增加到閾值時(shí),比較器輸出高電平。刷新定時(shí)器和pwm的周期數,重設計數值,置完成標志位。當掃描完成,停止pwm,定時(shí)器中斷服務(wù)完成。最后根據電容感應原理,計算出定時(shí)器的周期數來(lái)判斷是否有按鍵按下。在本設計中,如式(5)所示,選取csum值,使充放電周期數n=1000次時(shí),vsum到達vth。當檢測到n f+p<800,即δn>nth=200時(shí),認為有按鍵下。
結語(yǔ)
本設計中,基于psoc片上系統芯片的非接觸式感應按鍵界面,有著(zhù)非接觸、可靠和設計簡(jiǎn)單的特點(diǎn)。這種方便、靈活的操作界面已在家電和控制系統中得到了應用和推廣,所以關(guān)于電容式感應按鍵技術(shù)的應用將會(huì )是嵌入式系統中的一個(gè)研究熱點(diǎn)。
評論