树莓派3.5inch DPI LCD使用教程

产品特点

  • 3.5寸IPS电容触摸屏,硬件分辨率为640×480
  • 基于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 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-35inch
dtoverlay=waveshare-35dpi-3b-4b
dtoverlay=waveshare-35dpi-3b
dtoverlay=waveshare-35dpi-4b
5. 下载3.5inch DPI LCD 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=dpi18
enable_dpi_lcd=1
display_default_lcd=1
extra_transpose_buffer=2
dpi_group=2
dpi_mode=87
dpi_output_format=0x6f006
hdmi_timings=640 0 20 10 10 480 0 10 5 5 0 0 0 60 0 60000000 1
dtoverlay=waveshare-35dpi-3b-4b
dtoverlay=waveshare-35dpi-3b
dtoverlay=waveshare-35dpi-4b
2. 下载3.5inch DPI LCD DTBO文件并解压复制到overlays目录(/boot/overlays/)
3. 保存并安全弹出TF卡,将TF卡插入树莓派。
4. 将3.5inch DPI LCD插入到树莓派的40PIN GPIO接口上,给树莓派上电,正常等待约十秒后可正常显示。

Raspberry Pi OS和Kali显示旋转

先检查使用的系统是否有加载KMS或FKMS驱动。

查看方法:在/boot/config.txt中,看对应的主板是否有打开了dtoverlay=vc4-kms-v3d或dtoverlay=vc4-fkms-v3d。

有加载KMS或FKMS驱动

使用以下命令进行显示旋转:

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
#在autostart文件末端输入对应显示旋转角度的指令,重启后生效
#0: 旋转0度; 1:旋转270度;2: 旋转180度; 3: 旋转90度
xrandr -o 1
没有加载KMS或FKMS驱动

使用以下命令进行显示旋转:

sudo nano /boot/config.txt
#在config.txt文件末端输入对应显示旋转角度的指令,重启后生效
#0: 旋转0度; 1:旋转90度;2: 旋转180度; 3: 旋转270度
display_rotate=3

触摸旋转

在进行显示旋转后,由于触摸并没有随着显示角度做出更改,导致触摸位置不对。所以需要对触摸做出修改。

1. 安装libinput

sudo apt-get install xserver-xorg-input-libinput
如果你安装的是Ubuntu系统。安装指令为
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的部分,在里面添加以下语句,然后保存即可

Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1"

类似下图位置:
 
5. 重启树莓派

sudo reboot

完成以上步骤即可进行90度旋转。

注:
90 度旋转: Option "CalibrationMatrix" "0 1 0 -1 0 1 0 0 1"

180度旋转: Option "CalibrationMatrix" "-1 0 1 0 -1 1 0 0 1"

270度旋转: Option "CalibrationMatrix" "0 -1 1 1 0 0 0 0 1"


其它操作

设置屏幕常亮

有些用户希望显示时,不受屏幕保护功能影响,可以通过如下设置。将屏幕保护功能关闭。
打开 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控制背光亮度

对于Pi4,需要先更新wiringPi版本,操作方法如下(对于3B+及更早的版本,则无需更新):

wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb
gpio -v
# 运行gpio -v会出现2.52版本,如果没有出现说明安装出错

更新wiringPi成功后,可通过以下命令控制背光亮度。

gpio -g mode 18 pwm      #占用管脚为PWM管脚
gpio pwmc 100   
gpio -g pwm 18 0         #最亮
gpio -g pwm 18 1023      #最暗
gpio -g mode 18 out      #释放为输出

设置屏幕的关闭和开启

用户可以通过以下命令设置屏幕的关闭和开启。

vcgencmd display_power 0
vcgencmd display_power 1

接口定义

以下标识为“NC”的引脚表示触摸屏没有占用该引脚,用户可用于其它应用。

引脚号标识描述
1NC悬空
25V电源正(5V电源)
3VSYNC垂直同步
45V电源正(5V电源)
5HSYNC水平同步
6GND电源地
7B2RGB信号线
8G4RGB信号线
9GND电源地
10G5RGB信号线
11G7RGB信号线
12PWM背光控制
13TP_INT触摸面板的中断
14GND电源地
15R4RGB信号线
16R5RGB信号线
17NC悬空
18R6RGB信号线
19TP_SDA触摸面板的I2C SDA
20GND电源地
21B7RGB信号线
22R7RGB信号线
23TP_SCL触摸面板的I2C SCL
24B6RGB信号线
25GND电源地
26B5RGB信号线
27LCD_CLKLCD时钟
28DELCD数据使能
29B3RGB信号线
30GND电源地
31B4RGB信号线
32G2RGB信号线
33G3RGB信号线
34GND电源地
35NC悬空
36G6RGB信号线
37NC悬空
38R2RGB信号线
39GND电源地
40R3RGB信号线