因为像素比较低,只有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>引脚说明

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

V0

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

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 2008by David A. Mellislibrary modified 5 Jul 2009by Limor Fried (http://www.ladyada.net)example added 9 Jul 2009by Tom Igoemodified 22 Nov 2010by Tom Igoemodified 7 Nov 2016by 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);
}

文章属与自创内容,

欢迎在评论区留言,

转载请标明出处,

感谢大家的支持。

arduino 的显示——LCD1602、LiquidCrystal库的使用相关推荐

  1. 【Proteus仿真】Arduino UNO + PCF8563 +LCD1602时间显示

    [Proteus仿真]Arduino UNO + PCF8563 +LCD1602时间显示 Proteus仿真 所需库 Rtc_Pcf8563库 LiquidCrystal库 编译信息 使用 1.0 ...

  2. 【Proteus】Arduino UNO + DS1307+LCD1602时间显示

    [Proteus]Arduino UNO + DS1307+LCD1602时间显示 Proteus仿真演示 添加串口输出信息,只是为了方便调试时查看信息. 所需库 可以在Arduino IDE管理库( ...

  3. 【在线仿真】Arduino 超声波测距+LCD1602显示

    [在线仿真]Arduino 超声波测距+LCD1602显示 程序代码 /*LiquidCrystal Library - Hello WorldThis sketch prints "Hel ...

  4. Arduino框架下通过TFT_eSPI库驱动ESP32+合宙1.54“ 电子墨水屏(e-paper)显示

    Arduino框架下通过TFT_eSPI库驱动ESP32+合宙1.54" 电子墨水屏(e-paper)显示 demo演示效果 相关库 EPD_Libraries:https://github ...

  5. arduino 长传出错_请问Arduino IDE在编译时正常,却无法上传且显示找无效库是怎么回事?...

    开发板:"Arduino Nano atmega328p" 警告:库 Mozzi 中的分类 'audio' 不可用.设置为 'Uncategorized' 项目使用了 2750 字 ...

  6. 基于Arduino的显示测量环境数据设计

    题目: 基于Arduino的显示测量环境数据设计 目录 基于Arduino的显示测量环境数据设计... 3 第一章 课题任务... 4 1.1课题任务... 4 1.2任务分工... 4 1.3设计条 ...

  7. 【Proteus仿真】Arduino UNO+PCF8574+LCD1602+MPX4250电子秤

    [Proteus仿真]Arduino UNO+PCF8574+LCD1602+MPX4250电子秤 基于VSM Studio Proteus仿真演示 原理图 所需库 可以在Arduino IDE管理库 ...

  8. Arduino配置WS2812及Adafruit_NeoPixel库的使用

    1.WS2812     WS2812实物图如下所示: WS2812模块     WS2812的特点如下: WS2812智能外控集成LED 光源 主要特点: 控制电路与RGB芯片集成在一个5050封装 ...

  9. [arduino][u8g2][12864] oled—u8g2库使用说明(例子是12864液晶屏)

    [arduino][u8g2][12864] oled-u8g2库使用说明(例子是12864液晶屏) 首先说一下写这个文档的目的,一是给自己做个笔记来以备后边使,二是写个文档给大家看,我从网上找了很多 ...

  10. svg上传服务器无法显示,让WordPress支持上传SVG格式图片并显示在媒体库中的方法...

    让WordPress支持上传SVG格式图片并显示在媒体库中的方法 发布时间:2020-12-11 14:18:12 来源:亿速云 阅读:167 作者:小新 这篇文章将为大家详细讲解有关让WordPre ...

最新文章

  1. 我画了35张图就是为了让你深入 AQS
  2. 微信小程序实现滚动到指定位置
  3. 第七次团队作业——日不落战队
  4. php array分组,php数组分组简单例子
  5. LeetCode MySQL 1495. Friendly Movies Streamed Last Month
  6. Android之使用AlertDialog.Builder类创建带列表的对话框和带自己所布局视图的对话框
  7. Linux MTD子系统 _从模型分析到Flash驱动模板
  8. security工作笔记003---SpringSecurity框架启动报错.bcrypt.BCryptPasswordEncoder‘ that could not be found.
  9. 微软Tech·Ed与中国IT行业一同成长
  10. 判别模型和生成模型(Discriminative Model Generative Model)【转】
  11. php 怎样让 键 值 反转,PHP 控制和反转
  12. python turtle画房子详细解释_简述python的turtle绘画命令及解释
  13. 行为识别TSM训练ucf101数据集
  14. 武汉计算机管理学校,武汉这个区优质初中“多校划片”电脑派位入学,有你家娃想上的学校吗?...
  15. 基于C++的钻石金字塔问题算法设计
  16. 【更新】CVE-2020-0796:微软紧急发布SMBv3协议“蠕虫级”漏洞补丁通告
  17. 被迫营业:如何使用向日葵进行远程桌面控制(含MacOS)
  18. vue2中h(“router-view“) vue3如何写?
  19. 泛型的基础 装箱拆箱
  20. 计算机组成原理ACC中文含义,计算机组成原理 作业一

热门文章

  1. 南航计算机学院考研的专业课,【南航计算机考研】南航计算机考研经验贴
  2. 怎么在中国杀死SAP
  3. 调节汉化版Eclipse的字体大小
  4. 论开学第二个月干了点啥
  5. OpenCV Mat类的convertTo函数,数据类型转换
  6. ActiveMQ的下载安装与操作示例
  7. MapGuide/AIMS在台湾?
  8. Python3,为了“娑娜“,我花费3分钟把lol所有的英雄都下载了。
  9. pe系统服务器怎么做双盘备份,群晖硬盘版引导二合一启动盘 丢掉U盘小尾巴
  10. 解决无线路由器无法进行账号认证上网的问题