使用教程
硬件连接
-
连接 GPIO 接口
Raspberry Pi 引出了 40 个 GPIO 管脚,而屏幕引出了 26 个管脚,连接时注意对应屏幕管脚和树莓派管脚。
-
把 HDMI 连接器接入屏幕和主板的 HDMI 接口。
注:树莓派 Zero / Zero 2 W 需另配 HDMI 连接线进行连接。
-
把 LCD 背后的 Backlight 拨到“ON”。
硬件连接如下图(Pi 4 和 Pi 3B+):

软件设置
支持 Raspberry Pi OS / Ubuntu / Kali 和 Retropie 系统。
请在 树莓派官网 下载最新版本的镜像。
-
将压缩文件下载到 PC 上,并解压得到 img 文件。
-
TF 卡连接到 PC,使用 SDFormatter 软件格式化 TF 卡。
-
打开 Win32DiskImager 软件,选择第 1 步准备的系统镜像,点击 write 烧写系统镜像。
-
烧写完成后,打开 TF 卡根目录的 config.txt 文件,在 config.txt 最后加入以下代码,保存并安全弹出 TF 卡。
hdmi_group=2hdmi_mode=87hdmi_cvt=800 480 60 6 0 0 0hdmi_drive=1dtoverlay=waveshare-ads7846,penirq=25,xmin=200,xmax=3900,ymin=200,ymax=3900,speed=50000 -
下载 waveshare-ads7846.dtbo 文件 并复制到 overlays 目录 (/boot/overlays/)
-
将 TF 卡插入树莓派,给树莓派上电,正常等待十几秒后可正常显示。
触摸校准
-
可以通过修改 config.txt 文件的参数进行校准
① 如果 X 轴左边沿触摸不到,调节 x_min 参数。如把 x_min 默认值 200 调整为 100,既触摸范围向左扩充了 100;
② 如果 X 轴右边沿触摸不到,调节 x_max 参数。如把 x_max 默认值 3900 调整为 4000,既触摸范围向右扩充了 100;
③ 如果 y 轴上边沿触摸不到,调节 y_min 参数。如把 y_min 默认值 200 调整为 100,既触摸范围向上扩充了 100;
④ 如果 y 轴下边沿触摸不到,调节 y_max 参数。如把 y_max 默认值 3900 调整为 4000,既触摸范围向下扩充了 100; -
x_min、x_max、y_min、y_max 参数的值可以参考 evtest 工具来定义
sudo apt-get install evtestsudo evtest
这里选择 3(不同用户的树莓派显示的序号不一定一样,要根据用户实际的序号来选择)
分别把手指挪到触摸屏的四个边缘(正对触摸屏 x_min 在最左边、x_max 在最右边、y_min 在最上边、y_max 在最下边)
-
将手指放到 x_min

-
将手指放到 x_max

-
将手指放到 y_min

-
将手指放到 y_max

然后将数值写入 config.txt。
sudo nano /boot/firmware/config.txt
添加
dtoverlay=waveshare-ads7846,x_min=164,x_max=4010,y_min=154,y_max=3758
这样就是当前触摸设备较准确的触摸范围了,最后 sudo reboot 重启生效当前配置即可。
旋转
添加显示旋转参数
对于 Bookworm 系统
-
打开"Screen Configuration"应用程序;

-
进入"Screen"->"HDMI-1"->"Orientation" ,勾选您需要旋转的方向,点击"Apply"即可完成显示和触摸同步旋转。

对于 lite 版本的系统,可以采用这种方式旋转
sudo nano .config/wayfire.ini
添加以下语句到文件末尾:
[output:HDMI-A-1]
mode = 800x480@60
transform = 270
transform 参数可选择 normal、90、180、270。
对于 Bullseye 和 Kali 系统
先检查使用的系统是否有加载 KMS 或 FKMS 驱动。
查看方法:在/boot/config.txt 中,看对应的主板是否有打开了 dtoverlay=vc4-kms-v3d 或 dtoverlay=vc4-fkms-v3d。
如果有,使用以下命令进行显示旋转:
sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
#在 autostart 文件末端输入对应显示旋转角度的指令,重启后生效
#0: 旋转 0 度;1:旋转 90 度;2: 旋转 180 度; 3: 旋转 270 度
xrandr -o 1
如果没有,使用以下命令进行显示旋转:
sudo nano /boot/config.txt
#在 config.txt 文件末端输入对应显示旋转角度的指令,重启后生效
#0: 旋转 0 度;1:旋转 270 度;2: 旋转 180 度; 3: 旋转 90 度
display_rotate=3
对于 Ubuntu 系统
先检查使用的系统是否有加载 KMS 或 FKMS 驱动。
查看方法:在/boot/firmware/config.txt 中,看对应的主板是否有打开了 dtoverlay=vc4-kms-v3d 或 dtoverlay=vc4-fkms-v3d。
如果有,使用以下方式进行显示旋转。
注:对于不同版本的 Ubuntu 系统,界面可能会有所区别,一般找到 Displays 应用进行旋转就可以。



