arduino 的显示——LCD1602、LiquidCrystal库的使用

本文详细介绍了如何使用LCD1602显示屏与Arduino进行连接,包括引脚说明、初始化函数、对比度与背光调节,并列举了一系列常用功能如清屏、设置光标、打印等的使用方法。示例代码展示了如何在LCD1602上显示文本和实时数据。
摘要由CSDN通过智能技术生成

因为像素比较低,只有5X8,所以千万别大费周章的去寻找LCD1602如何显示中文 哈哈

跟OLED相比刷新率很高,但是显示的内容就没有OLED多样了。

示例代码在最后,建议按顺序看

目录

1.1 使用配件

1.2 1602LCD与arduino的连接 

1>引脚说明

         2>初始化函数

3>对比度、背光灯的调节

1.3 显示屏的使用

1> clear();

2> home();

3> setCursor();

4> write();

5> print();

6> cursor();

7> noCursor();

8> blink();

9> noBlink();

10> noDisplay();

11> display();

12> scrollDisplayLeft();

13> scrollDisplayRight();

14> autoscroll();

15> noAutoscroll();

16> leftToRight();

17> rightToLeft();

18> createChar();

示例代码


1.1 使用配件

只需要一个1602LCD,与一块arduino板! 

1.2 1602LCD与arduino的连接 

1>引脚说明

序号引脚说明
1GND电源地
2VDD电源5V
3

V0

对比度调整。电压越大,对比度越小
4RS数据/命令  选择
5RW读/写选择
6E使能信号,电平由高到低时执行命令
7-14D0-D78位双向数据线
15BLALCD背光电源正极
16BLKLCD背光电源负极

2>初始化函数

  • LiquidCrystal();

语法:

要在setup函数之前使用

使用四个引脚传输数据时:

LiquidCrystal(RS,E,D4,D5,D6,D7);

或者也可以加上   RW   可以不接

LiquidCrystal(RS,RW,E,D4,D5,D6,D7);

使用八个引脚传输数据时:

LiquidCrystal(RS,E,D4,D5,D6,D7);

或者也可以加上   RW   可以不接

LiquidCrystal(RS,RW,E,D0,D1,D2,D3,D4,D5,D6,D7);

RS,RW,E,D0,D1,D2,D3,D4,D5,D6,D7        可以连接到arduino 的 digital 引脚

例如:

LiquidCrystal lcd(rs,rw,enable,d4,d5,d6,d7);

  • begin();

语法:lcd.begin(列数,行数);                

16 02 LCD        16为列数,02为行数

3>对比度、背光灯的调节

方法很简单,只要将V0(对比度调节)与BLA(背光灯亮度调节)arduinopwm引脚连接即可。

通过调整pwm值,来控制V0的电压,与BLA的电压。

建议 V0 的初始值为100,BLA 的初始值为 50 即可

1.3 显示屏的使用

1> clear();

功能:清屏并将光标定位置左上角。

语法:lcd.clear();

2> home();

功能:光标复位。将光标定位置左上角。

语法:lcd.home();

3> setCursor();

功能:设置光标位置。

语法:lcd.setCursor(列数,行数);

注意:第一行的行数为0;第一列的列数为0.

4> write();

功能:输出一个字符到LCD上。每输出一个字符光标后退一格。

语法:lcd.write(要显示的字符);

返回值:输出的字符数;

5> print();

功能:将文本输出到LCD上。每输出一个字符光标后退一格。

语法:lcd.print(要显示的数据);        或者        lcd.print(要显示的数据,输出的进制形式);

输出的进制形式(BASE)有以下几种:

  1. BIN(二进制);
  2. DEC(十进制);
  3. OCT(八进制);
  4. HEX(十六进制);

6> cursor();

功能:显示光标。在当前的光标的位置会显示一条下划线。

语法:lcd.cursor();

7> noCursor();

功能:关闭显示光标。

语法:lcd.noCursor();

8> blink();

功能:开启光标闪烁,要先使用cursor显示光标。

语法:lcd.blink();

9> noBlink();

功能:关闭光标闪烁

语法:lcd.noBlink();

10> noDisplay();

功能:关闭lcd的显示功能,但是不会删除储存的内容。

语法:lcd.noDisplay();

11> display();

功能:打开lcd的显示功能。

语法:lcd.display();

12> scrollDisplayLeft();

功能:向左滚屏,将lcd的内容向左移动一格。

语法:lcd.scrollDisplayLeft();

