作者:孫樹印 武漢空軍雷達學院科研部講師 時間:2009-09-08 來源:電子產品世界 觸摸感應解決方案受到越來越多的IC設計廠家的關注,不斷有新的技術和IC面世,國內的公司也紛紛上馬類似方案。但是目前所有的觸摸解決方案都使用專用IC,因而開發(fā)成本高,難度大,而本文介紹的基于RC充電檢測(RC Acquisition)的方案可以在任何MCU上實現(xiàn),是觸摸感應技術領域革命性的突破。 RC充電檢測基本原理 RC充電檢測基本原理是對使用如PCB的電極式電容的充電放電時間進行測量,通過比較在人體接觸時產生的微小變化來檢測是否有“按下”動作產生,可選用于任何單獨或多按鍵、滾輪、滑條。 如圖1(a)所示,在RC網(wǎng)絡施加周期性充電電壓Vin,測量Vout會得到如(b)的時序,通過檢測充電開始到Vout到達某一閥值的時間tc的變化,就可以判斷出是否有人體接觸。 PCB設計注意事項 不論是單按鍵、多按鍵、滑條、滾輪設計,還是混合應用,都可以使用一個I/O進行充電,既可減少資源應用,又可以因使用同一定時標準從而簡化軟件設計。 用于傳遞按鍵信號的線一定要足夠細,以降低線路造成的電容的影響,信號線間距為兩倍線寬,不同組的信號間距應保證3~5mm。同組的信號線長度應盡量保持一致,不同組的信號線不可以交叉。獨立按鍵的形狀可設計為圓、三角或正多邊形,尺寸以10~15mm為宜。滑條的形狀可以是長方形或鋸齒形,滾輪可以設計為幅射的扇形或環(huán)形,也可以是交錯的齒輪,每個部分之間應保持0.2~0.5mm。按鍵PCB層不應該覆銅,否則會影響感覺的靈敏度,反面應覆銅以減少干擾。 LED經常在感應設計中用來指示按鍵是否有效按下,注意按鍵的地或電源線盡量短,線路較長時宜增加1nF的濾波電容。 另外,建議電源電路使用線性電源而不是開關電源,這對提高感應靈敏度很重要。 軟件設計流程與實現(xiàn) ST公司設計了完整的基于RC充電檢測的電容式感應觸摸方案的完整設計,包括PCB和完整的源程序,以及基于STM8S的標準觸摸感應庫(Touch Sense Library,TSL)和應用API接口,采用易于移植的C設計,用戶可以方便地應用于其他任何MCU系統(tǒng)中。因為RC充電理論涉及的專利已經對公眾開放,所以完全沒有專利的限制。 ST的TSL內容包括濾波和校正算法,環(huán)境變化系統(tǒng),自動根據(jù)環(huán)境溫度、濕度、電壓、灰塵等因素調整配置參數(shù)。提供了包括單通道和多通道的感應設計API函數(shù),層次驅動的項目工程;赟TM8Sxxx-TS1-EVAL演示板的軟件在STVD開發(fā)平臺下設計,使用COSMIC-C語言編譯器,包括完整的源代碼。 對充電時間的測量可以使用MCU中定時器的捕捉功能,對于多個按鍵一般MCU沒有足夠的定時器為每個按鍵分配一個,也可以使用軟件計時的方法,這要求能對MCU的時鐘精確計數(shù),并且保證每個周期的時鐘個數(shù)保持一定。這種情況通常要求對按鍵使用一個獨立的MCU,以保證不被其他任務中斷。為了提高系統(tǒng)的可靠性和穩(wěn)定性,改進的測量方法是對Vout進行高和低兩個門限進行測量。 使用STM8S的觸摸感應方案與Cypress公司的Capsense觸摸按鍵的效果進行了對比,結果證明二者在靈敏度與可靠性方面不相上下,在水浸、增加覆蓋物情況下本方案適應性更佳。 |