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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM7和VC平臺(tái)的高分辨率紅外觸摸屏設(shè)計(jì)

          基于ARM7和VC平臺(tái)的高分辨率紅外觸摸屏設(shè)計(jì)

          作者: 時(shí)間:2009-12-30 來(lái)源:網(wǎng)絡(luò) 收藏
          由于剛接收的數(shù)據(jù)為VARIANT類型,故需將其轉(zhuǎn)化為int型變量來(lái)進(jìn)行以上坐標(biāo)的組合。該轉(zhuǎn)換過程是先將VARIANT類型變量賦值COle-SafeArray類,再利用COleSafeArray類中的成員函數(shù)將數(shù)據(jù)寫入BYTE型數(shù)組中,最后將BYTE型數(shù)據(jù)轉(zhuǎn)化為int型。

          本文引用地址:http://www.ex-cimer.com/article/152166.htm

            2.2鼠標(biāo)動(dòng)作

            鼠標(biāo)動(dòng)作在的應(yīng)用中甚為重要。它主要包括鼠標(biāo)的定位,鼠標(biāo)的移動(dòng),鼠標(biāo)的左鍵單擊和雙擊,以及鼠標(biāo)的右鍵單擊。在++編程中,可通過使用API函數(shù)中的mouse_event來(lái)模擬鼠標(biāo)事件,以實(shí)現(xiàn)以上的鼠標(biāo)動(dòng)作。其實(shí)現(xiàn)代碼如下:

            定位:SetCursorPos(X,Y);

            左鍵單擊:mouse_event((MOUSEEVENTF_LEFYDOWN,0,0,0,0);

            mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);

            在模擬鼠標(biāo)動(dòng)作的同時(shí),一個(gè)很重要的處理步驟是屏蔽采集數(shù)據(jù)時(shí)受到的干擾。另外,使鼠標(biāo)運(yùn)動(dòng)平滑化也不容忽視。


            圖4是通過matlab軟件對(duì)鼠標(biāo)運(yùn)動(dòng)過程中的各坐標(biāo)繪制的曲線圖。通過曲線可以看到,硬件上的干擾會(huì)造成采集的坐標(biāo)數(shù)據(jù)出現(xiàn)突變點(diǎn),曲線上有很多毛刺。這也合理的解釋了鼠標(biāo)在運(yùn)動(dòng)過程會(huì)出現(xiàn)回跳和抖動(dòng),不能平滑運(yùn)動(dòng)的現(xiàn)象,因此必須屏蔽這些干擾。

            針對(duì)突變點(diǎn),本文采用了比較法來(lái)克服。所謂比較法,就是將后一次接收到的坐標(biāo)數(shù)據(jù)與前一次接收到的坐標(biāo)數(shù)據(jù)做比較,并設(shè)置一定的域值范圍。當(dāng)比較得到的絕對(duì)值在該域值范圍內(nèi)時(shí),則認(rèn)為所作的動(dòng)作是有效的。與此同時(shí),還需比較前后數(shù)據(jù)的變化趨勢(shì)是否一致,只有當(dāng)數(shù)據(jù)的變化趨勢(shì)一致,才認(rèn)為鼠標(biāo)的移動(dòng)是有效的。

            針對(duì)毛刺,本文采用平均法和比較法來(lái)克服。所謂平均法,是將從第N組到第2N組的N組數(shù)據(jù)進(jìn)行平均,然后將其作為第N組數(shù)據(jù)。這樣可以有效的減少毛刺干擾。另外,也可以對(duì)前后兩組數(shù)據(jù)進(jìn)行比較,只有當(dāng)比較得到的絕對(duì)值大于的最小時(shí),才認(rèn)為鼠標(biāo)發(fā)生移動(dòng),否則原地不動(dòng)。通過這樣的處理,可以解決鼠標(biāo)抖動(dòng)的問題。經(jīng)過處理后的鼠標(biāo)運(yùn)動(dòng)曲線如圖5所示。


            3結(jié)束語(yǔ)

            本文介紹了控制器和實(shí)現(xiàn)的方案,該方案以作為硬件的核心控制芯片,并通過其利用IO口對(duì)移位鎖存器的控制來(lái)實(shí)現(xiàn)對(duì)發(fā)射管的驅(qū)動(dòng),利用地址線和數(shù)據(jù)線來(lái)實(shí)現(xiàn)對(duì)接收管的尋址和采樣,以形成定位陣列,從而從硬件上完成了位置數(shù)據(jù)的采集。該方法可實(shí)現(xiàn)2046×768的高。而在軟件上,通過++編程則可實(shí)現(xiàn)主機(jī)端的串口通信,模擬鼠標(biāo)動(dòng)作,并結(jié)合比較法和平均法對(duì)鼠標(biāo)運(yùn)動(dòng)進(jìn)行平滑化處理。

          電容式觸摸屏相關(guān)文章:電容式觸摸屏原理

          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(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); })();