3.5inch RPi LCD (F)

来自Waveshare Wiki
跳转至: 导航搜索
3.5inch RPi LCD (F)
{{{name2}}}
{{{name3}}}
功能简介
特性 无特性,不解释
显示尺寸 3.5 英寸
分辨率 320×480
' 无特性,不解释
' 无特性,不解释
接口 I2C SPI

产品介绍

产品简介

3.5inch RPi LCD (F) 配备320 × 480分辨率的电容触摸屏,支持顶针通信和 GH1.25 13PIN 连接线两种连接方式,并提供树莓派、ESP32、Pico、Arduino等的示例资料。

产品特性

  • 320 × 480 分辨率,262K 彩色,能清晰地显示彩色图片
  • 触摸屏透过率高,响应快,寿命长
  • 内置 ST7796S 驱动芯片和 GT911 电容触控芯片,分别使用 SPI 和 I2C 接口通信,不占用过多接口引脚资源
  • 支持顶针通信和 GH1.25 13PIN 连接线两种连接方式
  • 采用黑色沉金工艺,美观耐用
  • 提供树莓派、树莓派 Pico、ESP32 以及 Arduino 平台的完整例程和开发资料

接口介绍

3.5inch-RPi-LCD-F-details-11.jpg

产品尺寸

3.5inch-RPi-LCD-F-details-size.jpg

产品参数

参数名称 参数
供电电压 5V
逻辑电压 3.3V
屏幕类型 IPS
通信接口 Display :SPI
Touch :I2C
控制芯片 Display :ST7796S
Touch :GT911
分辨率 320(H) x 480(V)
显示尺寸 49.36 (H) x 73.84 (V) mm
产品尺寸 61.00(H)x 92.44(V) mm

Raspberrypi使用教程

硬件连接

这款产品支持两种连接方式连接到树莓派使用

方法一:通过顶针连接树莓派

3.5inch-RPi-LCD-F-details-13.jpg

方法二:通过杜邦线连接树莓派

功能引脚 BCM编码 Board物理引脚序号
TP_RST 17 11
TP_INT 4 7
TP_SCL 3 5
TP_SDA 2 3
LCD_BL 18 12
LCD_RST 27 13
LCD_DC 22 15
LCD_CS 8 24
SCLK 11 23
MOSI 10 19
MISO 9 21
GND GND 6
VCC 5V 4

开启SPI与I2C接口

在终端输入以下语句:

sudo raspi-config nonint do_spi 0
sudo raspi-config nonint do_i2c 0

Python 环境

  • 安装库
sudo apt-get update
sudo apt-get install python3-pip
sudo apt-get install python3-pil
sudo apt-get install python3-numpy
sudo apt-get install python3-spidev
sudo apt-get pip install smbus2
  • 下载运行示例程序
wget https://www.waveshare.net/w/upload/d/d1/3inch5_RPI_LCD_F_RPI.zip
unzip 3inch5_RPI_LCD_F_RPI.zip
cd 3inch5_RPI_LCD_F_RPI
sudo python ./main.py

Bookworm系统桌面显示

安装驱动模块

注:Bookworm需使用官方正式版本6.6.51内核版本以及以上。
  • 确定当前内核版本
uname -a

此命令将输出完整的内核版本信息。例如,在 Raspberry Pi 5 上执行该命令,可能会得到如下输出:

Linux raspberrypi 6.6.51+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.51-1+rpt3 (2024-10-08) aarch64 GNU/Linux

这表明此系统的内核版本号是6.6.51+rpt-rpi-2712,使用的是64位ARM(AArch64)架构。

  • 下载安装st7796驱动模块
# 第一步:下载并进入Waveshare-st7796s驱动文件夹
wget https://www.waveshare.net/w/upload/4/49/Waveshare-st7796s.zip
unzip Waveshare-st7796s.zip
cd Waveshare-st7796s
# 第二步:cd到对应内核版本号文件目录 # 如上面例子则运行下面指令 cd 6.6.51/64/rpi-2712-RPi5
# 复制对应版本的st7796s.ko到当前系统 sudo cp st7796s.ko /lib/modules/$(uname -r)/kernel/drivers
# 确保模块在开机时被加载,将模块名添加到 /etc/modules 文件中: sudo nano /etc/modules
# 在末尾添加 st7796s

