10、Lctech Pi(F1C200S)驱动电阻屏触摸芯片ns2009(ts2007),buildroot配置tslib(CherryPi,Mangopi,F1C100S)

本次主要参考:
https://github.com/mangopi-sbc/buildroot-mangopi-r
https://blog.csdn.net/qq_35031421/article/details/113436888
https://blog.csdn.net/dancheqishi23/article/details/116498088
(如果方便请给这几位大佬一个关注)

开发板上的电阻屏触摸芯片为ns2009,在此按照ts2007配置,二者兼容。

1、配置设备树
打开linux-5.7.1/arch/arm/boot/dts/suniv-f1c100s-licheepi-nano.dts文件
在&i2c0里面(也就是第105行),插入如下代码:

rtp@48 {
    
    
	compatible = "ti,tsc2007";
	reg = <0x48>;
	interrupt-parent = <&pio>;
	interrupts = <4 12 IRQ_TYPE_EDGE_FALLING>;
	gpios = <&pio 4 12 GPIO_ACTIVE_LOW>;
	pendown-gpio = <&pio 4 12 GPIO_ACTIVE_LOW>;
	ti,x-plate-ohms = <660>;
	wakeup-source;
	status = "okay";
};

插入后,如下:
在这里插入图片描述
2、配置linux内核
在内核目录下输入menu menuconfig,按照以下步骤进行配置

Device Drivers  --->
	Input device support  --->
		[*]   Touchscreens  --->
			<*>   TSC2007 based touchscreens

然后保存退出,编译内核。
编译完成之后,将zImage,suniv-f1c100s-licheepi-nano.dtb下载到本地sunxi-fel.exe同级目录下,以备后用。

3、在buildroot中配置tslib
3.1、在buildroot目录下输入menu menuconfig,按照以下步骤进行配置

Target packages  --->
	Libraries  --->
		Hardware handling  --->
			[*] tslib

然后保存并且退出
3.2 重新构建文件系统,并且运行系统
参考https://blog.csdn.net/GJF712/article/details/125251379第4、5步。
开启RNDIS参考https://blog.csdn.net/GJF712/article/details/126574807第4步。

4、在开发板文件系统中,配置tslib
在开发板命令终端输入:

vi /etc/profile

在最后一行插入,如下代码:

export TSLIB_TSDEVICE=/dev/input/event0
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_PLUGINDIR=/usr/lib/ts
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0

插入后,如下:
在这里插入图片描述
保存退出,并重新运行系统。

5、校准触摸屏
系统重新运行起来之后,在开发板命令终端输入:ts_calibrate。然后在屏幕上操作校准触摸屏。此时,显示屏模组驱动已经全部完成。

6、测试触摸屏,在开发板命令终端分别输入:ts_print、ts_test等命令,会在屏幕上或者命令终端看到不同的效果。

QQ:763314235,会在第一时间处理。

猜你喜欢

转载自blog.csdn.net/GJF712/article/details/126720236
今日推荐