我的开发版是s3c6410,使用的内核版本是3.6.6,
tslib的移植,网上资料很多,一切设置都遵循网友的操作,按下不表。http://www.cnblogs.com/zuobaozhu/archive/2012/05/13/2498092.html
移植过后,执行ts_test的时候,出现ts_open:ts_open no such file or directory的错误。
原因是没有设备文件event0
mknod /dev/event c 13 64
没有效果。
在网上也查不到原因,那自己看吧!
先看tslib的configue:
./configure --help | less
发现一个配置项:
--enable-input Enable building of generic input raw module (Linux/dev/input/eventN support) (default=yes)
这可能有用,不过其设置默认的是yes的。不是tslib的问题。
再看内核配置,“/touchscreen”
找到:
-
│ Symbol: INPUT_TOUCHSCREEN [=y] │
-
│ Type : boolean │
-
│ Prompt: Touchscreens │
-
│ Defined at drivers/input/touchscreen/Kconfig:4 │
-
│ Depends on: !S390 && !UML && INPUT [=y] │
-
│ Location: │
-
│ -> Device Drivers │
-
│ -> Input device support │
-
│ -> Generic input layer (needed for keyboard, mouse, ...) (INPUT [=y]) │
这好像有点意思,看看。
在Hardware I/O ports内,选上Raw access to serio ports。
-
Device Drivers --->
-
Input device support --->
-
Hardware I/O ports --->
-
-*- Serial I/O support
-
<*> Serial port line discipline
-
<*> Raw access to serio ports
编译,启动,执行ts测试:
[root@zhangsh /]#ts_test
946715769.210148: 139 182 1
946715769.210148: 139 182 1
946715769.230164: 139 182 1
946715769.250137: 134 183 0
946715769.960141: 235 191 1
946715769.980156: 236 192 1
946715769.980156: 237 192 1
946715769.990145: 237 192 1
946715770.010136: 244 194 0
[root@zhangsh /]#ts_calibrate
xres = 480, yres = 272
Took 5 samples...
Top left : X = 12260 Y = 9650
Took 5 samples...
Top right : X = 4714 Y = 9901
Took 5 samples...
Bot right : X = 3980 Y = 6058
Took 6 samples...
Bot left : X = 12521 Y = 5975
Took 4 samples...
Center : X = 8185 Y = 8035
607.368164 -0.046983 0.003041
505.250244 -0.000929 -0.045623
Calibration constants: 39804480 -3079 199 33112080 -60 -2989 65536
竟然成功,有点瞎猫碰上死老鼠的味道,不管怎么样,网上查仅仅是一个手段,自己动作多试更有感觉啊。
多学习吧!
阅读(4933) | 评论(0) | 转发(0) |