前言
在需要用戶界面的應用方案中,傳統的機電開關正在被電容式觸摸感應控制所替代。
Sino wealth已經開發了一套觸摸感應軟件,使得任意一款8位的中穎微控制器都可以作為一個電容式觸摸按鍵控制器使用。通過對由一個電阻和觸摸電極電容組成的RC充放電時間的控制,該觸摸感應軟件可以檢測到人手的觸摸。由于電極電容的改變,導致的RC充放電時間的改變,能夠被檢測出來,然后經過濾波等,最終通過專用的I/O端口。
在BIOS設置中有關于是否更新微代碼
Microcode Updation [Enabled] : Disabled/Enabled
MCU(Micro Control Unit)中文名稱為微控制單元,又稱單片微型計算機(Single Chip Microcomputer)或者單片機,是指隨著大規模集成電路的出現及其發展,將計算機的CPU、RAM、ROM、定時計數器和多種I/O接口集成在一片芯片上,形成芯片級的計算機,為不同的應用場合做不同組合控制。
1 RC感應原理
RC采樣原理就是通過測量觸摸電極電容的微小變化,來感知人體對電容式觸摸感應器(按鍵、滾輪或者滑條)的觸摸。
電極電容(C)通過一個固定的電阻(R)周期性地充放電。 電容值取決于以下幾個參數:電極面積(A),絕緣體相對介電常數,空氣相對濕度,以及兩個電極之間的距離(d)。電容值可由下列公式得出:


圖1:RC電壓檢測。
固定電壓施加在 , 的電壓隨著電容值的變化而相應增加或者降低, 如圖2所示。

圖2:測量充電時間。
通過計算VOUT的電壓達到閥值VTH所需要的充電時間(TC),來得到電容值(C)。 在觸摸感應應用中,電容值(C)由兩部分組成:固定電容(電極電容,CX)和當人手接觸或者靠近電極時,由人手帶來的電容(感應電容,CT)。電極電容應該盡可能的小,以保證檢測到人手觸摸。利用該原理,就可以檢測到手指是否觸摸了電極。

圖3:觸摸感應。
2 硬件實現
圖4由R1,R2以及電容電極(CX)和手指電容(CT)并聯的電容(大約5pF) 形成一個RC網絡,通過對該RC網絡充放電時間的測量,可以檢測到人手的觸摸。 所有電極共享一個“負載I/O”引腳。電阻R1和R2盡量靠近MCU放置。電容R1(阻值在幾百歐到幾兆歐之間)是主要電容,用于調節觸摸檢測的靈敏度。

圖4:電容觸摸感應實現實例。
3 軟件實現
充電時間測量原理
為了保證健壯的電容觸摸感應的應用,充電時間的測量需要足夠的精確。
采用一個簡單的定時器(無需IC功能)和一系列簡單的軟件操作,即定時地檢查感應I/O端口上的電壓是否達到閥值。
基本測量
使用普通定時器進行充電時間的測量。對電容充電開始之前,定時器的計數器數值被記錄下來。當采樣I/O端口上的電壓達到某個閥值(VTH)時,再次記錄定時器計數器的值。二者之差就是 充電或者放電的時間。

圖5:定時器計數器值。
過采樣
過采樣的目的是以CPU時鐘的精度,對輸入電壓達到高電平和低電平(VIH和VIL)的時間測量。 為了跨越所有的取值范圍,每次測量都比上一次測量延遲一個CPU時鐘周期的時間。 為了跨越所有的取值范圍,測量的次數是和MCU核相關的。圖6說明了這個概念的應用情況。

圖6:輸入電壓測量。
輸入電壓測量的原理
為了提高在電壓和溫度變動情況下的穩定性,對電極會進行連續兩次的測量:第一次測量對電容的充電時間,直到輸入電壓升至VIH。第二次測量電容的放電時間,直到輸入電壓降至VIL。下圖以及以下的表格詳細說明了對感應電極(感應I/O)和負載I/O引腳上的操作流程。

圖7:電容充放電時間測量。
表2 電容充放電測量步驟

觸摸的效果
電極的電容值(CX)取決于以下幾個主要因素:電極的形狀、大小,觸摸感應控制器到電極之間的 布線(尤其是地耦合),以及介電面板的材料和厚度。因此,RC充放電時間直接和CX有關。圖8說明了這種“觸摸的效果”。 時間(即達到了VIH電平的時刻)比長;同樣對于降至VIL電平的時間也比長。

圖8:觸摸效果實例。
多次測量以及高頻噪聲的去除
為了提高測量的精確度,并去除高頻噪聲,有必要對VIH和VIL進行多次的測量,然后再決定是否有按鍵被有效“觸摸”。

圖9:測量的種類。
注意:下圖說明了去除噪聲的實例。如果測量次數(N)設置為4,那么對一個電極的完整測量將包括4次正確的“連續組測量”(BGs)。

圖10:實例1。
圖11 顯示了有一些噪聲使得某些測量無效的情況(即r1和r2)。 在這個例子中,連續組測量BG3重復了好幾次,直到其中的所有測量都有效,該次組測量才算通過。這樣就需要較多的時間來完成一次完整的測量。

圖11:實例2。
圖12顯示了有很多噪聲,使得無效的組測量次數達到了最大限制(比如20)。這樣的話,整個電極測量都無效。這個例子中,達到了無效的組測量次數的最大限制,因此停止對該電極的測量。

圖12:實例3。 |