tslib-1.4的安裝與移植

開發環境:

 Linux-2.6.32.2內核   Fedora 10虛擬機 gcc4.3.2版本的交叉編譯器  mini2440開發板

tslib-1.4的安裝與移植

1、解壓安裝tslib
tar -zxvf tslib-1.4.tar.gzslib
./autogen.sh
ech
cd to "ac_cv_func_malloc_0 _nonnull=yes">arm-linux.cache 
./configure --host=arm-linux --cache-file=arm-linux.cache --enable-inputapi=no -prefix=/usr/local/tslib 
make
make install

說明:上面/usr/local/tslib 表示tslib 安裝後的路徑。安裝後在tslib 會有三個目錄,如下:bin  lib  etc


2、修改ts.conf內容
vi /usr/local/tslib/etc/ts.conf
增加下面內容:(原來內容刪除!!)
module_raw input 
module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear
說明:在該文件增加的內容在每一行不能有空格。否則運行./ts_calibrate會出現segmentation fault的錯誤


3、將整個tslib 目錄拷貝到開發板/usr/local目錄下。其實你可以隨便放到某個目錄下,不過下面的環境變量配置要根據這個目錄來設置!!

說明:其實複製lib目錄下libts-0.0.so.0、libts.so、libts-0.0.so.0.1.1 庫文件和ts目錄下的*.so文件

        etc目錄下ts.conf文件

bin目錄下都是觸摸屏的測試程序,其中ts_calibrate是校正屏幕的,其他是做其他測試用的。

4、設置開發板配置環境變量
vi /etc/profile
添加如下內容:
export TSLIB_ROOT=/usr/local/tslib     指明路徑的,這個要根據tslib所在路徑來設置
export TSLIB_TSDEVICE=/dev/input/event0 指定觸屏設備(視自己情況而定,有些在dev/event0) 
export TSLIB_CALIBFILE=/etc/pointercal    指定觸摸屏校準文件 pintercal 的存放位置 
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf    指定 TSLIB 配置文件的位置 
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts    指定觸摸屏插件所在路徑 
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib
export TSLIB_FBDEVICE=/dev/fb0   指定幀緩衝設備(視自己情況而定) 
export TSLIB_CONSOLEDEVICE=none    設定控制檯設備爲 none ,否則默認爲 /dev/tty  

添加完成後reboot系統!!!

5、測試

5.1進入開發板etc目錄,查看是否有pointercal文件。如果有,一定要先把它刪除,否則所有的tslib測試程序 一運行都是直接提示 segmentation fault錯誤!!!!
5.2確保觸屏設備和幀緩衝設備都已經加載到內核中

5.3進入/usr/local/tslib/bin目錄運行測試程序

5.4移植成功以後可以修改/etc/init.d/rcS文件,在裏面添加/sbin/insmod s3c2410_ts.ko讓系統開機自動加載觸摸屏驅動。這樣原來配置好pointercal文件還可以用,否則會變成空的。估計是觸摸屏驅動動態插入內核,重啓系統後驅動要重啓加載。這時候如果你沒有將空的 pointercal刪除就執行屏幕校正測試程序就會出現segmentation fault錯誤了。


參考博客
移植安裝        http://blog.chinaunix.net/uid-12461657-id-2975918.html
tslib出錯集合  http://blog.sina.com.cn/s/blog_6410b69201014mzk.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章