《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 顯示光電 > 設(shè)計(jì)應(yīng)用 > 基于8位MCU的觸摸按鍵解決方案
基于8位MCU的觸摸按鍵解決方案
摘要: 在需要用戶界面的應(yīng)用方案中,,傳統(tǒng)的機(jī)電開關(guān)正在被電容式觸摸感應(yīng)控制所替代,。
Abstract:
Key words :

  前言

  在需要用戶界面的應(yīng)用方案中,,傳統(tǒng)的機(jī)電開關(guān)正在被電容式觸摸" title="電容式觸摸">電容式觸摸感應(yīng)控制所替代,。

  Sino wealth已經(jīng)開發(fā)了一套觸摸感應(yīng)軟件,使得任意一款8位的中穎微控制器都可以作為一個(gè)電容式觸摸按鍵控制器使用,。通過對(duì)由一個(gè)電阻和觸摸電極電容組成的RC充放電時(shí)間的控制,,該觸摸感應(yīng)軟件可以檢測(cè)到人手的觸摸,。由于電極電容的改變,導(dǎo)致的RC充放電時(shí)間的改變,,能夠被檢測(cè)出來,,然后經(jīng)過濾波等,最終通過專用的I/O端口,,或者I2C/SPI接口發(fā)送給主機(jī)系統(tǒng),。該軟件庫所需的元器件BOM表,,成本低廉,,因?yàn)槊總€(gè)通道只需要兩個(gè)電阻就可以實(shí)現(xiàn)觸摸檢測(cè)功能

  1 RC感應(yīng)原理

  RC采樣原理就是通過測(cè)量觸摸電極電容的微小變化,來感知人體對(duì)電容式觸摸感應(yīng)器(按鍵,、滾輪或者滑條)的觸摸,。

  電極電容(C)通過一個(gè)固定的電阻(R)周期性地充放電。 電容值取決于以下幾個(gè)參數(shù):電極面積(A),,絕緣體相對(duì)介電常數(shù),,空氣相對(duì)濕度,以及兩個(gè)電極之間的距離(d),。電容值可由下列公式得出:

  基于8位<a class=MCU" title="MCU">MCU的觸摸按鍵解決方案" title="觸摸按鍵解決方案">觸摸按鍵解決方案(電子系統(tǒng)設(shè)計(jì))" border="0" height="47" src="http://files.chinaaet.com/images/20101214/9556a9ef-d807-425b-9a34-da84bbf40a11.jpg" width="300" />

  圖1:RC電壓檢測(cè),。(電子系統(tǒng)設(shè)計(jì))

  圖1:RC電壓檢測(cè)。

  固定電壓施加在 ,, 的電壓隨著電容值的變化而相應(yīng)增加或者降低,, 如圖2所示。

  圖2:測(cè)量充電時(shí)間,。(電子系統(tǒng)設(shè)計(jì))

  圖2:測(cè)量充電時(shí)間,。

  前言

  在需要用戶界面的應(yīng)用方案中,傳統(tǒng)的機(jī)電開關(guān)正在被電容式觸摸感應(yīng)控制所替代,。

  Sino wealth已經(jīng)開發(fā)了一套觸摸感應(yīng)軟件,,使得任意一款8位的中穎微控制器都可以作為一個(gè)電容式觸摸按鍵控制器使用。通過對(duì)由一個(gè)電阻和觸摸電極電容組成的RC充放電時(shí)間的控制,,該觸摸感應(yīng)軟件可以檢測(cè)到人手的觸摸,。由于電極電容的改變,導(dǎo)致的RC充放電時(shí)間的改變,,能夠被檢測(cè)出來,,然后經(jīng)過濾波等,最終通過專用的I/O端口,,或者I2C/SPI接口發(fā)送給主機(jī)系統(tǒng),。該軟件庫所需的元器件BOM表,成本低廉,,因?yàn)槊總€(gè)通道只需要兩個(gè)電阻就可以實(shí)現(xiàn)觸摸檢測(cè)功能

  1 RC感應(yīng)原理

  RC采樣原理就是通過測(cè)量觸摸電極電容的微小變化,,來感知人體對(duì)電容式觸摸感應(yīng)器(按鍵,、滾輪或者滑條)的觸摸。

  電極電容(C)通過一個(gè)固定的電阻(R)周期性地充放電,。 電容值取決于以下幾個(gè)參數(shù):電極面積(A),,絕緣體相對(duì)介電常數(shù),空氣相對(duì)濕度,,以及兩個(gè)電極之間的距離(d),。電容值可由下列公式得出:

  基于8位MCU的觸摸按鍵解決方案(電子系統(tǒng)設(shè)計(jì))

  圖1:RC電壓檢測(cè)。(電子系統(tǒng)設(shè)計(jì))

  圖1:RC電壓檢測(cè),。

  固定電壓施加在 ,, 的電壓隨著電容值的變化而相應(yīng)增加或者降低, 如圖2所示,。

  圖2:測(cè)量充電時(shí)間,。(電子系統(tǒng)設(shè)計(jì))

  圖2:測(cè)量充電時(shí)間。

  通過計(jì)算VOUT的電壓達(dá)到閥值VTH所需要的充電時(shí)間(TC),,來得到電容值(C),。 在觸摸感應(yīng)應(yīng)用中,電容值(C)由兩部分組成:固定電容(電極電容,,CX)和當(dāng)人手接觸或者靠近電極時(shí),,由人手帶來的電容(感應(yīng)電容,CT),。電極電容應(yīng)該盡可能的小,,以保證檢測(cè)到人手觸摸。因?yàn)橥ǔH耸钟|摸與否,,帶來的電容變化一般就是幾個(gè)pF(通常5pF),。 利用該原理,就可以檢測(cè)到手指是否觸摸了電極,。

  圖3:觸摸感應(yīng),。(電子系統(tǒng)設(shè)計(jì))

  圖3:觸摸感應(yīng)。

  這就是用于檢測(cè)人手觸摸的觸摸感應(yīng)軟件中感應(yīng)層所采用的基本原理,。

  2 硬件實(shí)現(xiàn)

  圖4顯示了一個(gè)實(shí)現(xiàn)的實(shí)例,。由R1,R2以及電容電極(CX)和手指電容(CT)并聯(lián)的電容(大約5pF) 形成一個(gè)RC網(wǎng)絡(luò),,通過對(duì)該RC網(wǎng)絡(luò)充放電時(shí)間的測(cè)量,,可以檢測(cè)到人手的觸摸。 所有電極共享一個(gè)“負(fù)載I/O”引腳,。電阻R1和R2盡量靠近MCU放置,。電容R1(阻值在幾百歐到幾兆歐之間)是主要電容,用于調(diào)節(jié)觸摸檢測(cè)的靈敏度,。電容R2(10KΩ)是可選的,,用于減少對(duì)噪聲影響,。

  圖4:電容觸摸感應(yīng)實(shí)現(xiàn)實(shí)例。(電子系統(tǒng)設(shè)計(jì))

  圖4:電容觸摸感應(yīng)實(shí)現(xiàn)實(shí)例,。

  3 軟件實(shí)現(xiàn)

  本章描述了觸摸感應(yīng)RC原理的實(shí)現(xiàn),。

  充電時(shí)間測(cè)量原理

  為了保證健壯的電容觸摸感應(yīng)的應(yīng)用,充電時(shí)間的測(cè)量需要足夠的精確,。

  采用一個(gè)簡單的定時(shí)器(無需IC功能)和一系列簡單的軟件操作,,即定時(shí)地檢查感應(yīng)I/O端口上的電壓是否達(dá)到閥值。這樣的話,,時(shí)間測(cè)量的精確度就取決于執(zhí)行一次完整軟件查詢需要的CPU周期數(shù),。這種測(cè)量方法會(huì)由于多次測(cè)量帶來一些抖動(dòng),但是由于沒有硬件限制,,這種方法適用于需要很多電極的場(chǎng)合,。

  基本測(cè)量

  使用普通定時(shí)器進(jìn)行充電時(shí)間的測(cè)量,。對(duì)電容充電開始之前,,定時(shí)器的計(jì)數(shù)器數(shù)值被記錄下來。當(dāng)采樣I/O端口上的電壓達(dá)到某個(gè)閥值(VTH)時(shí),,再次記錄定時(shí)器計(jì)數(shù)器的值,。二者之差就是 充電或者放電的時(shí)間。

  圖5:定時(shí)器計(jì)數(shù)器值,。(電子系統(tǒng)設(shè)計(jì))

  圖5:定時(shí)器計(jì)數(shù)器值,。

  過采樣

  過采樣的目的是以CPU時(shí)鐘的精度,對(duì)輸入電壓達(dá)到高電平和低電平(VIH和VIL)的時(shí)間測(cè)量,。 為了跨越所有的取值范圍,,每次測(cè)量都比上一次測(cè)量延遲一個(gè)CPU時(shí)鐘周期的時(shí)間。 為了跨越所有的取值范圍,,測(cè)量的次數(shù)是和MCU核相關(guān)的,。圖6說明了這個(gè)概念的應(yīng)用情況。

  圖6:輸入電壓測(cè)量,。(電子系統(tǒng)設(shè)計(jì))

  圖6:輸入電壓測(cè)量,。

  輸入電壓測(cè)量的原理

  為了提高在電壓和溫度變動(dòng)情況下的穩(wěn)定性,對(duì)電極會(huì)進(jìn)行連續(xù)兩次的測(cè)量:第一次測(cè)量對(duì)電容的充電時(shí)間,,直到輸入電壓升至VIH,。第二次測(cè)量電容的放電時(shí)間,直到輸入電壓降至VIL,。下圖以及以下的表格詳細(xì)說明了對(duì)感應(yīng)電極(感應(yīng)I/O)和負(fù)載I/O引腳上的操作流程,。

 圖7:電容充放電時(shí)間測(cè)量。(電子系統(tǒng)設(shè)計(jì))

  圖7:電容充放電時(shí)間測(cè)量,?!?/p>

  表2 電容充放電測(cè)量步驟

  電容充放電測(cè)量步驟(電子系統(tǒng)設(shè)計(jì))

  觸摸的效果

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

  圖8:觸摸效果實(shí)例,。(電子系統(tǒng)設(shè)計(jì))

  圖8:觸摸效果實(shí)例。

  多次測(cè)量以及高頻噪聲的去除

  為了提高測(cè)量的精確度,,并去除高頻噪聲,,有必要對(duì)VIH和VIL進(jìn)行多次的測(cè)量,然后再?zèng)Q定是否有按鍵被有效“觸摸”,。

  圖9:測(cè)量的種類,。(電子系統(tǒng)設(shè)計(jì))

  圖9:測(cè)量的種類。

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

  這些實(shí)例展示了不同噪聲影響下的測(cè)量,。綠色線條表示正確的VIH/VIL測(cè)量,;而紅色線條表示不正確的VIH/VIL測(cè)量。

  圖10 顯示了沒有噪聲的影響,,所有測(cè)量都有效的情況,。 這個(gè)例子中,每個(gè)連續(xù)組測(cè)量中的測(cè)量都有效,,使得一個(gè)完整的測(cè)量很快就可以完成,。

  圖10:實(shí)例1。(電子系統(tǒng)設(shè)計(jì))

  圖10:實(shí)例1,。

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

  圖11:實(shí)例2,。(電子系統(tǒng)設(shè)計(jì))

  圖11:實(shí)例2。

  圖12顯示了有很多噪聲,,使得無效的組測(cè)量次數(shù)達(dá)到了最大限制(比如20),。這樣的話,,整個(gè)電極測(cè)量都無效。這個(gè)例子中,,達(dá)到了無效的組測(cè)量次數(shù)的最大限制,,因此停止對(duì)該電極的測(cè)量。

  圖12:實(shí)例3,。(電子系統(tǒng)設(shè)計(jì))

  圖12:實(shí)例3,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。