3.5inch Capacitive Touch LCD
来自Waveshare Wiki
| |||||||||||||||||||||||||
| |||||||||||||||||||||||||
产品介绍
产品简介
3.5inch Capacitive Touch LCD 配备320 × 480分辨率的电容触摸屏,支持15PIN端子接口或18PIN FPC插槽接入,并提供树莓派、ESP32、Pico、Arduino等的示例资料。
产品特性
- 320 × 480 分辨率,262K 彩色,能清晰地显示彩色图片
- 触摸屏透过率高,响应快,寿命长
- 内置 ST7796S 驱动芯片和 FT6336U 电容触控芯片,分别使用 SPI 和 I2C 接口通信,不占用过多接口引脚资源
- 配备Micro SD卡槽,方便存储更多的图片、视频、音乐等
- 引出 LCD 控制接口,可以选择 15PIN 端子接口或 18PIN 的 FPC 插槽接入显示屏
- 板载电平转换芯片,支持 3.3V/5V 两种工作电平
接口介绍
产品尺寸
产品参数
(请保证供电电压和逻辑电压一致,否则会导致无法正常工作)
参数名称 | 参数 |
供电电压 | 3.3V/5V |
屏幕类型 | IPS |
通信接口 | Display :SPI |
Touch :I2C | |
控制芯片 | Display :ST7796S |
Touch :FT6336U | |
分辨率 | 320(H) x 480(V) |
显示尺寸 | 48.96 (H) x 73.44 (V) mm |
像素间距 | 0.051 x 0.153mm |
产品尺寸 | 61.00(H)x 92.44(V) mm |
树莓派下使用
请注意,以下示例通过树莓派4运行
硬件连接
- 15PIN 杜邦线接口
LCD引脚 | 树莓派(BCM) |
VCC | 3.3V |
GND | GND |
MISO | 9 |
MOSI | 10 |
SCLK | 11 |
LCD_CS | 8 |
LCD_DC | 25 |
LCD_RST | 27 |
LCD_BL | 18 |
TP_SDA | 2 |
TP_SCL | 3 |
TP_INT | 4 |
TP_RST | 17 |
开启SPI与I2C接口
- 打开树莓派终端,输入以下指令进入配置界面:
sudo raspi-config
- 选择Interfacing Options -> SPI -> Yes 开启SPI接口
- 继续进入配置界面:
sudo raspi-config
- 选择Interfacing Options -> I2C -> Yes 开启I2C接口
- 重启树莓派
sudo reboot
- 检查 /boot/config.txt,可以看到'dtparam=i2c_arm=on' 和 'dtparam=spi=on' 已被写入
more /boot/config.txt
- 为了确保 SPI 没有被占用,建议其他的驱动覆盖暂时先关闭。可以使用 ls /dev/spi* 来检查 SPI 占用情况,终端输出 /dev/spidev0.0 和 /dev/spidev0.1 表示 SPI 情况正常
ls /dev/spi*
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
示例操作
- 下载示例程序
cd wget https://www.waveshare.net/w/upload/5/52/3.5inch_Capacitive_Touch_LCD_Demo_Pi.zip
- (可选,使用过解压指令可跳过这一步)安装解压环境
sudo apt-get install unzip
- 进入文件位置,执行解压指令
unzip 3.5inch_Capacitive_Touch_LCD_Demo_Pi.zip -d ./3.5inch_Capacitive_Touch_LCD
- 进入 Python 文件夹中
cd 3.5inch_Capacitive_Touch_LCD/Python
- 运行示例程序即可在屏幕上显示3张图片,显示完即进入画板功能
python 3.5inch_Capacitive_Touch_LCD.py
C 环境
安装库文件
- 安装库
git clone https://github.com/WiringPi/WiringPi cd WiringPi ./build gpio -v
- 运行gpio -v会出现2.70版本,如果没有出现说明安装出错
- 下载示例文件
- 进入文件目录,运行程序
示例操作
- 下载示例程序
cd wget https://www.waveshare.net/w/upload/5/52/3.5inch_Capacitive_Touch_LCD_Demo_Pi.zip
- (可选,使用过解压指令可跳过这一步)安装解压环境
sudo apt-get install unzip
- 进入文件位置,执行解压指令
unzip 3.5inch_Capacitive_Touch_LCD_Demo_Pi.zip -d ./3.5inch_Capacitive_Touch_LCD
- 进入 C 文件夹中
cd 3.5inch_Capacitive_Touch_LCD/C
- 清除编译文件,重新编译
sudo make clean sudo make -j
- 编译成功,运行示例即可在屏幕上进行RGB刷屏,显示完即进入画板功能
sudo ./main
树莓派Pico下使用
硬件连接
- 15PIN 杜邦线接口
LCD引脚 | Raspberry Pi Pico |
VCC | 3.3V |
GND | GND |
MISO | 12 |
MOSI | 11 |
SCLK | 10 |
LCD_CS | 9 |
LCD_DC | 14 |
LCD_RST | 13 |
LCD_BL | 15 |
TP_SDA | 6 |
TP_SCL | 7 |
TP_INT | 8 |
TP_RST | 5 |
Python 环境
前置操作
1.安装Thonny(Thonny安装包)
2.按住Raspberry Pi Pico的“BOOTSEL”键,然后上电,上电后松开
3.电脑会出现一个新的盘符,将固件(Raspberry Pi Pico固件)解压,并将固件(后缀为uf2)拷贝至该磁盘(拷贝成功磁盘会自动消失)
4.开启Thonny,点击右下方的“Python x.x.x”,选择“Configure interpreter”
5.在弹出窗口中选择“解释器”->解释器选择“MicroPython(Raspbeery Pi Pico)”->端口选择“自动探测端口”
6.点击暂停,Shell窗口出现“MicroPython v1.20.0-50-g786013d46 on 2023-05-04; Raspberry Pi Pico with RP2040 Type "help()" for more information.”即为连接成功
- 以下为第4点与第5点操作流程:
- 连接成功效果如下:
示例程序
- 下载示例程序
- 解压示例文件,打开 Thonny
- 打开示例文件,路径为:3.5inch_Capacitive_Touch_LCD_Demo_Pico/3.5inch_Capacitive_Touch_LCD.py
- 运行程序即可在屏幕上实现画板功能
- 若需上电自动运行程序,请将文件名修改为 main.py
ESP32S3 下使用
硬件连接
- 15PIN 杜邦线接口
LCD引脚 | ESP32S3 |
VCC | 3.3V |
GND | GND |
MISO | 42 |
MOSI | 2 |
SCLK | 1 |
SD_CS | 38 |
LCD_CS | 39 |
LCD_DC | 41 |
LCD_RST | 40 |
LCD_BL | 6 |
TP_SDA | 15 |
TP_SCL | 7 |
TP_INT | 17 |
TP_RST | 16 |
环境搭建
下载和安装 Arduino IDE
- 点击访问Arduino官网,选择对应的系统和系统位数下载。
- 运行安装程序,全部默认安装即可。
安装 Arduino-ESP32
- ESP32相关主板在Arduino IDE使用,须先安装“Arduino-ESP32板”库
- 国内部分区域安装,一般推荐“离线安装”, 若离线安装失败,则使用“在线安装”
- 安装 Arduino-ESP32教程,详见:Arduino 板管理教程
- 开发板离线包:esp32_package_3.0.2_arduino离线包(提取码:1r4i)
- 提取码:1r4i
安装库
- 在安装 Arduino 库时,通常有两种方式可供选择:在线安装 和 离线安装。
对于大多数库,用户可以通过 Arduino 软件的在线库管理器轻松搜索并安装。然而,一些开源库或自定义库未被同步到 Arduino 库管理器中,因此无法通过在线搜索获取。在这种情况下,用户只能通过离线方式手动安装这些库。 - 库安装教程,详见:Arduino 库管理教程
库名称 | 说明 | 库安装要求 |
---|---|---|
GFX_Library_for_Arduino | LCD驱动库 | “离线”安装 |
运行第一个 Arduino 程序
如果你刚入门学习ESP32和Arduino,还不知道如何创建、编译、烧录和运行Arduino ESP32程序,那么请展开看看,希望可以帮助到你!
新建工程
void setup() { // put your setup code here, to run once: Serial.begin(115200); } void loop() { // put your main code here, to run repeatedly: Serial.println("Hello, World!"); delay(2000); }
- 保存代码工程,选择
File
->Save As...
;在弹出的菜单选择保存工程路径,并输入工程名,如 Hello_World,点击保存
示例程序
- 下载示例程序,并解压
- 打开示例,3.5inch_Capacitive_Touch_LCD_Demo_ESP32S3/3.5inch_Capacitive_Touch_LCD
- 根据您的ESP32S3的资源情况选择相应的配置,编译并烧录示例
- 烧录成功进入画板功能
- 打开串口监控,可以看到打印出SD卡的容量大小
Arduino UNO下使用
硬件连接
- 15PIN 杜邦线接口
LCD引脚 | Arduino |
VCC | 5V |
GND | GND |
MISO | NC |
MOSI | 11 |
SCLK | 13 |
LCD_CS | 10 |
LCD_DC | 7 |
LCD_RST | 8 |
LCD_BL | 9 |
TP_SDA | SDA |
TP_SCL | SCL |
TP_INT | 3 |
TP_RST | 4 |
安装库
- 在安装 Arduino 库时,通常有两种方式可供选择:在线安装 和 离线安装。
对于大多数库,用户可以通过 Arduino 软件的在线库管理器轻松搜索并安装。然而,一些开源库或自定义库未被同步到 Arduino 库管理器中,因此无法通过在线搜索获取。在这种情况下,用户只能通过离线方式手动安装这些库。 - 库安装教程,详见:Arduino 库管理教程
库名称 | 说明 | 库安装要求 |
---|---|---|
GFX_Library_for_Arduino | LCD驱动库 | “离线”安装 |
示例程序
- 下载示例程序,并解压
- 进入示例文件 3.5inch_Capacitive_Touch_LCD_Demo_Arduino/3.5inch_Capacitive_Touch_LCD 中,双击 3.5inch_Capacitive_Touch_LCD.ino 打开示例
- 选择设备与端口,编译并烧录程序
- 烧录成功进入画板功能