“实验三十二:LCD1602 IIC显示实验”的版本间的差异

来自丢石头百科
第86行: 第86行:
 
}
 
}
 
  </pre>
 
  </pre>
 
 
  
 
=== LCD显示 ===
 
=== LCD显示 ===
第121行: 第119行:
 
=== 电路连接 ===
 
=== 电路连接 ===
 
*
 
*
交通灯模块 Raspberrypi
+
LCD1602 LCD1602 IIC模块 Raspberrypi
BCM编号 物理引脚序号
+
BCM编号 物理引脚序号
R GPIO2 3
+
GND GND VCC 3.3V 3.3V
Y GPIO3 5
+
VCC VCC
G GPIO4 7
+
VO VO
GND GND GND
+
RS RS
 
+
RW RW SCL SCL 5
 +
EN EN
 +
D0 D0
 +
D1 D1
 +
D2 D2 SDA SDA 3
 +
D3 D3
 +
D4 D4
 +
D5 D5
 +
D6 D6 GND GND GND
 +
D7 D7
 +
K K
 +
A A
 
=== 程序运行 ===
 
=== 程序运行 ===
 
==== Python ====
 
==== Python ====
第150行: 第159行:
 
</pre>
 
</pre>
 
*关闭树莓派。断电情况下,根据提供的电路连接将对应模块接入电路,启动树莓派
 
*关闭树莓派。断电情况下,根据提供的电路连接将对应模块接入电路,启动树莓派
 +
*查询LCD1602的地址
 +
<pre>
 +
ls /dev/i2c-*
 +
sudo i2cdetect -y 1               
 +
</pre>
 +
 
*下载树莓派参考例程,将文件解压后拷贝放在用户名目录下,运行
 
*下载树莓派参考例程,将文件解压后拷贝放在用户名目录下,运行
 
<pre>
 
<pre>

2024年12月4日 (三) 11:35的版本

模块说明

对比度调节

  • 通过蓝色电位器调节对比度,蓝色电位器朝上,顺时针减弱,逆时针增强。其中:
    • 电位器顺时针选择到底,显示:
    • 电位器逆时针选择到底,显示:
  • 当调节电位器至合适位置后,显示如下情况时:
    • 检查接线是否松动
    • 检查IIC设备地址是否设置正确
    • 检查初始化程序是否正确

背光选择

  • 可通过一位拨码开关设置是否带背光灯。
    • 拨码开关拨向ON时,打开背光
    • 拨码开关拨向OFF时,关闭背光

地址选择

  • 设备地址可通过三位拨码开关A0、A1、A2进行修改,具体如下:

A2 A1 A0 IIC地址 十六进制 十进制 0 0 0 0x20 32 0 0 1 0x21 33 0 1 0 0x22 34 0 1 1 0x23 35 1 0 0 0x24 36 1 0 1 0x25 37 1 1 0 0x26 38 1 1 1 0x27 39

Arduino

电路连接

LCD1602 LCD1602 IIC模块 Arduino UNO R3 GND GND VCC VCC VCC VCC VO VO RS RS RW RW SCL SCL

EN EN D0 D0 D1 D1 D2 D2 SDA SDA

D3 D3 D4 D4 D5 D5 D6 D6 GND GND D7 D7 K K A A


扫描设备IIC地址

实验现象

  • 串口打印PCF8574的地址

主要程序

//LingShun lab
#include <Wire.h> 
#include <LiquidCrystal_I2C.h> //引用I2C库
 
LiquidCrystal_I2C lcd(0x20,16,2);  //此处修改IIC地址
 
void setup()
{
  lcd.init();                  // 初始化LCD
  lcd.backlight();             //设置LCD背景等亮
}
 
void loop()
{
  lcd.setCursor(0,0);                //设置显示指针
  lcd.print("LCD1602 iic Test");     //输出字符到LCD1602上
  lcd.setCursor(0,1);
  lcd.print("      by DIUSTOU");
  delay(1000);
}
 

LCD显示

实验现象

  • LCD1602第一行显示LCD1602 iic Test
  • LCD1602第二行显示by Diustou

主要程序

//LingShun lab
#include <Wire.h> 
#include <LiquidCrystal_I2C.h> //引用I2C库
 
LiquidCrystal_I2C lcd(0x20,16,2);  //此处修改IIC地址
 
void setup()
{
  lcd.init();                  // 初始化LCD
  lcd.backlight();             //设置LCD背景等亮
}
 
void loop()
{
  lcd.setCursor(0,0);                //设置显示指针
  lcd.print("LCD1602 iic Test");     //输出字符到LCD1602上
  lcd.setCursor(0,1);
  lcd.print("      by DIUSTOU");
  delay(1000);
}

树莓派

电路连接

LCD1602 LCD1602 IIC模块 Raspberrypi BCM编号 物理引脚序号 GND GND VCC 3.3V 3.3V VCC VCC VO VO RS RS RW RW SCL SCL 5 EN EN D0 D0 D1 D1 D2 D2 SDA SDA 3 D3 D3 D4 D4 D5 D5 D6 D6 GND GND GND D7 D7 K K A A

程序运行

Python

  • 安装gpiozero库
    • 可以使下面命令来安装该库
sudo apt update
sudo apt install python3-gpiozero
  • 其它树莓派上的系统可以使下面命令来安装该库:
sudo pip3 install gpiozero
  • 运行以下语句可以查看树莓派GPIO口定义
pinout
  • 打开IIC接口
sudo raspi-config
选择Interfaces oOptions -> I2C -> “Would you like the ARM I2C interface to be enabled?”选择Yes -> “The ARM I2C interface isenabled” 选择OK -> 选择finish
  • 关闭树莓派。断电情况下,根据提供的电路连接将对应模块接入电路,启动树莓派
  • 查询LCD1602的地址
ls /dev/i2c-*
sudo i2cdetect -y 1                
  • 下载树莓派参考例程,将文件解压后拷贝放在用户名目录下,运行
cd raspberrypi/32/python_gpiozero
python Display.py
  • 此时可看见树莓派在正确运行程序,若想退出,按ctrl+C即可
  • 更多指令请查看gpiozero文档

例程下载

相关例程

Arduino和树莓派基础实验套件例程
教程名2
  • 列表2
教程名3
  • 列表3
教程名4
  • 列表4
教程名5
  • 列表5
教程名6
  • 列表6