<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 光電顯示 > 設(shè)計應(yīng)用 > 基于嵌入式微處理器S3C44BOX的觸摸屏接口設(shè)計

          基于嵌入式微處理器S3C44BOX的觸摸屏接口設(shè)計

          作者: 時間:2012-03-21 來源:網(wǎng)絡(luò) 收藏

          圖5  觸摸屏的狀態(tài)轉(zhuǎn)換

          圖5 的狀態(tài)轉(zhuǎn)換

          系統(tǒng)軟件中,初始化程序、濾波程序和坐標(biāo)轉(zhuǎn)換程序是一般常規(guī)通用程序。AD 測量子程序是獲得X 軸和Y軸坐標(biāo)的關(guān)鍵部分,其程序如下:

            / / 獲取當(dāng)前的坐標(biāo)

            void TouchADC(uint16 3 x , uint16 3 y)

            {

            int i ;

            rADCPSR = 10 ;

            / / 切換為X 通道態(tài)準(zhǔn)備A/ D 轉(zhuǎn)換

            Set TouchX() ;

            Delay(1000) ;

            {

            / / 啟動AIN1 通道A/ D 轉(zhuǎn)換

            rADCCON = 0x1 | (1 2) ;

            while (rADCCON 0x1) ;

            while ( ! (rADCCON 0x40) ) ;

            for (i = 0 ; i rADCPSR ; i + + ) ;

            3 x = rADCDAT ;

            }

            rADCPSR = 10 ;

            / / 切換為Y通道模式準(zhǔn)備A/ D 轉(zhuǎn)換

            Set TouchY() ;

            / / 在X/ Y通道切換時要延時以使穩(wěn)定下來

            Delay(1000) ;

            {

            / / 啟動AIN0 通道A/ D 轉(zhuǎn)換

            rADCCON = 0x1| (0 2) ;

            while (rADCCON 0x1) ;

            while ( ! (rADCCON 0x40) ) ;

            for (i = 0 ; i rADCPSR ; i + + ) ;

            3 y = rADCDAT ;

            }

            / / 切換為空閑態(tài),等待中斷發(fā)生

            Set TouchIdle() ;

            / / 輸出顯示X ,Y坐標(biāo)數(shù)值

            Out Put (0 ,″(X ,Y) = ( %3d , %3d) n″, 3 x , 3 y) ;

            }

          6 結(jié)語

          已成為現(xiàn)代設(shè)備人機交互的首選輸入設(shè)備。本文詳細(xì)介紹了觸摸屏的工作原理,以三星公司ARM7 內(nèi)核芯片S3C44B0X 為基礎(chǔ),完成了觸摸屏的軟硬件,實踐證明系統(tǒng)穩(wěn)定可靠,滿足了在復(fù)雜的多任務(wù)環(huán)境中觸摸屏快速響應(yīng)的要求。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();