市場(chǎng)上的消費電子產(chǎn)品已經(jīng)開(kāi)始逐步采用觸摸感應按鍵,以取代傳統的機械式按鍵。針對此趨勢,Silicon Labs公司推出了內置微控制器(MCU)功能的電容式觸摸感應按鍵(Capacitive Touch Sense)方案。電容式觸摸感應按鍵開(kāi)關(guān),內部是一個(gè)以電容器為基礎的開(kāi)關(guān)。以傳導性物體(例如手指)觸摸電容器可改變電容,此改變會(huì )被內置于微控制器內的電路所偵測。 電容式觸摸感應按鍵的基本原理 ◆Silicon Labs 現提供一種可偵測因觸摸而改變的電容的方法 電容式觸摸感應按鍵的基本原理就是一個(gè)不斷地充電和放電的張弛振蕩器。如果不觸摸開(kāi)關(guān),張弛振蕩器有一個(gè)固定的充電放電周期,頻率是可以測量的。如果我們用手指或者觸摸筆接觸開(kāi)關(guān),就會(huì )增加電容器的介電常數,充電放電周期就變長(cháng),頻率就會(huì )相應減少。所以,我們測量周期的變化,就可以偵測觸摸動(dòng)作。 具體測量的方式有二種: (一)可以測量頻率,計算固定時(shí)間內張弛振蕩器的周期數。如果在固定時(shí)間內測到的周期數較原先校準的為少,則此開(kāi)關(guān)便被視作為被按壓。 (二)也可以測量周期,即在固定次數的張弛周期間計算系統時(shí)鐘周期的總數。如果開(kāi)關(guān)被按壓,則張弛振蕩器的頻率會(huì )減少,則在相同次數周期會(huì )測量到更多的系統時(shí)鐘周期。 Silicon Labs推出的C8051F9xx微控制器(MCU)系列,可通過(guò)使用芯片上比較器和定時(shí)器實(shí)現觸摸感應按鍵功能,連接最多23個(gè)感應按鍵。而且無(wú)須外部器件,通過(guò)PCB走線(xiàn)/開(kāi)關(guān)作為電容部分,由內部觸摸感應按鍵電路進(jìn)行測量以得知電容值的變化。 ◆以Silicon Labs的MCU實(shí)現觸摸感應按鍵 利用Silicon Labs其它MCU系列,僅需搭配無(wú)源器件,即可實(shí)現電容式觸摸感應按鍵方案。與C8051F93x-F92x方案相比,唯一所需的外部器件是(3+N)電阻器,其中N是開(kāi)關(guān)的數目,以及3個(gè)提供反饋的額外端口接點(diǎn)。C8051F93x-F92x之外,Silicon Labs其它MCU系列可直接連接12個(gè)開(kāi)關(guān),或者通過(guò)外部模擬多路復用器連接更多開(kāi)關(guān)。 設計觸摸感應按鍵開(kāi)關(guān) 因為我們要偵測電容值的變化,所以希望變化幅度越大越好,F在,有三個(gè)主要因素會(huì )影響開(kāi)關(guān)電容及變化幅度。
◆開(kāi)關(guān)的形狀尺寸會(huì )如何影響開(kāi)關(guān)的空閑和被接觸的狀態(tài) 由于開(kāi)關(guān)上方的材料種類(lèi),會(huì )影響閑置電容和電容的變化率。我們還測試了玻璃、有機玻璃Mylar聚酯薄膜、ABS塑料和FR4玻璃纖維,這幾種不同材料。我們發(fā)現,盡可能使用最薄的材料,使電容變化極大化。而且,建議使用具有高介電常數的材料,例如玻璃,以增加開(kāi)關(guān)的絕對電容。 總結 Silicon Labs的電容式觸摸感應按鍵的優(yōu)點(diǎn)很多。首先,只需要很少的微控制器開(kāi)銷(xiāo)(overhead)。設計一個(gè)開(kāi)關(guān)僅需443字節碼空間,每多增加一個(gè)開(kāi)關(guān)僅需多增加額外的 1字節。硬件資源只需要一個(gè)比較器和定時(shí)器。還可以采用高效率算法,讓微控制器可以進(jìn)入低功耗模式,并能定期喚醒以偵測開(kāi)關(guān)動(dòng)作?傮w只占用低于0.05% 的CPU資源。 其次,沒(méi)有外部硬件開(kāi)銷(xiāo)?梢詫㈤_(kāi)關(guān)走線(xiàn)直接連至MCU端口管腳,無(wú)須其它外部的反饋電阻器或電容器。 而且芯片配置也很簡(jiǎn)單。無(wú)論開(kāi)關(guān)使用為何材料,完成都很容易。另外,按鍵的偵測,不易受到噪聲和供應電壓的影響。不受50/60 Hz噪聲的影響,也不需要精密電壓源(VDD)。 常見(jiàn)問(wèn)答 (摘自2008年12月Silicon Labs在線(xiàn)座談中的問(wèn)答環(huán)節) 問(wèn):如何調整觸摸靈敏度?是設計時(shí)固定的,還是到現場(chǎng)可以進(jìn)行調整的? 答:靈敏度是通過(guò)實(shí)驗來(lái)做的,客戶(hù)可以對不同狀況下的值進(jìn)行記錄,然后保存到flash中,這樣實(shí)際使用時(shí),不同狀況下,系統會(huì )用不同值來(lái)工作,實(shí)現適合的靈敏度。靈敏度是設計時(shí)確定的,也可以設計成自學(xué)習型的。 問(wèn):一個(gè)開(kāi)關(guān)需要一個(gè)定時(shí)器和一個(gè)比較器,多個(gè)開(kāi)關(guān)是共用定時(shí)器和比較器嗎 答:對于多個(gè)開(kāi)關(guān),采用一個(gè)多路復用器,就可以共同使用一個(gè)定時(shí)器和比較器了。 問(wèn):如何消除和區分電容觸摸的誤觸摸? 答:確定觸摸式按鍵是否被按下可以通過(guò)檢測頻率或者周期來(lái)實(shí)現。而消除和區別誤觸摸,則要通過(guò)軟件上一些校準的算法來(lái)實(shí)現。具體的信息,可以登陸www.silabs.com下載詳細的參考應用。 問(wèn):貴公司的電容式觸摸芯片有休眠功能嗎?如何喚醒? 答:有休眠功能,我們F9xx系列單片機支持sleep、suspend睡眠狀態(tài)?梢酝ㄟ^(guò)IO、外部中斷、比較器等喚醒。 問(wèn):和電阻式觸摸按鍵相比,電容式觸摸按鍵有哪些優(yōu)點(diǎn),是否存在不足? 答:電阻式的要用A/D采樣,并且人的電阻很大,采樣比較困難,每個(gè)人的電阻差異也很大。 抗干方面,電容式的更好一些。 問(wèn):我的手要在按鍵放多久才能被檢測? 答:人的動(dòng)作是以百毫秒來(lái)計算的,而IC內部檢測是否有按鍵按下的時(shí)間通過(guò)數千個(gè)機器周期就可以確定,時(shí)間等級差很多。因此基本上手一放上去就會(huì )被檢測到。 問(wèn):電容式觸摸按鍵有沒(méi)有防水防潮設計,如果使用環(huán)境在一些潮濕場(chǎng)所,例如啤酒生產(chǎn),使用電容式觸摸按鍵是否合適? 答:你可以在"電容式觸摸按鍵"的外面加一層塑料或其他介質(zhì)進(jìn)行保護。另外,當"按鍵"受到污染,"空閑電容,idle capactiance"變大時(shí),你可使用算法來(lái)刷新/標定你的檢測門(mén)限(重新標定時(shí)間常數,RC) 。 問(wèn):c8051F9xx可以同時(shí)監測多少路的按鍵動(dòng)作?處理速度能達到多少? 答:C8051F9xx最高速度是24.5MHz,電容感應的響應時(shí)間是由電容充放電時(shí)間決定的,即與時(shí)間常數有關(guān)。一般一個(gè)周期為1000~2000個(gè)系統時(shí)間周期/SYSCLK, 故響應時(shí)間小于為2*2000*1/24.5MHz = 160uS。 人的動(dòng)作為上百mS級的,MCU有足夠的時(shí)間去處理按鍵響應。由于受到I/O口的限制,C8051F9xx最多能做到23個(gè)按鍵。 問(wèn):為了提高按鍵的抗干擾能力,在繪制PCB圖時(shí)應注意哪些問(wèn)題? 答:按鍵與單片機IO間走線(xiàn)需要越短越好。 問(wèn):為了提高按鍵的靈敏度和準確度,編程時(shí)應如何如何對其進(jìn)行處理? 答:靈敏度和準確度是相反的一組值。你必須要自己選一個(gè)中間值來(lái)平衡。 問(wèn):如果我想更多的了解和學(xué)習電容式觸摸按鍵技術(shù),請問(wèn)有無(wú)相關(guān)書(shū)記和資料課提供?謝謝 答:有的,我們有電容按鍵的參考設計,包含軟硬件以及源代碼。請到www.silabs.com網(wǎng)站上下載應用文檔,AN338 Capacitive Touch Sense Solution.pdf,也可以聯(lián)系我們益登科技相關(guān)辦事處,獲取詳細設計資料及指導。 問(wèn):假如我需要開(kāi)發(fā)電容式觸摸按鍵技術(shù),請問(wèn)我應該買(mǎi)什么開(kāi)發(fā)工具和軟件? 答:可以購買(mǎi)我們提供的C8051F931-based ToolStick 與Capacitive Touch Sense,或者C8051F930DK等開(kāi)發(fā)套件,套件中包含設計資料和參考代碼。 |