基于嵌入式微處理器S3C44BOX的觸摸屏接口設計
圖5 觸摸屏的狀態轉換 系統軟件中,初始化程序、濾波程序和坐標轉換程序是一般常規通用程序。AD 測量子程序是獲得X 軸和Y軸坐標的關鍵部分,其程序如下: / / 獲取當前的坐標 void TouchADC(uint16 3 x , uint16 3 y) { int i ; rADCPSR = 10 ; / / 切換為X 通道態準備A/ D 轉換 Set TouchX() ; Delay(1000) ; { / / 啟動AIN1 通道A/ D 轉換 rADCCON = 0x1 | (1 2) ; while (rADCCON 0x1) ; while ( ! (rADCCON 0x40) ) ; for (i = 0 ; i rADCPSR ; i + + ) ; 3 x = rADCDAT ; } rADCPSR = 10 ; / / 切換為Y通道模式準備A/ D 轉換 Set TouchY() ; / / 在X/ Y通道切換時要延時以使觸摸屏穩定下來 Delay(1000) ; { / / 啟動AIN0 通道A/ D 轉換 rADCCON = 0x1| (0 2) ; while (rADCCON 0x1) ; while ( ! (rADCCON 0x40) ) ; for (i = 0 ; i rADCPSR ; i + + ) ; 3 y = rADCDAT ; } / / 切換為空閑態,等待中斷發生 Set TouchIdle() ; / / 輸出顯示X ,Y坐標數值 Out Put (0 ,″(X ,Y) = ( %3d , %3d) n″, 3 x , 3 y) ; } 6 結語 觸摸屏已成為現代嵌入式設備人機交互的首選輸入設備。本文詳細介紹了觸摸屏的工作原理,以三星公司ARM7 內核芯片S3C44B0X 為基礎,完成了觸摸屏的軟硬件設計,實踐證明系統穩定可靠,滿足了在復雜的多任務環境中觸摸屏快速響應的要求。
評論