tslib-1.4的安装与移植

来源:互联网 发布:java 管道通信 编辑:程序博客网 时间:2024/05/24 06:37

转载地址:http://blog.csdn.net/qiao_yihan/article/details/13512355


一、移植环境

  • 主   机:VMWare6.5--Fedora 9
  • 开发板:自制开发板

              CPU:S3C2440;    SDRAM:HY57V561620FTP-H;    NOR flash:SST_39VF1601(2M);

              NAND flash:K9F1G08U0B(128M);    网卡芯片:DM9000EP

  • 编译器:arm-linux-gcc-4.3.2
  • u-boot:u-boot-2009.08
  • linux kernel:linux-2.6.30
  • busybox:busybox-1.13.3

二、博客地址

      http://blog.csdn.net/liuqiqi677

      如有错误,欢迎指正。

三、具体方法

      之前把u-boot的移植做完之后,就开始学习Linux设备驱动开发。进入嵌入式领域,才发现原来每一个领域,像u-boot、内核、驱动等,都是博大精深,短时间内要深入了解实在是不可能,只能暂时一窥全貌,将整个过程拉通之后,再回过头来进行扩展。于是乎,在对设备驱动开发有了大概的了解之后,我便草草进入QT的移植了。我的目的其实很简单,就是在我的板子上实现一个拥有图形界面的小应用,这样,嵌入式开发的一条脉络基本上就算理清了。

     1、下载tslib-1.4.tar.gz

     http://download.csdn.net/source/3177449

     2、解压安装tslib

          # tar -zxvf tslib-1.4.tar.gz
           # cd tslib
           # ./autogen.sh
           echo "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

      说明:

      (1)红色的“0”是数字0;(2)/usr/local/tslib表示tslib安装后的路径

     3、修改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

      然后将整个tslib文件夹,下载到开发板的对应路径下(/usr/local)。

     4、开发板配置环境变量

      通过超级终端,# vi /etc/profile

      添加如下内容(绿色):

          export TSLIB_ROOT=/usr/local/tslib
           export TSLIB_TSDEVICE=/dev/input/event0    指定触屏设备
           export TSLIB_CALIBFILE=/etc/pointercal   
指定触摸屏校准文件pintercal的存放位置
           export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf   指定TSLIB
配置文件的位置
           export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts   指定触摸屏插件所在路径
           export TSLIB_FBDEVICE=/dev/fb0   指定帧缓冲设备
           export TSLIB_CONSOLEDEVICE=none   设定控制台设备为none,否则默认为 /dev/tty ,这样可以避免出现open consoledevice: No such file or directory KDSETMODE: Bad file descriptor 的错误
           export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib

     另外,要确保在/dev/input/目录下有event0设备文件,在/dev/目录下有fb0设备文件,如果没有,在执行下面./ts_calibrate 的时候,会报出“open *: No such file or directory ”的错误,这时,我们需要手动创建设备文件:

          # mknod /dev/input/event0 c 13 64
           # mknod /dev/fb0 c 29 0

     5、执行测试命令

      重启开发板,在 /usr/local/tslib/bin 目录下,输入./ts_calibrate,出现tslib的触摸屏五点校准画面,至此,tslib的安装移植成功完成。