TrueTouch 電容觸摸屏方案的通訊接口設(shè)計
隨著手機、PDA等便攜式電子產(chǎn)品的普及,人們需要更小的產(chǎn)品尺寸和更大的LCD顯示屏。受到整機重量和機械設(shè)計的限制,人機輸進接口開始由傳統(tǒng)的機械按鍵向電阻式觸摸屏過渡。2007年iPhone面世并取得了巨大成功,它采用的電容式觸摸屏提供了更高的透光性和新奇的多點觸摸功能,開始成為便攜式產(chǎn)品的新熱門,并顯現(xiàn)出成為主流輸進接口方式的趨勢。
一、 Cypress TrueTouch?電容觸摸屏方案介紹
Cypress PSoC 技術(shù)將可編程模擬 / 數(shù)字資源集成在單顆芯片上,為感應(yīng)電容式觸摸屏提供了TrueTouch?解決方案,它涵蓋了從單點觸摸、多點觸摸識別手勢到多點觸摸識別位置的全部領(lǐng)域。配合高效靈活的PSoC Designer 5.0 開發(fā)環(huán)境,Cypress TrueTouch?方案正在業(yè)界獲得廣泛的應(yīng)用。
圖一是Cypress TrueTouch?方案中經(jīng)常使用的軸坐標式感應(yīng)單元矩陣的圖形,類似于觸摸板,將獨立的ITO 感應(yīng)單元串聯(lián)在一起可以組成Y 軸或X 軸的一個感應(yīng)單元,行感應(yīng)單元組成Y 軸,列感應(yīng)單元組成X 軸,行和列在分開的不同層上。多點觸摸識別位置方法是基于互電容的觸摸檢測方法(行單元上加驅(qū)動激勵信號,列單元上進行感應(yīng),有別于激勵和感應(yīng)的是同一感應(yīng)單元的自電容方式),可以應(yīng)用于任何觸摸手勢的檢測,包括識別雙手的10 個手指同時觸摸的位置(圖二)。它通過互電容檢測的方式可以完全消除“鬼點”,當(dāng)有多個觸摸點時,僅當(dāng)某個觸摸點所在的行感應(yīng)單元被驅(qū)動,列感應(yīng)單元被檢測時, 才會有電容變化檢測值,這樣就可以檢測出多個行 / 列交叉處觸摸點的盡對位置。
圖一、軸坐標式感應(yīng)單元矩陣的圖形
圖二、Cypress TrueTouch 多點觸摸識別位置方案同時顯示了5 個手指觸摸點的位置
圖三顯示了Cypress TrueTouch?方案的不同應(yīng)用領(lǐng)域,包括觸摸按鍵,圖像的兩手指手勢操縱,以及同時識別多點觸摸位置和控制多個目標。
二、 Cypress TrueTouch?電容觸摸屏的通訊接口
Cypress TrueTouch?電容觸摸屏主要通過TX / I2C / SPI / USB 與主機實現(xiàn)物理通訊,TrueTouch?芯片可以直接報告一些基本手勢(如兩點觸摸的平移 / 縮放 / 旋轉(zhuǎn)),也可以提供專用的API 給用戶,用戶端獲得多點坐標后通過API 運算識別更多的或者自定義的手勢。API 使用標準C 語言編寫,可以運行在51 / ARM 等多個平臺,這大大簡化了用戶端軟件開發(fā)的工作量。
1. TX 通訊接口
Cypress Designer 5.0 提供了TX8SW用戶模塊,可以實現(xiàn)7 / 8位RS-232格式的軟件串行接口,支持115200, 57600, 38400, 19200, 9600, 4800, 2400, and 1200 bps的傳輸速度。用戶可以在代碼中設(shè)定相應(yīng)的I/O口,波特率,極性和停止位數(shù)。TX8SW接口不占用PSoC的數(shù)字 / 模擬模塊資源,提供了從PSoC到主機的單向通訊連接。
2. I2C 通訊接口
Cypress Designer 5.0 提供了多個I2C通訊的用戶模塊,包括I2CHW(答應(yīng)多主機通訊,可以設(shè)定為主機或從機,支持7位/10位尋址模式),EzI2Cs(工作為從機模式,占用ROM/RAM資源最少),I2Cm(工作為主機模式)和I2Cs(工作為從機模式)。這幾種I2C模塊都與Philips的產(chǎn)業(yè)標準I2C總線接口兼容,而且不占用PSoC的數(shù)字 / 模擬模塊資源,提供了從PSoC到主機的100 kbps / 400 kbps速率雙向通訊連接。
PSoC 與主機I2C 通訊時,通常是對所有的行 / 列感應(yīng)單元觸摸檢測完成后,通過一個GPIO 報告中斷給主機,主機響應(yīng)中斷并讀出所需的數(shù)據(jù)。以下方法可以確保主機讀出數(shù)據(jù)的完整性:
While(1) {
TSX_ScanAllSensors(); // TSX 是Cypress 互電容檢測方式用戶模塊
TSX_UpdateAllBaselines(); // 更新感應(yīng)單元Baseline
TSX_GetCentroids(); // 獲得多點的位置
TSX_ReportINTwithOvertime(); // 向主機報告中斷,有超時控制
// 檢測EzI2Cs 用戶模塊的RAM 讀/寫計數(shù)器,等待直到主機讀出全部數(shù)據(jù)
while (EzI2Cs_bRAM_RWcntr != sizeof(I2Cregs)) {};
…; // 運行其它用戶代碼
}
主機對I2C Structure 特定字節(jié)寫進預(yù)定義數(shù)據(jù)后,可以通知PSoC 進進待機模式(定期工作模式 + 定期休眠模式)或完全休眠模式。PSoC 在待機模式下主機可以進進休眠,PSoC 通過Sleep Timer 定期喚醒自己進進定期工作模式,檢測部分感應(yīng)單元(如僅掃描行單元)來獲知是否有用戶激活事件。假如有激活事件就通過中斷喚醒主機并進進PSoC工作模式;沒有就再次休眠并定期喚醒自己以降低功耗,實際的電流功耗是工作模式和休眠模式以時間加權(quán)的均勻值,例如:一秒內(nèi)喚醒PSoC 4 次進進工作模式檢測,每次檢測16ms@3.2mA,其它時間進進休眠模式@3uA, 實際的電流功耗 = (16ms * 4 * 3.2mA + (1000ms – 16ms * 4) * 3uA ) / 1000ms~= 0.208 mA。
PSoC Sleep mode 下將封閉Analog / Digital UM,使所有GPIO 不形成電流通路,使能I2C 通訊引腳的外部中斷喚醒,然后進進Sleep mode,主機隨后可以調(diào)用一次I2C 讀或?qū)懯录韱拘裀SoC。
3. SPI 通訊接口
Cypress Designer 5.0 提供了SPIM(設(shè)定為主機模式),和SPIS(設(shè)定為從機模式) UM。它們使用Tx Buffer / Rx Buffer,Control / Shift寄存器和Digital通訊模塊,實現(xiàn)了8bit全雙工同步通訊。用戶可以選擇SCLK(由SPI主機產(chǎn)生來設(shè)定通訊bps)頻率和極性,LSB First等屬性以支持SPI mode 0, 1, 2和3(見表一)。
表一、SPI 模式選擇
4. USB 通訊接口
Cypress Designer 5.0 提供了USBUART(使用USB接口來模擬一個COM口),和USBFS UM。
USBUART使用時在PSoC端和PC端就像使用串行口一樣方便,用戶在設(shè)定VendorID /ProductID / VendorString / ProductString / SerialNumberType /SerialNumberString / DevicePower / MaxPower這些參數(shù)后,編譯項目就可以自動天生INF文件。當(dāng)PSoC與PC連接后,PC安裝這個INF文件,雙方就可以進行雙向通訊。
USBFS支持Control / Interrupt / Bulk / Isochronous 傳輸,提供了USB IN / OUT控制節(jié)點的底層驅(qū)動模式,解釋來自USB Host的請求并分配給相應(yīng)的函數(shù)。通過USBFS Setup Wizard可以很方便的配置器件描述符,用戶還可以將USB配置成HID(Human Interface Devices)器件或通用USB器件。
USBUART和USBFS接口都不占用PSoC的數(shù)字 / 模擬模塊資源,提供了從PSoC到主機的USBFull Speed雙向連接。
三、 Cypress TrueTouch?電容觸摸屏不同通訊接口的選擇
選用Cypress TrueTouch?觸摸屏解決方案時,可以根據(jù)具體應(yīng)用的需要靈活選擇通訊接口(見表二):
電容式觸摸屏的優(yōu)點正在被廣泛認可,其增強的耐用性、優(yōu)雅的人機界面帶給消費者全新的操縱體驗。隨著電容式觸摸屏市場的逐漸擴大,靈活的通訊接口選擇將有助于Cypress TrueTouch?電容觸摸屏方案更好的為用戶服務(wù)。
電容式觸摸屏相關(guān)文章:電容式觸摸屏原理
評論