13> scrollDisplayRight();

功能:向右滚屏,将lcd的内容向右移动一格。

语法:lcd.scrollDisplayRight();

14> autoscroll();

功能:自动滚屏。

语法:lcd.autoscroll();

15> noAutoscroll();

功能:关闭自动滚屏。

语法:lcd.autoscroll();

16> leftToRight();

功能:设置文本的输出方向为从左到右。

语法:lcd.leftToRight();

17> rightToLeft();

功能:设置文本的输出方向为从右到左。

语法:lcd.rightToLeft();

18> createChar();

功能:创建自定义的5X8像素的自定义字符,输出时使用write();函数

语法:lcd.createChar();

示例代码

下面是库文件的示例代码,我对其进行一点点的修改并翻译了注释:

/*
  LiquidCrystal Library - Hello World

演示了使用16x2液晶显示器。的LiquidCrystal库与所有LCD显示兼容

这张草图将“Hello World!”打印到液晶显示屏上
并显示时间。

 Library originally added 18 Apr 2008
 by David A. Mellis
 library modified 5 Jul 2009
 by Limor Fried (http://www.ladyada.net)
 example added 9 Jul 2009
 by Tom Igoe
 modified 22 Nov 2010
 by Tom Igoe
 modified 7 Nov 2016
 by Arturo Guadalupi

 此示例代码位于公共域中。

 http://www.arduino.cc/en/Tutorial/LiquidCrystalHelloWorld

*/

//包含库代码:
#include <LiquidCrystal.h>
//通过关联任何需要的LCD接口引脚来初始化库与arduino pin号连接

//一般先定义各自的引脚
int contrast = 2, backlight = 3, rs = 22, rw = 23, enable = 24, d4 = 25, d5 =26, d6 = 27, d7 = 28;
LiquidCrystal lcd(rs,rw,enable,d4,d5,d6,d7);

void setup() {

  pinMode(backlight,OUTPUT);//初始化背光与对比度pwm引脚
  pinMode(contrast,OUTPUT);

  digitalwrite(backlight,50);//设置背光与对比度数据;
  digitalwrite(contrast,100);

  //设置LCD的列和行数:
  lcd.begin(16, 2);
  //输出信息到LCD。
  lcd.print("hello, world!");
}

void loop() {
//设置光标为列0,第1行
//(注意:第1行是第二行,因为计数从0开始):
  lcd.setCursor(0, 1);
  //输出重置后的秒数:
  lcd.print(millis() / 1000);
}

文章属与自创内容,

欢迎在评论区留言,

转载请标明出处,

感谢大家的支持。

好的,这是一个很常见的项目。首先,你需要将LCD1602A和18B20连接到Arduino Uno板上。你可以按照以下步骤进行操作: 1. 连接LCD1602A - 将LCD1602A的VSS引脚连接到Arduino的GND引脚 - 将LCD1602A的VDD引脚连接到Arduino的5V引脚 - 将LCD1602A的VO引脚连接到一个10K欧姆的变阻器,然后再将变阻器的中间引脚连接到Arduino的A0引脚 - 将LCD1602A的RS引脚连接到Arduino的数字引脚12 - 将LCD1602A的RW引脚连接到Arduino的GND引脚 - 将LCD1602A的E引脚连接到Arduino的数字引脚11 - 将LCD1602A的D4-D7引脚分别连接到Arduino的数字引脚5-8 2. 连接18B20 - 将18B20的VDD引脚连接到Arduino的5V引脚 - 将18B20的DQ引脚连接到Arduino的数字引脚2 - 将18B20的GND引脚连接到Arduino的GND引脚 完成以上连接后,你需要在Arduino IDE中安装OneWire和DallasTemperature。接下来,你可以使用以下代码进行测试: ``` #include <LiquidCrystal.h> #include <OneWire.h> #include <DallasTemperature.h> // 定义连接LCD1602A的引脚 LiquidCrystal lcd(12, 11, 5, 6, 7, 8); // 定义连接18B20的引脚 #define ONE_WIRE_BUS 2 OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); void setup() { lcd.begin(16, 2); lcd.print("Temperature:"); sensors.begin(); } void loop() { sensors.requestTemperatures(); float tempC = sensors.getTempCByIndex(0); lcd.setCursor(0, 1); lcd.print(tempC); lcd.print("C"); delay(1000); } ``` 这段代码会在LCD1602A上显示实时的温度值。你可以根据需要进行进一步的修改和优化。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

合五学子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值