3.5inch DPI LCD

来自Waveshare Wiki
跳转至: 导航搜索

说明

3.5inch DPI LCD
{{{name2}}}
{{{name3}}}
功能简介
特性 3.5寸树莓派IPS电容触摸屏
分辨率 640x480
适用范围 兼容任何版本的树莓派
' 无特性,不解释
' 无特性,不解释
接口 DPI

产品特点

  • 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

注:如果是Raspberry Pi 4,还需要把dtoverlay=vc4-fkms-V3D注释掉。

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"

类似下图位置:
Touch roate.jpg
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”的引脚表示触摸屏没有占用该引脚,用户可用于其它应用。

引脚号 标识 描述
1 NC 悬空
2 5V 电源正(5V电源)
3 VSYNC 垂直同步
4 5V 电源正(5V电源)
5 HSYNC 水平同步
6 GND 电源地
7 B2 RGB信号线
8 G4 RGB信号线
9 GND 电源地
10 G5 RGB信号线
11 G7 RGB信号线
12 PWM 背光控制
13 TP_INT 触摸面板的中断
14 GND 电源地
15 R4 RGB信号线
16 R5 RGB信号线
17 NC 悬空
18 R6 RGB信号线
19 TP_SDA 触摸面板的I2C SDA
20 GND 电源地
21 B7 RGB信号线
22 R7 RGB信号线
23 TP_SCL 触摸面板的I2C SCL
24 B6 RGB信号线
25 GND 电源地
26 B5 RGB信号线
27 LCD_CLK LCD时钟
28 DE LCD数据使能
29 B3 RGB信号线
30 GND 电源地
31 B4 RGB信号线
32 G2 RGB信号线
33 G3 RGB信号线
34 GND 电源地
35 NC 悬空
36 G6 RGB信号线
37 NC 悬空
38 R2 RGB信号线
39 GND 电源地
40 R3 RGB信号线

树莓派长按右键设置

测试环境:2022-04-04-raspios-bullseye-armhf 32位系统
支持型号:支持微雪电子DSI LCD、DPI LCD和HDMI LCD电容触摸屏系列

软件安装

wget https://www.waveshare.net/w/upload/1/18/Evdev-right-click-emulation.zip
unzip Evdev-right-click-emulation.zip
cd evdev-right-click-emulation
sudo apt install build-essential libevdev2 libevdev-dev
cd 'evdev-right-click-emulation'
sudo cp 'out/evdev-rce' '/usr/local/bin/'
sudo chmod +x '/usr/local/bin/evdev-rce'

输入命令

sudo evdev-rce 

运行之后即可触摸长按实现右键功能

设置 pi用户可以执行

sudo usermod -G 'input' -a pi
echo 'uinput' | sudo tee -a /etc/modules
sudo nano  /etc/udev/rules.d/99-uinput.rules

在99-uinput.rules文件中添加

KERNEL=="uinput", MODE="0660", GROUP="input"

保存,再在终端运行

sudo udevadm control --reload-rules
sudo udevadm trigger

然后重启

sudo reboot

重启后运行(此时不需要sudo)

evdev-rce 

运行之后即可触摸长按实现右键功能

设置开机启动

在终端输入

sudo mkdir ~/.config/autostart
sudo nano ~/.config/autostart/right_click.desktop

在right_click.desktop增加如下

[Desktop Entry]
Version=1.0
Type=Application
Name=evdev-rce
GenericName=Enable long-press-to-right-click gesture
Exec=env LONG_CLICK_INTERVAL=1000 LONG_CLICK_FUZZ=200  /usr/local/bin/evdev-rce
Terminal=true
StartupNotify=false

如果要修改灵敏度则可以修改 LONG_CLICK_INTERVAL=1000 LONG_CLICK_FUZZ=200 这两者参数大小,.

FAQ

技术支持

联系人:赵工
EMAIL:2851966008@qq.com
电话:0755-83040712
QQ:2851966008
微信:扫下方二维码添加
Service22-Weichat.jpg

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证