❶ 如何让树莓派使用笔记本电脑的屏幕
不能通过HDMI线使用笔记本屏幕,因为笔记本上的HDMI接口只能输出,不能输入。
网页链接
如果你以前通过“远程桌面连接”登录过,那么你只需要获得树莓派的网址即可。
获得方法网页链接,这样你可以通过远程桌面的方式使用笔记本电脑屏幕。
如果你是从零开始,可以按照这个试试网页链接
❷ 树莓派(Linux 系统)触摸屏翻转显示以及触摸翻转
树莓派(Linux 系统)触摸屏翻转显示以及触摸翻转
问题:未使用的Pi官方屏幕,所以使用HDMI屏幕显示的时候,显示旋转的同时,触摸没有旋转
目的:旋转屏幕显示的同时,使得触摸也跟随旋转
操作总流程:
旋转90度操作
翻转显示:
1.sudo nano /boot/config.txt
2.在文件末尾加入
display_rotate=0
display_rotate=1 //90°
display_rotate=2 //180°
display_rotate=3 //270°
ctrl + o 保存文档 重启即可。
注:以下操作皆为SSH操作,所以每条指令前都加了DISPLAY=:0,如果本机操作删掉即可。
1.安装xinput
sudo apt-get install xinput
2.列出所有输入设备信息 远程操作时,使用xinput指令需要加入DISPLAY=:0
DISPLAY=:0 xinput --list
3.列出目标设备属性
DISPLAY=:0 xinput --list-props 7
4.旋转触摸的坐标轴
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
显示旋转修改之后需要重启。而触摸旋转不需要重启。
详细操作方法:
1.安装xinput
sudo apt-get install xinput
描述:
xinput - utility to configure and test X input devices
xinput-用于配置和测试X输入设备的实用程序
xinput is a utility to list available input devices,
xinput是一个实用程序,可以列出可用的输入设备、
query information about a device and change input device settings.
关于设备的查询信息和更改输入设备设置
2.列出所有输入设备信息
xinput --list
如果远程操作记得在命令前加DISPLAY=:0
得到以下信息:
pi@NTGAGE:~ $ DISPLAY=:0 xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech USB Optical Mouse id=6 [slave pointer (2)]
⎜ ↳ WaveShare WaveShare Touchscreen id=7 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Logitech USB Keyboard id=8 [slave keyboard (3)]
↳ Logitech USB Keyboard id=9 [slave keyboard (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 Proct 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度。若要旋转其他角度,推理一下即可。
显示旋转修改之后需要重启。而触摸旋转不需要重启。
第二种方法
如果查询到的信息如下
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
libinput Send Events Mode Enabled (249): 0, 0
libinput Send Events Mode Enabled Default (250): 0, 0
Device Node (251): "/dev/input/event0"
Device Proct ID (252): 3823, 5
可以看到该驱动方式采用的是libinput,
查看/usr/share/X11/xorg.conf.d/目录下是否有40-libinput.conf这个文件。
无 则需要安装
sudo apt-get install xserver-xorg-input-libinput
下一步安装完成后ls一下,就可以看到在/usr/share/X11/xorg.conf.d/目录下存在该文件,
下一步复制该文件到/etc/X11/xorg.conf.d/目录下。
一开始xorg.conf.d这个目录在/etc/X11可能没有,需要自己创建。
sudo mkdir xorg.conf.d
下一步复制到xorg.conf.d 目录下即可。
sudo cp /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/
下一步进入/etc/X11/xorg.conf.d/目录下修改40-libinput.conf 文件
cd /etc/X11/xorg.conf.d/
sudo nano 40-libinput.conf
找到touchscreen section
Section "InputClass"
Identifier "libinput touchscreen catchall"
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
添加一行 Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1
结果为
Section "InputClass"
Identifier "libinput touchscreen catchall"
Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1
MatchIsTouchscreen "on"
MatchDevicePath "/dev/input/event*"
Driver "libinput"
EndSection
然后重启生效
这样的修改也是同样修改为翻转90度,如果需要修改为其他角度,请参考libinput的算法
https://wayland.freedesktop.org/libinput/doc/latest/absolute_axes.html
❸ 第15讲树莓派3.5寸LCD触摸屏怎么用
蓝宙电子致力成为国内创客内容提供商领先品牌,树莓派作为创客开源硬件中的一员,也是蓝宙电子创客的内容之一。随着近日来树莓派的大量出售,不仅树莓派的技术问题很多,而且其外设问题也是不少。其中,3.5寸LCD触摸屏首当其冲。总会有这样的声音:LCD怎么显示系统界面呢?HTML和LCD可以同时显示吗?通过SSH怎么安装启动LCD呢?
带着这样的疑问,今天蓝宙每日一讲我们来讲述一下树莓3.5寸LCD触摸屏到底怎么用?也就是一帖搞定树莓LCD触摸屏。
首先,使用将烧有raspbian系统的SD卡插入树莓派中,给树莓派供电,启动电源,上一张实物图,注意屏的插法!
待系统稳定后,采用SSH远程登录树莓后,界面如下。
此时,LCD的屏幕是白色的,没有显示操作系统界面,但是不要急通过SSH远程命令可以将LCD使用起来。
首先写命令:
sudo raspi-config
回车后,进入设置界面如下:
确保已经选择:Enable Boot to Desktop/Scratch -> Desktop Log in as user ‘pi’ at the graphical desktop打开后,
下载LCD驱动,驱动回帖可见:
解压,将LCD-show.tar.gz通过网络或U盘,复制到自定义的镜像中,运行命令:(特别提醒运行命令前一定要不开VNC图形界面,不然系统有可能瘫痪)
tar xvf LCD-show.tar.gz
cd LCD-show/
#3.2inch RPi LCD (B)运行
sudo ./LCD32-show
#3.5inch RPi LCD (A)运行
sudo ./LCD35-show
#4inch RPi LCD (A)运行
sudo ./LCD4-show
#5inch HDMI LCD运行
sudo ./LCD5-show
等待几分钟,系统自动重启,即可正常使用树莓派LCD,启动后的实物图如下:
如果想切换为HDMI显示,只需运行命令
sudo ./LCD-hdmi
更新系统需按照以下方式进行,否则可能导致镜像无法运行:
sudo apt-mark hold raspberrypi-bootloader
sudo apt-get update
sudo apt-get upgrade
有的时候需要旋转屏幕的显示方向,旋转方向有90度 180度和270度,方法如下:
如需旋转90度,则:width=320 height=480 改为: width=480 height=320 -1,0x36,0x28,-1 改为: -1,0x36,0x48,-1
如需旋转180度,则:-1,0x36,0x28,-1 改为: -1,0x36,0xe8,-1
如需旋转270度,则:width=320 height=480 改为: width=480 height=320 -1,0x36,0x28,-1 改为: -1,0x36,0x88,-1
按键盘Ctrl + X,选择Y,保存退出
在终端执行命令:sudo nano /etc/X11/xorg.conf.d/99-calibration.conf
显示如下图所示(触摸参数以实际值为准)
如需旋转90度,则更改如下:
如需旋转180度,则更改如下:
如需旋转270度,则更改如下:
到此,蓝宙每日一讲第15讲树莓派3.5寸LCD触摸屏使用已经结束了。有什么疑问和问题欢迎在本帖留言,我们会及时回复您。另外,本讲的资料已经附在帖子的内容中,欢迎下载。