3.5F st7796.png
终端输入以下语句,处理内核模块依赖关系:

sudo depmod -a
  • 配置驱动设备树
cd
wget https://www.waveshare.net/w/upload/2/29/Waveshare35f.dtbo
sudo cp Waveshare35f.dtbo /boot/overlays/

对于Rpi4 & Rpi5

配置驱动文件

需要先参考此处步骤#安装驱动模块

  • 编辑config.txt配置文件
sudo nano /boot/firmware/config.txt

注释掉双屏配置语句
3.5F config dtbo1.png
在[all]末尾添加以下语句

dtparam=i2c_arm=on
dtparam=i2c_arm_baudrate=50000
dtparam=spi=on
dtoverlay=Waveshare35f,fps=60,speed=48000000,rotate=90,ts_rotate_90
hdmi_force_hotplug=1
max_usb_current=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt 480 320 60 6 0 0 0
hdmi_drive=2

创建屏幕配置文件

创建98-spi-screen.conf文件

sudo nano /etc/X11/xorg.conf.d/98-spi-screen.conf 

添加下面参数到98-spi-screen.conf文件内

Section "Device"
    Identifier "SPI Screen"    
    Driver "fbdev"
    Option "fbdev" "/dev/fb0"
EndSection

注:整个流程操作完成之后。 如果不显示。 修改"/dev/fb0" 为 "/dev/fb1" 之后再重启看看

切换为X11

sudo raspi-config nonint do_wayland W1

重启生效

对于所有树莓派版本

此方法必须是基于bookworm-lite版本操作,64位 lite32位 lite

配置驱动文件

需要先参考此处步骤#安装驱动模块

  • 编辑config.txt配置文件
sudo nano /boot/firmware/config.txt

注释掉KMS和双屏配置语句
FBCP CLOSE.jpg
在[all]末尾添加以下语句

dtparam=i2c_arm=on
dtparam=i2c_arm_baudrate=50000
dtparam=spi=on
dtoverlay=Waveshare35f,fps=60,speed=48000000,rotate=90,ts_rotate_90
hdmi_force_hotplug=1
max_usb_current=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt 480 320 60 6 0 0 0
hdmi_drive=2

下载必要的软件

  • 安装xorg服务
sudo apt-get install --no-install-recommends xserver-xorg -y
sudo apt-get install --no-install-recommends xinit -y
  • 安装桌面管理器
sudo apt install lightdm -y
  • 安装树莓派官方GUI
sudo apt install raspberrypi-ui-mods -y  
  • 安装git
sudo apt install git -y
  • 安装浏览器(可选)
sudo apt install chromium-browser -y
  • 安装音乐播放器(可选)
sudo apt install vlc -y

下载运行驱动

打开树莓派终端,执行:

sudo apt install libraspberrypi-dev -y
sudo apt-get install unzip -y
sudo apt-get install cmake -y
sudo wget https://www.waveshare.net/w/upload/6/66/Rpi-fbcp.zip
sudo unzip ./Rpi-fbcp.zip
cd rpi-fbcp/
sudo rm -rf build
sudo mkdir -m 777 ./build
cd ./build
sudo cmake ..
sudo make -j4
sudo install fbcp /usr/local/bin/fbcp

设置自启动startx与fbcp

  • 打开Bash shell文件,如果没有则自己创建一个
sudo nano ~/.bashrc

把以下代码加到文件末尾

if [ "$(cat /proc/device-tree/model | cut -d ' ' -f 3)" = "5" ]; then
    # rpi 5B configuration
    export FRAMEBUFFER=/dev/fb1
    startx  2> /tmp/xorg_errors
else
    # Non-pi5 configuration
    export FRAMEBUFFER=/dev/fb0
    startx  2> /tmp/xorg_errors
