4inch DPI LCD (C)
说明
| ||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||
产品特点
- 4寸IPS电容触摸屏,硬件分辨率为720×720
- 基于Raspberry Pi 40pin GPIO接口设计
- 通过Raspberry Pi的DPI666接口驱动LCD,刷新率可达60Hz
- 通过Raspberry Pi的I2C接口驱动电容触摸,5点触控,钢化玻璃面板,硬度达6H
- 支持Raspberry Pi OS、Ubuntu和Kali操作系统
搭配树莓派使用
硬件连接
请按下图连接将显示屏缓慢安装到树莓派的40PIN GPIO接口上。
软件设置
如果你不清楚Raspberry Pi OS的两个分支的差别,可以查看以下介绍#Raspberry Pi OS分支介绍
用于Raspberry Pi OS Bookworm和Bullseye分支
请在树莓派官网下载最新版本的镜像。
- 1. 将压缩文件下载到PC上,并解压得到img文件。
- 2. TF卡连接到PC,使用SDFormatter软件格式化TF卡。
- 3. 打开Win32DiskImager软件,选择第1步准备的系统镜像,点击write烧写系统镜像。
- 4. 烧写完成后,打开TF卡根目录的config.txt文件,在config.txt末端加入以下代码并保存:
dtoverlay=vc4-kms-v3d dtoverlay=vc4-kms-DPI-4inch dtoverlay=waveshare-4dpic-3b-4b dtoverlay=waveshare-4dpic-3b dtoverlay=waveshare-4dpic-4b dtoverlay=waveshare-4dpi dtoverlay=waveshare-touch-4dpi
- 5. 下载4inch DPI LCD (C) DTBO文件并解压复制到overlays目录(/boot/overlays/)
- 6 保存并安全弹出TF卡,将TF卡插入树莓派。
- 7 给树莓派上电,正常等待约三十秒后可正常显示。
用于Raspberry Pi OS Buster分支和Ubuntu系统
- 1. 打开TF卡根目录的config.txt文件,在config.txt最后加入以下代码,保存并安全弹出TF卡。
gpio=0-9=a2 gpio=12-17=a2 gpio=20-25=a2 dtoverlay=dpi24 enable_dpi_lcd=1 display_default_lcd=1 extra_transpose_buffer=2 dpi_group=2 dpi_mode=87 dpi_output_format=0x7f216 dpi_timings=720 0 46 2 42 720 0 16 2 18 0 0 0 60 0 60000000 6 dtoverlay=waveshare-4dpic-3b-4b dtoverlay=waveshare-4dpic-3b dtoverlay=waveshare-4dpic-4b
- 2. 下载4inch DPI LCD (C) DTBO文件并解压复制到overlays目录(/boot/overlays/)
- 3. 保存并安全弹出TF卡,将TF卡插入树莓派。
- 4. 将4inch DPI LCD插入到树莓派的40PIN GPIO接口上,给树莓派上电,正常等待约三十秒后可正常显示。
显示旋转
Bookworm显示旋转
GUI 界面旋转
- 1.打开"Screen Configuration"应用程序;
- 2.进入"Screen"->"DPI-1"->"Touchscreen" ,勾选"13-005d Goodix Capacitive TouchScreen"
- 3.进入"Screen"->"DPI-1"->"Orientation" ,勾选您需要旋转的方向,最后点击“Apply”,即可完成显示屏和触摸的同步旋转。
-->
注意:仅Bookworm系统支持以上同步旋转方法。对于Bullseye和Butser系统,显示旋转后,需手动单独设置触摸旋转。
lite版本显示旋转
sudo nano /boot/firmware/cmdline.txt #在cmdline.txt文件开头添加对应显示旋转角度的指令,保存重启后生效 #显示旋转90度 video=DPI-1:720x720M@60,rotate=90 #显示旋转180度 video=DPI-1:720x720M@60,rotate=180 #显示旋转270度 video=DPI-1:720x720M@60,rotate=270
注意:无法使用 cmdline.txt 将 DPI 显示器与 HDMI 显示器分开旋转。当您同时使用 DPI 和 HDMI 时,它们共享相同的旋转值。
Bullseye/Buster显示旋转
GUI 界面旋转
- 1.打开"Screen Configuration"应用程序;
- 2.进入"Screen"->"DPI-1"->"Orientation" ,勾选您需要旋转的方向,最后点击"Apply",即可完成显示旋转。
lite版本显示旋转
- 1.需要修改/boot/cmdline.txt文件:
sudo nano /boot/cmdline.txt
- 2.在cmdline.txt文件开头,添加对应显示旋转角度的指令:(请注意,该命令需要放在同一行上,每个命令用空格分隔。)
video=DPI-1:720x720M@60,rotate=90
通过将rotate值更改为 90、180 或 270 来更改显示旋转的角度。
- 3.保存并重新启动
sudo reboot
Stretch/Jessie显示旋转
对于一些比较古老的系统,它们不使用vc4-kms-v3d 或 vc4-fkms-v3d 驱动模式,显示旋转方法如下
- 1. 在config.txt文件中加入语句(config文件位于TF卡根目录,即/boot中):
display_rotate=1 #1:90;2: 180; 3: 270
- 2. 保存后重启树莓派即可
sudo reboot
触摸旋转
Bookworm 触摸旋转
如果使用图形界面进行旋转,可以在屏幕布局编辑器窗口中勾选“Touchscreen”来同步触摸旋转。屏幕旋转方法请参考前面的介绍。命令行旋转方法请参考以下文字:
1. 创建一个名为的新文件99-waveshare-touch.rules
sudo nano /etc/udev/rules.d/99-waveshare-touch.rules
2. 根据需要添加以下行:
#90°: ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 -1 1 1 0 0" #180°: #ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="-1 0 1 0 -1 1" #270°: #ENV{ID_INPUT_TOUCHSCREEN}=="1", ENV{LIBINPUT_CALIBRATION_MATRIX}="0 1 0 -1 0 1"
3. 保存并重启
sudo reboot
Bullseye/Buster 触摸旋转
部分系统显示旋转后,触摸方向不一致,需要按下文操作进行触摸旋转:
1. 安装libinput
sudo apt-get install xserver-xorg-input-libinput
- 如果你安装的是Ubuntu系统,或者是Jetson Nano。安装指令为
sudo apt install xserver-xorg-input-synaptics
2. 在/etc/X11/下创建xorg.conf.d目录 (如果该目录已存在,这直接进行第3步)
sudo mkdir /etc/X11/xorg.conf.d
3. 复制40-libinput-conf 文件到刚刚创建的目录下
sudo cp /usr/share/X11/xorg.conf.d/40-libinput.conf /etc/X11/xorg.conf.d/
4. 编辑该文件
sudo nano /etc/X11/xorg.conf.d/40-libinput.conf
#找到 touchscreen的部分,在里面添加对应的旋转角度指令,然后保存即可 #90°Right触摸旋转: Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1" #180° Inverted触摸旋转: #Option "CalibrationMatrix" "-1 0 1 0 -1 1 0 0 1" #270° Left旋转: #Option "CalibrationMatrix" "0 -1 1 1 0 0 0 0 1" 类似下图位置:
sudo reboot
完成以上步骤后触摸将会进行旋转。
触摸模式选择
Bookworm系统支持两种触控模式,可在 Screen Configuration > Touchscreen 菜单中切换:
- 1.Mouse Emulation(默认)
单击 = 鼠标左键功能 长按 = 鼠标右键功能 支持双击 不支持滑动页面和多点触摸功能
注:此模式适合需要鼠标操作的场景,如双击打开文件管理器,长按实现右键功能。
- 2.Multitouch
支持多点触摸功能 支持滑动页面 不支持双击和长按右键功能
注:此模式适合触控优化场景,如网页浏览、滚动列表。
使用触摸屏虚拟键盘
从 Raspberry Pi OS Bookworm 版本开始,系统默认集成了 Squeekboard 屏幕键盘。
当连接触摸显示屏时,在可以输入文字的情况下,屏幕键盘会自动显示;而在无法输入文字的情况下,它会自动隐藏。
对于不支持自动检测文字输入的应用程序,可以使用任务栏最右侧的键盘图标手动显示或隐藏屏幕键盘。
你也可以通过“Raspberry Pi Configuration”中的“Display”选项栏目,或通过 raspi-config 中的“Display”部分,来永久设置屏幕键盘的显示或隐藏。
- 提示:
在 Raspberry Pi OS 的 Bookworm 之前的版本中,请使用 matchbox-keyboard。如果你使用的是 wayfire 桌面合成器,请使用 wvkbd。
设置屏幕常亮
有些用户希望显示时,不受屏幕保护功能影响,可以通过如下设置。将屏幕保护功能关闭。
打开 lightdm.conf
sudo nano /etc/lightdm/lightdm.conf
修改 lightdm.conf 找到[SeatDefaults]段下的"xserver-command",取消注释,修改为如下:
#xserver-command=X
修改为
xserver-command=X -s 0 -dpms
- -s # –设置屏幕保护不启用
- dpms 关闭电源节能管理
重启
sudo reboot
调节背光
PWM调光
- 安装WiringPi
cd ~ git clone https://github.com/WiringPi/WiringPi.git cd WiringPi ./build gpio -v
- 手动调节显示器PWM背光
gpio -g mode 18 pwm #占用管脚为PWM管脚 gpio pwmc 100 #设置 PWM 时钟分频器 gpio -g pwm 18 0 #最暗 gpio -g pwm 18 1023 #最亮 gpio -g mode 18 out #释放为输出
- 设置屏幕的关闭和开启
用户可以通过以下命令设置屏幕的关闭和开启。
注意:需要PWM引脚释放为输出才可以控制。
sudo echo 1 | sudo tee /sys/class/backlight/rpi_backlight/bl_power sudo echo 0 | sudo tee /sys/class/backlight/rpi_backlight/bl_power
pinctrl调光
- 设置亮屏
sudo pinctrl set 18 op dh
- 设置息屏
sudo pinctrl set 18 op dl
接口定义
以下标识为“NC”的引脚表示触摸屏没有占用该引脚,用户可用于其它应用。
引脚号 | 标识 | 描述 |
---|---|---|
1 | NC | 电源正(3.3V电源) |
2 | 5V | 电源正(5V电源) |
3 | VSYNC | 垂直同步 |
4 | 5V | 电源正(5V电源) |
5 | HSYNC | 水平同步 |
6 | GND | 电源地 |
7 | B0 | RGB信号线 |
8 | G2 | RGB信号线 |
9 | GND | 电源地 |
10 | G3 | RGB信号线 |
11 | G5 | RGB信号线 |
12 | NC | GPIO接口 |
13 | TP_INT | 触摸面板的中断 |
14 | GND | 电源地 |
15 | R2 | RGB信号线 |
16 | R3 | RGB信号线 |
17 | NC | 电源正(3.3V电源) |
18 | R4 | RGB信号线 |
19 | TP_SDA | 触摸面板的I2C SDA |
20 | GND | 电源地 |
21 | B5 | RGB信号线 |
22 | R5 | RGB信号线 |
23 | TP_SCL | 触摸面板的I2C SCL |
24 | B4 | RGB信号线 |
25 | GND | 电源地 |
26 | B3 | RGB信号线 |
27 | LCD_CLK | LCD时钟 |
28 | DE | LCD数据使能 |
29 | B1 | RGB信号线 |
30 | GND | 电源地 |
31 | B2 | RGB信号线 |
32 | G0 | RGB信号线 |
33 | G1 | RGB信号线 |
34 | GND | 电源地 |
35 | NC | GPIO接口 |
36 | G4 | RGB信号线 |
37 | NC | GPIO接口 |
38 | R0 | RGB信号线 |
39 | GND | 电源地 |
40 | R1 | RGB信号线 |
资料
3D图纸
软件
教程
FAQ
你可以注释掉config.txt文件的以下语句
dtoverlay=waveshare-touch-4dpi
不建议将 DPI 屏幕连接线延长超过 10 厘米。
由于 DPI 使用的是并行信号,包含大量高速数据线,传输距离一长就容易出现信号干扰、画面抖动、花屏或无法显示的问题。如果您需要较长距离的连接,建议改用支持差分信号的接口类型,如 HDMI、MIPI DSI 或 LVDS,它们在抗干扰和信号完整性方面更适合远距离传输。