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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 牛人業(yè)話 > 嵌入式linux新手入門手記-TSLIB和支持USB接口單點觸摸屏

          嵌入式linux新手入門手記-TSLIB和支持USB接口單點觸摸屏

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

            kernel已經(jīng)內(nèi)置對于普通USB單點觸摸屏的支持,不需要修改程序,只要在/arch/arm/config/am335x_evm_defconfig中將相應(yīng)的編譯條件設(shè)置好就可以:

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

            CONFIG_INPUT_TOUCHSCREEN=y

            CONFIG_TOUCHSCREEN_USB_COMPOSITE=y

            CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y

            刪除其他的觸摸屏編譯選項,然后重新編譯kernel即可。

            下載tslib:git clone http:/github.com/kergoth/tslib,通過這個網(wǎng)站下載的tslib目前是1.6.0版本;

            安裝autoconf工具:sudo apt-get install autoconf automake libtool;

            設(shè)置交叉編譯環(huán)境變量:export CC=arm--gnueabihf-gcc

            export CXX=arm--gnueabihf-g++

            在tslib目錄下執(zhí)行./autogen.sh,自動生成Makefile文件,然后執(zhí)行./configure --prefix=/usr/tslib --host=arm--gnueabihf ac_cv_func_malloc_0_nonnull=yes。

            這里--prefix指定編譯后的tslib庫安裝的路徑,-host指定交叉編譯工具。

            上述沒有錯誤后,執(zhí)行make -j4交叉編譯tslib,成功后執(zhí)行make install,tslib將安裝到/usr/tslib目錄下;

            將/usr/tslib目錄下的所有文件拷貝到am335x的nfs文件系統(tǒng)中的/usr/tslib目錄下,并設(shè)置am335x的環(huán)境變量:

            export T_ROOT=/usr/tslib #tslib安裝路徑

            export _FBDEVICE=/dev/fb0 #linux顯示設(shè)備名

            export _TSDEVICE=/dev/event0 #linux觸摸屏輸入設(shè)備名

            export _CALIBFILE=/etc/pointercal #觸摸屏校正數(shù)據(jù)文件

            export POINTERCAL_FILE=/etc/pointercal #觸摸屏校正數(shù)據(jù)文件

            export TSLIB_CONFFILE=$T_ROOT/etc/ts.conf #tslib配置文件

            export TSLIB_PLUGINDIR=$T_ROOT/lib/ts #tslib插件安裝位置

            export TSLIB_CONSOLEDEVICE=none #控制臺設(shè)備

            export PATH=$PATH:$T_ROOT/bin #配置tslib應(yīng)用的安裝路徑

            export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$T_ROOT/lib #lib的裝載路徑

            export LD_PRELOAD=$T_ROOT/lib/libts.so #預(yù)裝入tslib共享庫

            修改/usr/tslib/etc/ts.conf:

            module_raw input #使用linux標(biāo)準(zhǔn)輸入設(shè)備

            module pthres pmin=1 #觸摸屏靈敏度插件設(shè)置

            #module variance delta=30 #USB觸摸屏自帶濾波,不使用這個模塊

            module dejitter delta=100 #觸摸屏去噪插件設(shè)置

            module linear #觸摸屏線性濾波插件

            重新啟動am335x,然后運行/usr/tslib/bin/ts_print,在觸摸屏上滑動手指,超級終端上打印出觸摸的點的信息,觸摸屏以及tslib已經(jīng)正常工作。

            到這里,am335x的基本平臺就已經(jīng)能夠正常工作了,后續(xù)需要將QT5.4.1移植到am335x平臺上。QT5.4.1的移植花了較多的時間,同時也需要修改tslib和qt的較多源程序。

            我將用多個章節(jié)來記錄QT5.4.1的移植,以及加入tslib的支持,并對這二者的源程序進(jìn)行修改。

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

          linux相關(guān)文章:linux教程




          關(guān)鍵詞: linux TSLIB

          評論


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