跳到主要内容

使用说明

搭配树莓派使用​

硬件连接​

  1. 连接 GPIO 接口。

    Raspberry Pi 引出了 40 个 GPIO 管脚,屏幕引出了 26 个管脚。连接时,请确认屏幕管脚与 Raspberry Pi 管脚对应。

  2. 将 HDMI 连接器接入屏幕和主板的 HDMI 接口。

注:Raspberry Pi Zero / Zero 2 W 需要另配 HDMI 连接线。

Pi 4 和 Pi 3B+ 的硬件连接如下图:

4inch HDMI LCD (H) 连接 Raspberry Pi 4 的接线图

4inch HDMI LCD (H) 连接 Raspberry Pi 3B+ 的接线图

软件设置​

支持 Raspberry Pi OS / Ubuntu / Kali 和 RetroPie 系统。

请从 树莓派官网 下载最新版本的镜像。

  1. 将压缩文件下载到 PC 并解压,得到 img 文件。

  2. 将 TF 卡连接到 PC,使用 Panasonic SDFormatter 格式化 TF 卡。

  3. 打开 Win32 Disk Imager,选择第 1 步准备的系统镜像,然后点击 “Write” 烧写系统镜像。

  4. 烧写完成后,打开 TF 卡根目录中的 config.txt 文件,在文件末尾加入以下配置。保存文件后,安全弹出 TF 卡。

    hdmi_group=2
    hdmi_mode=87
    hdmi_timings=480 0 40 10 80 800 0 13 3 32 0 0 0 60 0 32000000 3
    hdmi_drive=1
    hdmi_force_hotplug=1
    dtoverlay=waveshare-ads7846,penirq=25,xmin=150,xmax=3900,ymin=100,ymax=3950,speed=50000
  5. 下载 waveshare-ads7846.dtbo 文件,解压后复制到 overlays 目录(/boot/overlays/)。

  6. 将 TF 卡插入 Raspberry Pi 并接通电源。等待十几秒后,屏幕正常显示。

触摸校准​

修改 config.txt 文件中的参数可校准触摸范围:

  1. 如果 X 轴左边缘无法触摸,调整 x_min。例如,将 x_min 默认值 200 调整为 100,触摸范围向左扩展 100。
  2. 如果 X 轴右边缘无法触摸,调整 x_max。例如,将 x_max 默认值 3900 调整为 4000,触摸范围向右扩展 100。
  3. 如果 Y 轴上边缘无法触摸,调整 y_min。例如,将 y_min 默认值 200 调整为 100,触摸范围向上扩展 100。
  4. 如果 Y 轴下边缘无法触摸,调整 y_max。例如,将 y_max 默认值 3900 调整为 4000,触摸范围向下扩展 100。

x_min、x_max、y_min 和 y_max 参数值可参考 evtest 工具确定:

sudo apt-get install evtest
sudo evtest

evtest 触摸设备选择界面

在此处选择编号 3。不同 Raspberry Pi 显示的设备编号可能不同,请根据实际编号选择。

分别将手指移至触摸屏的四个边缘。面对屏幕时,x_min 对应最左侧,x_max 对应最右侧,y_min 对应最上侧,y_max 对应最下侧。

  • 将手指放到 x_min。

    触摸校准时手指位于屏幕左侧边缘

  • 将手指放到 x_max。

    触摸校准时手指位于屏幕右侧边缘

  • 将手指放到 y_min。

    触摸校准时手指位于屏幕上侧边缘

  • 将手指放到 y_max。

    触摸校准时手指位于屏幕下侧边缘

sudo nano /boot/firmware/config.txt

在文件中添加以下配置:

dtoverlay=waveshare-ads7846,x_min=164,x_max=4010,y_min=154,y_max=3758

这组参数对应当前触摸设备较准确的触摸范围。运行 sudo reboot 重启,使配置生效。

旋转​

添加显示旋转参数​

对于 Bookworm 系统

  1. 打开“Screen Configuration”应用程序。

    Bookworm 的 Screen Configuration 界面

  2. 依次选择“Screen” > “HDMI-1” > “Orientation”,选择所需的旋转方向,然后点击“Apply”应用设置,完成显示与触摸同步旋转。

    Bookworm 中 HDMI-1 显示方向选择界面

旋转后,需要交换 xmin、xmax、ymin、ymax 对应的位置,以调整触摸方向。

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

如果未加载 KMS 或 FKMS 驱动,使用以下命令修改配置:

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 显示设置界面示例 1

Ubuntu 显示设置界面示例 2

Ubuntu 显示设置界面示例 3

如果需要旋转 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

在文件末尾添加以下配置:

# 0:旋转 0 度;1:旋转 270 度;2:旋转 180 度;3:旋转 90 度。
display_rotate=3

添加触摸旋转参数​

sudo nano /usr/share/X11/xorg.conf.d/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"