“模板:RPILCD-CALIBRATION”的版本间的差异
来自丢石头百科
小 (文本替换 - 替换“<source”为“<syntaxhighlight”) |
Yousimaier17(讨论 | 贡献) (→触摸旋转) |
||
(未显示2个用户的20个中间版本) | |||
第1行: | 第1行: | ||
− | == ''' | + | == 触摸屏旋转(以90°为例) == |
+ | === 显示旋转 === | ||
+ | <syntaxhighlight lang="c"> | ||
+ | sudo nano /boot/config.txt | ||
+ | 在文件末尾加入 | ||
+ | display_rotate=1 //旋转90° | ||
+ | /* | ||
+ | 0表示旋转0° | ||
+ | 1表示旋转90° | ||
+ | 2表示旋转180° | ||
+ | 3表示旋转270° | ||
+ | */ | ||
+ | ctrl + o 保存文档 重启即可 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | === 触摸旋转 === | ||
+ | *本LCD可以通过xinput-calibrator程序进行校准。 | ||
+ | *运行以下命令,进行安装: | ||
+ | <syntaxhighlight lang="c"> | ||
+ | sudo apt-get install xinput-calibrator | ||
+ | </syntaxhighlight> | ||
+ | *列出所有输入设备信息 | ||
+ | <syntaxhighlight lang="c"> | ||
+ | xinput --list //本机操作执行此条 | ||
+ | DISPLAY=:0 xinput --list //远程操作执行此条 | ||
+ | </syntaxhighlight> | ||
+ | *列出目标设备属性 | ||
+ | **通过上条指令,找到xxx Touchscreen对应的id号 | ||
+ | **输入 | ||
+ | <syntaxhighlight lang="c"> | ||
+ | //本机操作执行此条 | ||
+ | xinput --list-props id | ||
+ | //远程操作执行此条 | ||
+ | DISPLAY=:0 xinput --list-props id //id为对应的id号 | ||
+ | </syntaxhighlight> | ||
+ | :*找到以下两条信息 | ||
+ | <syntaxhighlight lang="c"> | ||
+ | Evdev Axis Inversion (246):0,0 | ||
+ | Evdev Axes Swap (248): 0 | ||
+ | </syntaxhighlight> | ||
+ | ::其中 | ||
+ | Evdev Axis Inversion (246):0,0项是每条轴的旋转设置项,后面第一个参数是x,第二个参数是y. | ||
+ | Evdev Axes Swap (248): 0项对应的是两条轴的交换。 | ||
+ | 0为不翻转,1为翻转 | ||
+ | *旋转触摸的坐标轴 | ||
+ | **触摸旋转90度,从坐标轴理解:即目的x轴正向为初始y轴的反向。目的y轴的正方向为初始x轴的正向。 | ||
+ | **先交换x、y轴 | ||
+ | <syntaxhighlight lang="c"> | ||
+ | //本机操作执行此条 | ||
+ | xinput --set-prop 'id' 'Evdev Axes Swap' 1 //id为对应的id号 | ||
+ | //远程操作执行此条 | ||
+ | DISPLAY=:0 xinput --set-prop 'id' 'Evdev Axes Swap' 1 //id为对应的id号 | ||
+ | </syntaxhighlight> | ||
+ | :*然后反转y轴 | ||
+ | <syntaxhighlight lang="c"> | ||
+ | //本机操作执行此条 | ||
+ | xinput --set-prop 'id' 'Evdev Axis Inversion' 0 1 //id为对应的id号 | ||
+ | //远程操作执行此条 | ||
+ | DISPLAY=:0 xinput --set-prop 'id' 'Evdev Axis Inversion' 0 1 //id为对应的id号 | ||
+ | </syntaxhighlight> | ||
+ | :这样即可完成触摸旋转90度。若要旋转其他角度,推理一下即可。 | ||
+ | *显示旋转修改之后需要重启。而触摸旋转不需要重启。 | ||
+ | |||
+ | == 触摸屏校准(仅当触摸不准确时需校准) == | ||
*本LCD可以通过xinput-calibrator程序进行校准。 | *本LCD可以通过xinput-calibrator程序进行校准。 | ||
第7行: | 第70行: | ||
<syntaxhighlight lang="c"> | <syntaxhighlight lang="c"> | ||
sudo apt-get install xinput-calibrator | sudo apt-get install xinput-calibrator | ||
− | </ | + | </syntaxhighlight> |
*点击任务栏的Menu键,选择Preferences -> Calibrate Touchscreen。 | *点击任务栏的Menu键,选择Preferences -> Calibrate Touchscreen。 |
2023年3月29日 (三) 16:17的最新版本
触摸屏旋转(以90°为例)
显示旋转
sudo nano /boot/config.txt
在文件末尾加入
display_rotate=1 //旋转90°
/*
0表示旋转0°
1表示旋转90°
2表示旋转180°
3表示旋转270°
*/
ctrl + o 保存文档 重启即可
触摸旋转
- 本LCD可以通过xinput-calibrator程序进行校准。
- 运行以下命令,进行安装:
sudo apt-get install xinput-calibrator
- 列出所有输入设备信息
xinput --list //本机操作执行此条
DISPLAY=:0 xinput --list //远程操作执行此条
- 列出目标设备属性
- 通过上条指令,找到xxx Touchscreen对应的id号
- 输入
//本机操作执行此条
xinput --list-props id
//远程操作执行此条
DISPLAY=:0 xinput --list-props id //id为对应的id号
- 找到以下两条信息
Evdev Axis Inversion (246):0,0
Evdev Axes Swap (248): 0
- 其中
Evdev Axis Inversion (246):0,0项是每条轴的旋转设置项,后面第一个参数是x,第二个参数是y. Evdev Axes Swap (248): 0项对应的是两条轴的交换。 0为不翻转,1为翻转
- 旋转触摸的坐标轴
- 触摸旋转90度,从坐标轴理解:即目的x轴正向为初始y轴的反向。目的y轴的正方向为初始x轴的正向。
- 先交换x、y轴
//本机操作执行此条
xinput --set-prop 'id' 'Evdev Axes Swap' 1 //id为对应的id号
//远程操作执行此条
DISPLAY=:0 xinput --set-prop 'id' 'Evdev Axes Swap' 1 //id为对应的id号
- 然后反转y轴
//本机操作执行此条
xinput --set-prop 'id' 'Evdev Axis Inversion' 0 1 //id为对应的id号
//远程操作执行此条
DISPLAY=:0 xinput --set-prop 'id' 'Evdev Axis Inversion' 0 1 //id为对应的id号
- 这样即可完成触摸旋转90度。若要旋转其他角度,推理一下即可。
- 显示旋转修改之后需要重启。而触摸旋转不需要重启。
触摸屏校准(仅当触摸不准确时需校准)
- 本LCD可以通过xinput-calibrator程序进行校准。
- 运行以下命令,进行安装:
sudo apt-get install xinput-calibrator
- 点击任务栏的Menu键,选择Preferences -> Calibrate Touchscreen。
- 按显示提示进行触摸校准。
- 如果要保存这些触摸值,需要在以下路径新建一个99-calibration.conf文件(如果已存在则不需要新建)
/etc/X11/xorg.conf.d/99-calibration.conf
- 将触摸参数(不同LCD,下图数据可能不同)保存至99-calibration.conf,即可