功能介绍

LCD1602液晶显示器是广泛使用的一种字符型液晶显示模块。它是由字符型液晶显示屏(LCD)、控制驱动主电路HD44780及其扩展驱动电路HD44100,以及少量电阻、电容元件和结构件等装配在PCB板上而组成。不同厂家生产的LCD1602芯片可能有所不同,但使用方法基本都是一样的。标准的LCD1602显示器可以显示16x2个字符(不能显示汉字),每个字符分辨率为5x7像素,可显示的字符库已经集成在LCD1602模块内部,可以直接调用显示,无需再制作字库。LCD1602显示器为16引脚的显示器,包含了供电、数据线、控制线、背光控制以及对比度调节引脚。LCD1602显示模块如图3.21.1所示。
image.png
图3.21.1LCD1602显示器实物图
由于Arduino的引脚资源比较紧张,所以使用LCD1602时通常都会配合IIC接口的LCD1602转接板来使用,这样就只需要两个引脚就能完成LCD1602显示器的显示。IIC接口LCD1602转接板实物图如图3.21.2所示。左侧跳线帽设置是否连接背光电源。插上跳线帽为连接背光电源,拔掉跳线帽为断开背光电源。旋转蓝色电位器可以调节显示对比度,顺时针增强,逆时针减弱。因为是采用IIC通信方式,所以转接板有IIC通信地址,默认地址为0x27,可以通过短路转接板上的A0/A1/A2焊点来修改设备地址,具体操作请参考厂家的使用说明书。
image.png
图3.21.2 IIC接口LCD1602转接板实物图

接线说明

Arduino LCD1602显示模块 说明
VCC/+/5V VCC/+/5V 供电引脚
GND/G/- GND/G/- 电源地线
A4 SDA IIC接口的数据线
A5 SCL IIC接口的时钟线

使用说明:

1.参照接线说明完成电路的连接,注意供电引脚不能接反,不然会烧毁电路。连接完电路后,此时通电,如果左侧的背光电源跳线帽是连接的,则LCD上将会亮起背光电源。通常情况下,此时在LCD1602显示屏的下面一行将会显示一行黑色的小方格,如果没有,则需要用螺丝刀左右调节蓝色的电位器,直到显示黑色小方格为止。调节时需要轻缓操作,只需要调节到明显看见黑色方格就好。
2(a). Arduino 编程
使用Arduino IDE编程时,需要用到第三方库文件。在此推荐使用LiquidCrystal_I2C来驱动。在工具菜单中的“库管理器”中搜索LiquidCrystal_I2C使用。搜索到后直接安装即可使用。安装完成后可在IDE中的“文件”—>“示例”—>“第三方库”中打开示例程序,下面的参考程序就是示例程序中的“Hello world”。
2(b). Mixly 编程
使用Mixly图形化编程时,LCD1602的程序模块库在“显示器”—>“LCD液晶屏”下,展开后可以看到如图3.21.3 所示的几个程序模块。其中,前两程序块是用来设置LCD1602的驱动方式的,第一个有设备地址的程序块是通过IIC转接板来驱动的LCD1602屏,第二个需要设置6个引脚的程序块,是通过Arduino直接驱动LCD1602。因为前面我们介绍的硬件电路时采用的是IIC转接板驱动方式,所以编程时需要采用第一个程序块来完成LCD的设置,我们也推荐用IIC转接板的方式来驱动,毕竟Arduino的引脚资源那么有限。
image.png
图3.21.3 LCD1602显示屏程序模块库

参考程序:

Arduino参考程序:

  1. #include <Wire.h>
  2. #include <LiquidCrystal_I2C.h>
  3. //创建一个LCD对象,对象地址是0x27,每行16个字符,一共2行
  4. LiquidCrystal_I2C lcd(0x27,20,4);
  5. void setup()
  6. {
  7. lcd.init(); // 初始化LCD1602
  8. lcd.init();
  9. // Print a message to the LCD.
  10. lcd.backlight(); //开启背光
  11. lcd.setCursor(3,0);
  12. lcd.print("Hello, world!");
  13. lcd.setCursor(0,2);
  14. lcd.print("Arduino LCM IIC 2004");
  15. }
  16. void loop()
  17. {
  18. }

Mixly参考程序:

image.png
以上参考程序只是实现了简单的字符串显示,在实际运用中更多时候需要显示变量、常量数字等字符,显示方式都大同小异,都可以在示例程序和程序模块库中找到对应的函数使用。
为了大家更好的运用LCD1602完成项目,现简单概述LCD1602的使用方法。LCD1602可显示ASSIC表中的可见字符内容。可显示的范围是两行,每行16个字符,可同时显示16X02即32个字符,这也是此显示屏型号为什么叫做1602的原因。在实际的显示运用中,首先需要写入需要显示的地址,再写入需要显示的字符,这也LCD1602就会在对应的位置显示出对应的字符了。需要注意的是,显示出来的字符将会一直保持显示到下一次有新的显示字符写入,所以,在刷新后不需要显示的位置,需要写入“空”显示,覆盖上一次的显示字符。
通过图形化编程中的程序块我们可以知道,LCD1602还支持多个IO口连接驱动显示,只是这种驱动方式需要更多的Arduino引脚来控制。需要通过此方法来实现控制,就需要知道LCD1602显示屏上的各个引脚的名称以及实际运用的电路连接图。LCD1602的各个引脚的名称如图3.21.4所示,各引脚的功能介绍如表3.21.1所示,在此将给出LCD1602通过直接IO口驱动的电路连接图,如图3.21.5所示。
image.png
图3.21.4 LCD1602 各引脚名称标注图

表3.21.1 LCD1602 各引脚名称及功能介绍表

序号 引脚 名称及功能
1 1 GND为电源地
2 2 VCC接5V电源正极
3 3 V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生重影,使用时可以通过一个10K的电位器调整对比度)
4 4 RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器
5 5 RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作
6 6 E(或EN)端为使能(enable)端,高电平(1)时读取信息,负跳变时执行指令
7 7-14 D0~D7为8位双向数据端
8 15 背光正极
9 16 背光负极

image.png
图3.21.5 LCD1602 IO引脚直接驱动电路连接图