按照上一篇文章烧写内核后,仍然不成功,猜测是触摸屏校正的问题。
试了下面的方法:
一、在网上搜索关于触摸屏教程的资料,找到网友写的触摸屏校正程序,但用arm-eabi-gcc编译不通过,提示缺少stdio.h等头文件,可能是arm-eabi-gcc存在问题;
二、按照网友tstest.c程序中的校正算法进行校正:第二种办法也失败。
虽然失败,但还是有可取的地方,以后有时间可以据需研究:
sample_array[0]-[3]依次为topLeft,topRight,bottomLeft和bottomRight,按下面的公式计算X1、X2、Y1和Y2
X1=(sample_array[0].x+ sample_array[2].x )/2; X2=(sample_array[1].x+ sample_array[3].x )/2; Y1=(sample_array[0].y+ sample_array[1].y )/2; Y2=(sample_array[2].y+ sample_array[3].y )/2;
通过:
disX=240-(240*(value-X2)/(X1-X2));和disY=320-(320*(value-Y2)/(Y1-Y2));进行坐标转换