fi
  • 创建并编辑一个自启动fbcp服务文件
sudo nano /etc/systemd/system/fbcp.service

在文件内添加服务配置

[Unit]
Description=Framebuffer Copy for Raspberry Pi
After=network.target

[Service]
ExecStartPre=/bin/sleep 20
ExecStart=/usr/local/bin/fbcp
Restart=always
User=root
Group=root

[Install]
WantedBy=multi-user.target

重新加载 systemd 配置

sudo systemctl daemon-reload

服务启用开机自启动

sudo systemctl enable fbcp.service

测试启动服务

sudo systemctl start fbcp.service

设置CLI自动登录

sudo raspi-config nonint do_boot_behaviour B2
sudo raspi-config nonint do_wayland W1
sudo reboot

Note1:确保树莓派的用户名为pi否则无法正常自动登录
Note2:设置上述所有配置后,系统每次重启期间都会变久一点,SSH也需要等待一会儿才能进入;

Bullseye系统桌面显示

安装驱动模块

注:Bullseye需使用官方正式版本6.1.21内核版本以及以上。
  • 确定当前内核版本
uname -a

此命令将输出完整的内核版本信息。例如,在 Raspberry Pi 5 上执行该命令,可能会得到如下输出:

Linux raspberrypi 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr  3 17:24:16 BST 2023 aarch64 GNU/Linux

这表明此系统的内核版本号是6.1.21,使用的是64位ARM(AArch64)架构。

  • 下载安装st7796驱动模块
# 第一步:下载并进入Waveshare-st7796s驱动文件夹
wget https://www.waveshare.net/w/upload/4/49/Waveshare-st7796s.zip
unzip Waveshare-st7796s.zip
cd Waveshare-st7796s
# 第二步:cd到对应内核版本号文件目录 # 如上面例子则运行下面指令 cd 6.1.21/64/
# 复制对应版本的st7796s.ko到当前系统 sudo cp st7796s.ko /lib/modules/$(uname -r)/kernel/drivers
# 确保模块在开机时被加载,将模块名添加到 /etc/modules 文件中: sudo nano /etc/modules
# 在末尾添加 st7796s

3.5F st7796.png
终端输入以下语句,处理内核模块依赖关系:

sudo depmod -a
  • 配置驱动设备树
cd
wget https://www.waveshare.net/w/upload/2/29/Waveshare35f.dtbo
sudo cp Waveshare35f.dtbo /boot/overlays/

配置驱动文件

需要先参考此处步骤#安装驱动模块

  • 编辑config.txt配置文件
sudo nano /boot/config.txt

注释掉KMS和双屏配置语句
FBCP CLOSE.jpg
在[all]末尾添加以下语句

dtparam=i2c_arm=on
dtparam=i2c_arm_baudrate=50000
dtparam=spi=on
dtoverlay=Waveshare35f,fps=60,speed=48000000,rotate=90,ts_rotate_90
hdmi_force_hotplug=1
max_usb_current=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt 480 320 60 6 0 0 0
hdmi_drive=2

下载运行驱动

打开树莓派终端,执行:

sudo apt install libraspberrypi-dev -y
sudo apt-get install unzip -y
sudo apt-get install cmake -y
sudo wget https://www.waveshare.net/w/upload/6/66/Rpi-fbcp.zip
sudo unzip ./Rpi-fbcp.zip
cd rpi-fbcp/
sudo rm -rf build
sudo mkdir -m 777 ./build
cd ./build
sudo cmake ..
sudo make -j4
sudo install fbcp /usr/local/bin/fbcp

设置自启动fbcp

  • 打开rc.local文件
sudo nano /etc/rc.local

把以下代码加到exit 0前,注意一定要添加"&" 后台运行,否则可能会出现系统不能启动的情况。

sleep 20
fbcp &

3.5F rocal.png
重启后生效

资料

原理图

程序

数据手册

软件

FAQ

售后

联系人:吴工
EMAIL:3005496359@qq.com
电话:0755-83043099
QQ:3005496359
微信:扫下方二维码添加
Wxy.png

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