执行命令,旋转 Ubuntu 登录界面,如果没有打开 Ubuntu 登录界面,这个步骤可以省略:
#对于 32 位系统,执行以下命令,your_user 替代为当前登陆的用户名
sudo cp /home/<your_user>/.config/monitors.xml /var/lib/lightdm/.config
#对于 64 位系统,执行以下命令,your_user 替代为当前登陆的用户名
sudo cp /home/<your_user>/.config/monitors.xml /var/lib/gdm3/.config
sudo chown gdm:gdm /var/lib/gdm3/.config/monitors.xml
执行以下命令旋转开机过程中的命令行显示:
sudo nano /boot/firmware/cmdline.txt
#在尾部增加下面代码可以旋转命令行
#旋转 0 度
fbcon=rotate:0 video=HDMI-A-1:800x480M@60,rotate=0
#旋转 90 度
fbcon=rotate:3 video=HDMI-A-1:800x480M@60,rotate=90
#旋转 180 度
fbcon=rotate:2 video=HDMI-A-1:800x480M@60,rotate=0
#旋转 270 度
fbcon=rotate:1 video=HDMI-A-1:800x480M@60,rotate=270
如果没有加载 KMS 或 FKMS 驱动,旋转相对比较简单,使用以下命令进行显示旋转即可:
sudo nano /boot/firmware/config.txt
#在 config.txt 文件末端输入对应显示旋转角度的指令,重启后生效
#0: 旋转 0 度;1:旋转 270 度;2: 旋转 180 度; 3: 旋转 90 度
display_rotate=1
添加触摸旋转参数
sudo nano /usr/share/X11/xorg.conf.d/99-calibration.conf
#在 99-calibration.conf 文件中修改相关命令行,重启后生效。以下是使用默认的校准参数,如果你需要使用特定的校准参数,注意 Calibration 参数值的顺序变化即可。
#触摸旋转 0 度:
Option "Calibration" "208 3905 288 3910"
Option "SwapAxes" "0"
#触摸旋转 90 度:
Option "Calibration" "3905 208 288 3910"
Option "SwapAxes" "1"
#触摸旋转 180 度:
Option "Calibration" "3905 208 3910 288"
Option "SwapAxes" "0"
#触摸旋转 270 度:
Option "Calibration" "208 3905 3910 288"
Option "SwapAxes" "1"
设置屏幕常亮
有些用户希望显示屏可以长时间显示,不受屏幕保护功能影响,可以通过如下设置。将屏幕保护功能关闭。
打开 lightdm.conf
sudo nano /etc/lightdm/lightdm.conf
找到 [SeatDefaults] 段下的"xserver-command"
#xserver-command=X
取消注释,修改为:
xserver-command=X -s 0 -dpms
- -s # –设置屏幕保护不启用
- dpms 关闭电源节能管理
重启生效。
可能遇到的问题
触摸抖动比较大,怎么解决?
可以设置消抖参数,解决触摸抖动的问题,但会牺牲掉一部分灵敏度作为代价,具体用户可自行取舍。
由于树莓派默认提供的 ads7846.dtbo,没有消抖参数,可以通过修改替代 ads7846.dtbo 的方式增加消抖参数
具体可以通过以下方式增加防抖功能:
- 执行命令
wget https://www.waveshare.net/w/upload/2/29/Ads7846_waveshare.zip
unzip Ads7846_waveshare.zip
cd ads7846_waveshare
sudo cp ads7846_waveshare.dtbo /boot/overlays/
- 继续执行命令
sudo nano /boot/config.txt
#将原来的命令注释掉
#dtoverlay=ads7846,cs=1,penirq=25,penirq_pull=2,speed=50000,keep_vref_on=0,swapxy=0,pmax=255,xohms=150,xmin=200,xmax=3900,ymin=200,ymax=3900
#config.txt 文件末端加上以下命令,重启后生效
dtoverlay=ads7846_waveshare
相关参考文档:ads7846-overlay.dts ads7846.txt
Ubuntu 系统安装 xserver-xorg-input-evdev 和 xinput-calibrator 报错,导致触摸没办法正常使用,怎么解决?
说明:Ubuntu 系统由于某些地区网络问题可能无法访问到默认源,从而导致安装报错。
解决方式 1,更新源:
- 执行命令,查看当前版本:
lsb_release -c -s
例如执行后显示为:groovy
- 执行命令:
#备份原来的源
sudo mv /etc/apt/syntaxhighlights.list /etc/apt/syntaxhighlights.list.old
sudo nano /etc/apt/syntaxhighlights.list
添加以下代码并保存:
#通过步骤 1 获取的字符串替换下面的 groovy
deb http://old-releases.ubuntu.com/ubuntu/ groovy universe main
deb http://old-releases.ubuntu.com/ubuntu/ groovy-security main universe
deb http://old-releases.ubuntu.com/ubuntu/ groovy-updates main universe
- 更新,执行命令:
sudo apt-get update
- 更新完成后,重新进行 #触摸校准 即可。
如果上面的源失效,可以使用以下方式:
解决方式 2,直接找到两个应用程序的下载地址,直接下载安装:
对于 32 位系统,执行以下命令:
wget http://deb.debian.org/debian/pool/main/x/xserver-xorg-input-evdev/xserver-xorg-input-evdev_2.10.6-2_armhf.deb
sudo dpkg -i xserver-xorg-input-evdev_2.10.6-2_armhf.deb
wget http://mirrors.ustc.edu.cn/debian/pool/main/x/xinput-calibrator/xinput-calibrator_0.7.5+git20140201-1+b2_armhf.deb
sudo dpkg -i xinput-calibrator_0.7.5+git20140201-1+b2_armhf.deb
对于 64 位系统,执行以下命令:
wget http://deb.debian.org/debian/pool/main/x/xserver-xorg-input-evdev/xserver-xorg-input-evdev_2.10.6-2_arm64.deb
sudo dpkg -i xserver-xorg-input-evdev_2.10.6-2_arm64.deb
wget http://mirrors.ustc.edu.cn/debian/pool/main/x/xinput-calibrator/xinput-calibrator_0.7.5+git20140201-1+b2_arm64.deb
sudo dpkg -i xinput-calibrator_0.7.5+git20140201-1+b2_arm64.deb
Kali 系统安装 xserver-xorg-input-evdev 和 xinput-calibrator 报错,导致触摸没办法正常使用,怎么解决?
说明:Kali 系统由于某些地区网络问题可能无法访问到默认源,从而导致安装报错。
解决方式 1,更新源:
-
执行 sudo su 获取管理员权限,默认密码是 kali。
-
执行命令:
wget -q -O - https://archive.kali.org/archive-key.asc | apt-key add
- 修改源,执行命令:
nano /etc/apt/syntaxhighlights.list
将原来的源注释掉,修改成:
deb http://mirrors.ustc.edu.cn/kali kali-rolling main contrib non-free
保存退出。
- 更新,执行命令:
apt-get update --fix-missing
- 更新完成后,重新进行 #触摸校准 即可。
如果上面的源失效,可以使用以下方式:
解决方式 2,直接找到两个应用程序的下载地址,直接下载安装:
对于 32 位系统,执行以下命令:
wget http://deb.debian.org/debian/pool/main/x/xserver-xorg-input-evdev/xserver-xorg-input-evdev_2.10.6-2_armhf.deb
sudo dpkg -i xserver-xorg-input-evdev_2.10.6-2_armhf.deb
wget http://mirrors.ustc.edu.cn/debian/pool/main/x/xinput-calibrator/xinput-calibrator_0.7.5+git20140201-1+b2_armhf.deb
sudo dpkg -i xinput-calibrator_0.7.5+git20140201-1+b2_armhf.deb
对于 64 位系统,执行以下命令:
wget http://deb.debian.org/debian/pool/main/x/xserver-xorg-input-evdev/xserver-xorg-input-evdev_2.10.6-2_arm64.deb
sudo dpkg -i xserver-xorg-input-evdev_2.10.6-2_arm64.deb
wget http://mirrors.ustc.edu.cn/debian/pool/main/x/xinput-calibrator/xinput-calibrator_0.7.5+git20140201-1+b2_arm64.deb
sudo dpkg -i xinput-calibrator_0.7.5+git20140201-1+b2_arm64.deb