使用说明
- LCD1602 I2C Module 目前提供了5个主控的示例,其中C跟Python都有,可根据项目需求和个人习惯选择适合的示例参考
树莓派示例
-
准备好能正常启动的树莓派,如果没有启动,请参考官方开机教程
-
进入系统后,运行下面的命令,去打开I2C设备:
sudo raspi-config nonint do_i2c 0
硬件连接
连接树莓派的时候,选择用4PIN排线连接,请参考下方的引脚对应表格
使用的是排针或者PH2.0 4PIN接口,需要对照以下表格连线
树莓派连接引脚对应关系
| LCD | Raspberry Pi | Raspberry Pi |
|---|---|---|
| BCM2835编码 | Board物理引脚序号 | |
| VCC | 3.3V | 3.3V |
| GND | GND | GND |
| SCL | SCL.1 | 5 |
| SDA | SDA.1 | 3 |
以LCD1602 Module使用的是PH2.0 4PIN接口为例,对照上述表格连接在树莓派上即可: (请按照引脚定义表格连接,图中排线颜色仅供参考,以实际颜色为准。)

使用示例
C
【安装库并下载程序】
-
wiringpi
cd ~git clone https://github.com/WiringPi/WiringPi.gitcd WiringPi/./build debianmv debian-template/wiringpi-3.0-1.deb .sudo apt install ./wiringpi_3.10_arm64.deb -
lgpio
cd ~wget https://www.waveshare.net/w/upload/3/3c/Lg-master.zipunzip Lg-master.zipcd lg-mastermakesudo make install -
下载程序并解压编译
cd ~wget https://files.waveshare.net/wiki/LCD1602%20I2C%20Module/LCD1602_I2C_Module_Demo.zipunzip LCD1602_I2C_Module_Demo.zipcd ~/LCD1602_I2C_Module_code/Raspberry/csudo make
【运行 Character display 示例】
-
Character display
cd ~/LCD1602_I2C_Module_code/Raspberry/csudo ./main 1
【运行 Custom char 示例】
-
Custom char
cd ~/LCD1602_I2C_Module_code/Raspberry/csudo ./main 2
【运行 Direction control 示例】
-
Direction control
cd ~/LCD1602_I2C_Module_code/Raspberry/csudo ./main 3
【运行 Display time 示例】
-
Display time
cd ~/LCD1602_I2C_Module_code/Raspberry/csudo ./main 4
【运行 Scroll display 示例】
-
Scroll display
cd ~/LCD1602_I2C_Module_code/Raspberry/csudo ./main 5
【makefile脚本说明】
我们做了两个库的使用,Wiringpi跟Lgpio,开发者可以从Makefile中,选择任意一个即可
USELIB = USE_WIRINGPI_LIB
# USELIB = USE_DEV_LIB
可以通过注释/取消注释这些行,切换使用不同的库
Python
【安装库并下载程序】
-
python
sudo apt install python3-smbus -
下载程序并解压编译
cd ~wget https://files.waveshare.net/wiki/LCD1602%20I2C%20Module/LCD1602_I2C_Module_Demo.zipunzip LCD1602_I2C_Module_Demo.zipcd ~/LCD1602_I2C_Module_code/Raspberry/python/examples
【运行 Character display 示例】
-
Character display
sudo python Character_display.py
【运行 Custom char 示例】
-
Custom char
sudo python Custom_char.py
【运行 Direction control 示例】
-
Direction control
sudo python Direction_control.py
【运行 Display time 示例】
-
Display time
sudo python Display_time.py
【运行 Scroll display 示例】
-
Scroll display
sudo python Scroll_display.py
Pico示例
环境设置
- 环境设置请点击查阅
硬件连接
Pico连接引脚对应关系
| 模块接口 | Pico 功能引脚 |
|---|---|
| VCC | 3.3V |
| GND | GND |
| SCL | GP5 |
| SDA | GP4 |
实物连接图如下

使用示例
- 下载示例程序,并解压
- 下面的使用方式都是保存开发环境正常的情况下,才能实现。
C
- 进入到*\LCD1602_I2C_Module_Demo\Pico\c的文件夹中,使用vs code打开全部文件,等待环境加载工具
- 加载完成后开始编译运行示例
【主函数说明】
- 主函数中有五个示例,可以通过注释/取消注释这些行,切换使用不同的示例
【程序烧录】
- 将Pico设备进入到boot盘模式,方式为:摁住boot按键连接电脑,再松开boot按键
- 编译、烧录和运行如下图:
- 点击 ① 是开始编译
- 出现 ② 则编译成功
- 点击 ③ 进行烧录(如果没有进入boot盘,在烧录时会出现错误:No accessible RP-series devices in BOOTSEL mode were found.)

Micropython
【烧录Micropython固件】
- 将Pico设备进入到boot盘模式,方式为:摁住boot按键连接电脑,再松开boot按键
- 进入到*\LCD1602_I2C_Module_Demo\Pico\python的文件夹中,将对应设备的uf2固件复制到boot盘中
【保存驱动库】
- 打开Thonny,连接pico设备
- 打开*\LCD1602_I2C_Module_Demo\Pico\python\lib文件中的LCD1602.py文件,并另存为pico中
- 具体步骤如下图:

【运行示例】
- 使用thonny打开*\LCD1602_I2C_Module_Demo\esp32\python\examples文件中的示例文件,按照下图运行即可:

