市場上的消費電子產品已經開始逐步采用觸摸感應按鍵,以取代傳統的機械式按鍵。針對此趨勢,益登科技設計出以Silicon Labs公司MCU為內核的電容式觸摸感應按鍵方案。電容式觸摸感應按鍵開關,內部是一個以電容器為基礎的開關。以傳導性物體(例如手指)觸摸電容器可改變電容,此改變會被內置于微控制器內的電路所偵測。
電容式觸摸感應按鍵的基本原理就是一個不斷地充電和放電的張弛振蕩器。如果不觸摸開關,張弛振蕩器有一個固定的充電放電周期,頻率是可以測量的。如果我們用手指或者觸摸筆接觸開關,就會增加電容器的介電常數,充電放電周期就變長,頻率就會相應減少。測量周期的變化,就可以偵測觸摸動作。
具體測量方式有兩種:一是可以測量頻率,計算固定時間內張弛振蕩器的周期數。如果在固定時間內測到的周期數較原先校準的為少,則此開關便被視作為被按壓;二是可以測量周期,即在固定次數的張弛周期間計算系統時鐘周期的總數。如果開關被按壓,則張弛振蕩器的頻率會減少,則在相同次數周期會測量到更多的系統時鐘周期。C8051F9xx MCU系列,可通過使用芯片上比較器和定時器實現觸摸感應按鍵功能,連接最多23個感應按鍵。而且無須外部器件,通過PCB走線/開關作為電容部分,由內部觸摸感應按鍵電路進行測量以得知電容值的變化。與C8051F93x-F92x方案相比,唯一所需的外部器件是(3+N)電阻器,其中N是開關的數目,以及3個提供反饋的額外端口接點。
以上這兩種測量方法,都需要通過比較測量數值和一個預先設置的門限值,來判斷開關是否被按壓。所以,門限值需要被適當地校準,以免影響開關的靈敏度。在系統中,可以對所有開關做一次初始校準,設置門限值。如果系統工作的一個動態變化的環境中,還應當在系統增加周期性校準。如果門限值設置過于遠離空閑值(開關沒有被按壓時候的數值),開關事件就可能很難被檢測到,除非手指非常用力地按壓。如果門限值設置過于接近空閑值,在用戶的手指還沒有接觸到開關時,就可能誤檢測出開關事件。因為要偵測電容值的變化,所以希望變化幅度越大越好。現在,有3個主要因素會影響開關電容及變化幅度:PCB上開關的大小、形狀和配置;PCB 走線和使用者手指間的材料種類;連接開關和MCU的走線特性。測試結果表明,在特定區域中的開關越大且走線越多,則此開關的閑置電容便越高。由于開關上方的材料種類,會影響閑置電容和電容的變化率。我們發現,盡可能使用最薄的材料,使電容變化極大化,建議使用具有高介電常數的材料,例如玻璃、以增加開關的絕對電容。
此電容式觸摸感應按鍵優點很多。首先,只需要很少的微控制器開銷(overhead),硬件資源只需要一個比較器和定時器。還可以采用高效率算法,讓微控制器可以進入低功耗模式,并能定期喚醒以偵測開關動作。總體只占用低于0.05% 的CPU資源。其次,沒有外部硬件開銷,可以將開關走線直接連至MCU端口管腳,無須其他外部的反饋電阻器或電容器。按鍵的偵測不易受到噪聲和供應電壓的影響,不受50/60Hz噪聲的影響,也不需要精密電壓源(VDD)。