?? WaveShare WaveShare Touchscreenid=7[slavepointer(2)]
? Virtual core keyboardid=3[master keyboard (2)]
? Virtual core XTEST keyboardid=5[slavekeyboard (3)]
? Logitech USB Keyboardid=8[slavekeyboard (3)]
? Logitech USB Keyboardid=9[slavekeyboard (3)]
3.列出目标设备属性
由于所使用的触摸屏幕是微雪7寸屏幕,由以上信息可以得到微雪的触摸屏对应的ID为7
所以 , 接下来看这款输入设备的属性,
pi@NTGAGE:~ $ DISPLAY=:0 xinput --list-props 7
Device 'WaveShare WaveShare Touchscreen':
Device Enabled (115):1
Coordinate Transformation Matrix (116): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (240):0
Device Accel Constant Deceleration (241):1.000000
Device Accel Adaptive Deceleration (242):1.000000
Device Accel Velocity Scaling (243):10.000000
Device Product ID (244):3823, 5
Device Node (245):"/dev/input/event3"
Evdev Axis Inversion (246):0, 0
Evdev Axis Calibration (247):no items
Evdev Axes Swap (248):0
Axis Labels (249):"Abs MT Position X" (267), "Abs MT Position Y" (268), "Abs MT Pressure" (269), "None" (0), "None" (0), "None" (0)
Button Labels (250):"Button Unknown" (233), "Button Unknown" (233), "Button Unknown" (233), "Button Wheel Up" (121), "Button Wheel Down" (122)
Evdev Scrolling Distance (251): 0, 0, 0
Evdev Middle Button Emulation (252):0
Evdev Middle Button Timeout (253):50
Evdev Third Button Emulation (254):0
Evdev Third Button Emulation Timeout (255):1000
Evdev Third Button Emulation Button (256):3
Evdev Third Button Emulation Threshold (257):20
Evdev Wheel Emulation (258):0
Evdev Wheel Emulation Axes (259):0, 0, 4, 5
Evdev Wheel Emulation Inertia (260):10
Evdev Wheel Emulation Timeout (261):200
Evdev Wheel Emulation Button (262):4
Evdev Drag Lock Buttons (263):0
这块屏幕正常显示和触摸的信息如上 。
如果执行到这一步,发现并没有以上的Evdev等属性项 , 请跳转第2种方法 。
现在需要达到的目的是在屏幕显示反转的同时,使得触摸也随显示翻转 。
屏幕显示为翻转90度 。/boot/config.txt设置为display_rotate=1
上述信息中Evdev Axis Inversion 项是每条轴的旋转设置项,后面第一个参数是x,第二个参数是y.
Evdev Axes Swap项对应的是两条轴的交换 。
0为不翻转,1为翻转
例如 。x轴原本是朝向右的 , 当把Evdev Axis Inversion的第一个参数
设置为1 , 即x轴朝向左 。
4.旋转触摸的坐标轴
现在目的是要触摸旋转90度,从坐标轴理解:
即目的x轴正向为初始y轴的反向 。目的y轴的正方向为初始x轴的正向 。
1)所以先交换x、y轴
DISPLAY=:0 xinput --set-prop '7' 'Evdev Axes Swap' 1
2)然后反转y轴
DISPLAY=:0 xinput --set-prop '7' 'Evdev Axis Inversion' 0 1
这样即可完成触摸旋转90度 。若要旋转其他角度,推理一下即可 。
显示旋转修改之后需要重启 。而触摸旋转不需要重启 。
第二种方法
【linux校准触摸屏命令 ubuntu触摸屏校准软件】如果查询到的信息如下
DISPLAY=:0 xinput --list-props 6
Device 'WaveShare WaveShare Touchscreen':
Device Enabled (114):1
Coordinate Transformation Matrix (115): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix (246):0.000000, 1.000000, 0.000000, -1.000000, 0.000000, 1.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix Default (247):1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Send Events Modes Available (248):1, 0
推荐阅读
- 区块链班长,区块链子
- 去flutter化,fluttergo
- h5css3table的简单介绍
- 免网站制作,免费网页制作网站
- php数据库查询两次 php数据库查询两次结果
- 新媒体如何推广社群运营,新媒体如何推广社群运营方案
- 钉钉直播怎么发布会议邀请,怎么在钉钉发起直播
- c语言中的格式化输出函数 c语言格式化输出pi值
- c语言整数可用什么表示,c语言整数可用什么表示出来