Arduino-Pico
【安装库】
- 进入到*\LCD1602_I2C_Module_Demo\Pico\arduino的文件夹中,将里面的文件复制到项目文件夹的 libraries 文件夹下,若还是不太清楚,可以参考此链接
【运行示例】
- 将Pico设备进入到boot盘模式,方式为:摁住boot按键连接电脑,再松开boot按键
- 使用 Arduino IDE 打开*\LCD1602_I2C_Module_Demo\Pico\arduino\Waveshare_LCD1602\examples文件中的示例文件
- 具体步骤如下图:
- ①跟②是选择对应的开发板型号跟端口
- ③编译烧录
- ④烧录完成

Arduino示例
硬件连接
Arduino连接引脚对应关系
| 模块接口 | Arduino 功能引脚 |
|---|---|
| VCC | 5V/3.3V |
| GND | GND |
| SCL | SCL |
| SDA | SDA |
实物连接图

使用示例
【安装库】
- 进入到*\LCD1602_I2C_Module_Demo\Arduino的文件夹中,将里面的文件复制到项目文件夹的 libraries 文件夹下,若还是不太清楚,可以参考此链接
【运行示例】
- 使用 Arduino IDE 打开*\LCD1602_I2C_Module_Demo\Arduino\Waveshare_LCD1602\examples文件中的示例文件
- 具体步骤如下图:
- ①跟②是选择对应的开发板型号跟端口
- ③编译烧录
- ④烧录完成

ESP32示例
环境搭建
- Arduino环境搭建参考:点击查阅
- Micropython环境搭建参考:点击查阅
- 烧录Micropython的固件需要使用对应ESP32开发板的,我这边用的ESP32S3的,并存放在此处:*\LCD1602_I2C_Module_Demo\esp32\python\bin
硬件连接
连接ESP32的时候,选择用4PIN排线连接,请参考下方的引脚对应表格
使用的是排针或者PH2.0 4PIN接口,需要对照以下表格连线
ESP32连接引脚对应关系
| LCD | ESP32 | ESP32 |
|---|---|---|
| 引脚编号 | ||
| VCC | 5V/3.3V | |
| GND | GND | |
| SCL | GPIO5 | |
| SDA | GPIO4 |
以LCD1602 Module使用的是PH2.0 4PIN接口为例,对照上述表格连接在ESP32上即可: (请按照引脚定义表格连接,图中排线颜色仅供参考,以实际颜色为准。)
接入ESP32 如下图。

使用示例
Arduino-ESP32
【安装库】
- 进入到*\LCD1602_I2C_Module_Demo\esp32\arduino的文件夹中,将里面的文件复制到项目文件夹的 libraries 文件夹下,若还是不太清楚,可以参考此链接
【运行示例】
- 使用 Arduino IDE 打开*\LCD1602_I2C_Module_Demo\esp32\arduino\Waveshare_LCD1602\examples文件中的示例文件
- 具体步骤如下图:
- ①跟②是选择对应的开发板型号跟端口
- ③编译烧录
- ④烧录完成

Micropython
【烧录Micropython固件】
-
从Micropython官网中下载对应固件
-
如果用的ESP32S3,可以直接用我们提供的固件,路径:
*\LCD1602_I2C_Module_Demo\esp32\python\bin -
烧录固件教程,详见:Flash固件的烧录与擦除教程
-
注意:下载地址是0x00
【保存驱动库】
- 打开Thonny,连接esp32设备
- 打开*\LCD1602_I2C_Module_Demo\Pico\python\lib文件中的LCD1602.py文件,并另存为esp32中
- 具体步骤如下图:

【运行示例】
- 使用thonny打开*\LCD1602_I2C_Module_Demo\Pico\python\examples文件中的示例文件,按照下图运行即可:

Jetson nano使用
- 准备好能正常启动的jetson nano,如果没有启动,请参考开机教程
硬件连接
连接Jetson nano的时候,选择用4PIN排线连接,请参考下方的引脚对应表格
使用的是排针或者PH2.0 4PIN接口,需要对照以下表格连线
Jetson nano连接引脚对应关系
| LCD | Jetson nano | Jetson nano |
|---|---|---|
| Board物理引脚序号 | ||
| VCC | 3.3V | |
| GND | GND | |
| SCL | 5 | |
| SDA | 3 |
以LCD1602 Module使用的是PH2.0 4PIN接口为例,对照上述表格连接在Jetson nano上即可: (请按照引脚定义表格连接,图中排线颜色仅供参考,以实际颜色为准。)
接入Jetson nano 如下图。

使用示例
【安装库并下载程序】
-
python3
sudo apt install python3-smbus -
python2
sudo apt install python-smbus
-
下载程序并解压编译
cd ~wget https://files.waveshare.net/wiki/LCD1602%20I2C%20Module/LCD1602_I2C_Module_Demo.zipunzip LCD1602_I2C_Module_Demo.zipcd ~/LCD1602_I2C_Module_code/Jetson Nano/python/examples
【运行 Character display 示例】
-
Character display
sudo python Character_display.py
【运行 Custom char 示例】
-
Custom char
sudo python Custom_char.py
【运行 Direction control 示例】
-
Direction control
sudo python Direction_control.py
【运行 Display time 示例】
-
Display time
sudo python Display_time.py
【运行 Scroll display 示例】
-
Scroll display
sudo python Scroll_display.py