基于PSoC片上系統芯片的非接觸式感應按鍵界面設計
本文采用PSoc片上系統芯片,實現了非接觸式、穩定可靠的電容式感應按鍵的設計。
1 PSoC片上系統
PSoC微處理器由處理器內核、系統資源、數字系統和模擬系統組成。PSoC片上系統包含8個數字模塊和12個模擬模塊。這些模塊都可進行配置,用戶通過對這些模塊進行配置,定義出用戶所需要的功能。數字模塊可配置成定時器、計數器、串行通信口(UARTS)、CRC發生器、PWM脈寬調制等功能模塊。模擬模塊可配置成模數轉換器、數模轉換器、可編程增益放大器、可編程濾波器、差分比較器等功能模塊。數字模塊和模擬模塊也可構成調制解調器、復雜的馬達控制器、傳感器信號的處理電路等。
2 電容式感應原理
電容開關是一對相鄰電極,在電極之間有很小的電容。當一個導體接近兩個電極時,在電極與導體之間會產生一個耦合電容。在這里,手指就是這個導體,通常電容開關的形式是一邊接地的電容,導體的存在增加了開關到地之間的電容。檢測是否有手指靠近,也就是檢測是否有按鍵按下,可依據電容的變化來判斷。檢測電容變化的方法有很多:電流與電壓相位差檢測、電容構成振蕩器進行頻率檢測、電容橋電荷轉換檢測。因為電容橋電荷轉換檢測的方法較適用于大量按鍵掃描和PSoC的性能,所以在此采用該方法進行檢測。
電荷轉換電路從概念上來說與R-C充放電電路相似,如圖1所示。電荷轉移的優點是不需要附加電阻器件。CP感應的電容,它的值隨著電極材料上所加導體而改變。Csum是參考總電容。
在檢測周期開始,通過一個復位開關把Csum上的電荷全部放掉。然后通過單刀雙向開關使Cp工作在非重迭的周期上。在第一半周,Cp連接到VDD充電。當CP上的電荷以由CP值決定的速度充到VDD時,開關斷開,然后把開關連接到Csum,Cp上的電荷轉移到Csum中。
在圖1中,因為Csum的電容值比Cp大得多,所以Csum上的電壓值在充電的每一周期內只有微小的增加。這個Cp到Csum上的電荷轉換周期重復許多次,以使Csum上積累到一個大的信號值。當連接到VDD時,電容Cp上的電荷為:
Q=CV (1)
不是Cp上的所有電荷都轉移到Csum中。當Cp上的電壓跌落到Csum上的預存電壓時,轉換便不再進行。為檢測感應的電容值是否有改變,可通過Cp-Csum的充放電方式,把Csum充到固定的閾值VTH,再計算到達這個閾值時的周期數。在任意采樣點n,Csum上的電壓值為:
圖2示出了充放電115ms后的電荷轉換波形。其充放頻率為6MHz,所以其轉換次數為700次。
式(2)很明顯是一個指數函數,即電壓值Vsum為:
檢測Cp的變化率,可通過比較Vsum和VTH得到。即計算Vsum充到VTH時的充放電次數n:
當手指靠近時,Cp變成電極感應電容和手指接近產生的耦合電容之和CF+P,所以Csum充電到閾值VTH的速度更快,充放電周期數n也就更小:
這樣,檢測是否有鍵按下就簡化成了檢測周期數的變化率Δn=n-nF+P。當Δn>nTH時,表明有手指靠近。
評論