Arduino-1602-LiquidCrystal库
前言:LiquidCrystal是一个1602的IIC库,使用IIC协议可以极大节约用线数量,十分方便。当然,前提是1602要使用LCD1602 I2C模块。
一、库函数快速查询
- LiquidCrystal() //构造函数
- begin() //指定显示屏尺寸
- clear() //清屏并将光标置于左上角
- home() //将光标置于左上角(不清屏)
- setCursor() //将光标置于指定位置
- write() //(在光标处)显示一个字符
- print() //显示字符串
- cursor() //显示光标(就是一个下划线)
- noCursor() //不显示光标
- blink() //光标闪烁(和8,9一起使用时不保证效果)
- noBlink() //光标不闪烁
- noDisplay() //关闭显示,但不会丢失内容
- display() //(使用noDisplay后)恢复显示
- scrollDisplayLeft() //将显示的内容向左滚动一格
- scrollDisplayRight() //将显示的内容向右滚动一格
- autoscroll() //打开自动滚动
- noAutoscroll() //关闭自动滚动
- leftToRight() //从左向右显示内容(默认)
- rightToLeft() //从右向左显示内容
- createChar() //创造字符
二、库函数详细释义
2.1 LiquidCrystal()
内容:
构造函数,创建一个LiquidCrystal的实例(LiquidCrystal是一个类)。可使用4线或8线方式作为数据线(请注意,还需要指令线).若采用四线方式,将d0-d3悬空不连接.RW引脚可接地而不用接在Arduino的某个引脚上;如果这样接,省略在函数中的rw参数.
语法:
LiquidCrystal(rs, enable, d4, d5, d6, d7)
LiquidCrystal(rs, rw, enable, d4, d5, d6, d7)
LiquidCrystal(rs, enable, d0, d1, d2, d3, d4, d5, d6, d7)
LiquidCrystal(rs, rw, enable, d0, d1, d2, d3, d4, d5, d6, d7)
参数设置:
rs: rs连接的Arduino的引脚编号
rw: rw连接的Arduino的引脚编号
enable:enable连接的Arduino的引脚编号
d0, d1, d2, d3, d4, d5, d6, d7: 连接的Arduino的引脚编号
例子:
#include <LiquidCrystal.h>LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2); void setup() {lcd.print("hello, world!"); }void loop() {}
2.2 begin ()
内容:
指定显示屏的尺寸(宽度和高度)。
语句:
lcd.begin(cols, rows)
参数设置:
lcd: 液晶类型的名称变量
cols: 显示器可以显示的列数(1602是16列)
rows: 显示器可以显示的行数(1602是2行)
2.3 clear ()
简介:
清除LCD屏幕上内容,并将光标置于左上角。
语法:
lcd.clear()
参数:
lcd:LiquidCrystal类的对象
2.4 home()
内容:
将光标定位在屏幕左上角. 就是说,接下来的字符从屏幕左上角开始显示.如果同时要清除屏幕上的内容,请使用clear()函数代替.
语法:
lcd.home()
参数设置:
lcd: LiquidCrystal类的对象
2.5 setCursor()
简介:
将光标定位在特定的位置。
语法:
lcd.setCursor(col, row)
参数:
lcd:LiquidCrystal类的对象
col: 你要显示光标的列 (从0开始计数)
row: 你要显示光标的行 (从0开始计数)
2.6 write()
简介:
向LCD写一个字符。
语法:
lcd.write(data)
参数:
lcd: LiquidCrystal类的对象
data: 你要显示的字符(仅限英文、数字和自定义字符)。
返回值:
byte //write() 将返回写入的字节数,虽然读这个数字是可选
示例:
#include <LiquidCrystal.h>LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);void setup() {Serial.begin(9600); }void loop() {if (Serial.available()) {lcd.write(Serial.read());} }
2.7 print()
内容:
将文本显示在LCD上.
语法:
lcd.print(data)
lcd.print(data, BASE)
参数:
lcd: 液晶类型的名称变量
data:要显示的数据,可以是char, byte, int, long或者string类型的
BASE (optional): 数制(可选),BIN,DEC,OCT,HEX分别将数字以二进制,十进制,八进制,十六进制方式显示出来.
返回值:
byte //这个返回值通常是用不到的
示例:
#include <LiquidCrystal.h>LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);void setup() {lcd.print("hello, world!"); }void loop() {}
2.8 cursor()
内容:
显示光标(光标所在的位置, 就是下一个字符将会被显示的位置)。
语法:
lcd.cursor()
参数设置:
lcd: 液晶类型的名称变量
2.9 noCursor()
内容:
隐藏光标。
语法:
lcd.noCursor()
参数:
lcd: 液晶类型的名称变量
2.10 blink()
内容:
显示闪烁的光标。如果和cursor()一起使用,最终结果将取决于您使用的LCD屏幕.
语法:
lcd.blink()
参数设置:
lcd: 液晶类型的名称变量
2.11 noBlink()
内容:
关闭 光标闪烁功能.
语句:
lcd.noBlink()
参数设置:
lcd: 液晶类型的名称变量
2.12 noDisplay()
内容:
关闭液晶显示,但原先显示的内容不会丢失. 可使用display()恢复显示.
语法:
lcd.noDisplay()
参数:
lcd: 液晶类型的名称变量
2.13 display()
简介:
调用noDisplay()隐藏LCD上显示内容后,调用本函数恢复显示.
语法:
lcd.display()
参数:
lcd: 液晶类型的名称变量
2.14 scrollDisplayLeft()
简介:
使屏幕上内容(光标及文字)向左滚动一个字符。
语法:
lcd.scrollDisplayLeft()
参数:
lcd: 一个LiquidCrystal类的对象
2.15 scrollDisplayRight()
简介:
使屏幕上内容(光标及文字)向右滚动一个字符。
语法:
lcd.scrollDisplayRight()
参数:
lcd: 一个LiquidCrystal类的对象
2.16 autoscroll()
简介:
打开液晶显示屏的自动滚动,将会使得当一个字符输出到LCD时,令先前的文本移动一个位置.如果当前写入方向为由左到右(默认方向),文本向左滚动.反之,文本向右滚动.它的功能可以理解为,当输出单个字符时,会使得字符总是输出在LCD上的同一个位置.
语法:
lcd.autoscroll()
参数:
lcd: a variable of type LiquidCrystal
2.17 noAutoscroll()
简介:
关闭自动滚动功能。(后输入的字符可能无法显示)
语法:
lcd.noAutoscroll()
参数:
LCD:LiquidCrystal类的对象
2.18 leftToRight()
内容:
默认的方向,将文本从左到右写入屏幕.这意味着,后续字符的显示将是从左向右的,但是这不会影响先前已经显示的字符.
语法:
lcd.leftToRight()
参数设置:
lcd: a variable of type LiquidCrystal
2.19 rightToLeft()
简介:
设置文本写入LCD的方向为从右向左(默认是从左向右)。这意味着,后续字符将会由右至左写入,但不影响先前的文本的显示。
语法:
lcd.rightToLeft()
参数:
lcd: 一个LiquidCrystal类的对象
2.20 createChar()
内容:
创建用户自定义的字符.共可创建8个用户自定义字符,编号从0到7.字符外观由一个8字节数组定义,每行占用一个字节.最低的5个有效位决定像素点所在的行.若要在屏幕显示自定义字符,请使用write()函数.(参数为字符的编号0-7)
语法:
lcd.createChar(num, data)
参数设置:
lcd: a variable of type LiquidCrystal
num: 所创建字符的编号(0-7)
data: 字符的像素数据
例子:
#include <LiquidCrystal.h>LiquidCrystal lcd(12, 11, 5, 4, 3, 2);byte smiley[8] = { //1表示亮,0表示不亮,此例显示一个笑脸 B00000,B10001,B00000,B00000,B10001,B01110,B00000, };void setup() {int x=1; //x可以为0~7的任何数字lcd.createChar(x , smiley); //将x号字符设置为smiley数组表示的样子lcd.begin(16, 2); lcd.write(x); }void loop() {}
参考自:https://www.cnblogs.com/Dumblidor/p/5394302.html
和https://wenku.baidu.com/view/f0551a3deefdc8d376ee327d.html
-END-
转载于:https://www.cnblogs.com/chendeqiang/p/10324463.html
Arduino-1602-LiquidCrystal库相关推荐
- 手把手教你看懂并理解Arduino PID控制库——调参改变
2019独角兽企业重金招聘Python工程师标准>>> 引子 本文将分析<手把手教你看懂并理解Arduino PID控制库>中第三个问题:PID控制参数突变对系统的影响. ...
- arduino红外遥控库IRremote的IRsend类sendRaw函数溢出问题及其解决方法
arduino红外遥控库IRremote的IRsend类sendRaw函数溢出问题及其解决方法 参考文章: (1)arduino红外遥控库IRremote的IRsend类sendRaw函数溢出问题及其 ...
- Arduino ESP32 第三方库读取SD卡信息(三)
Arduino ESP32 第三方库读取SD卡信息(三) 相关篇<Arduino ESP32 第三方库读取SD卡信息(一)> <Arduino ESP32 第三方库读取SD卡信息(二 ...
- 0021 arduino iic i2c 实例讲解 TWI是什么 arduino 的 iic 库 i2c库 arduino Wire 库
目录 I2C介绍 TWI 介绍 arduino 的iic库 下一讲,具体例子 I2C介绍 I2C 是一种简单.双向二线制同步串行总线.它只需要两根线即可在连接于总线上的器件之间传送信息.简单说就是 只 ...
- 基于Arduino平台dmp库+匿名四轴上位机测试MPU6050
基于Arduino平台dmp库+匿名四轴上位机测试MPU6050
- Arduino UNO使用库实现步进电机指定角度旋转
Arduino UNO使用库实现步进电机指定角度旋转 步进电机和驱动器相关的资料 https://pan.baidu.com/s/1udb4MyEOXk4CTO7TKRHj6w 提取码: fuea 步 ...
- arduino安装esp8266库
给arduino安装esp8266库 开发板的一个好处就是板子设计者已经给初学者排查了硬件连接错误,可以使初学者专注于软件开发,加快学习进度.目前比较火的一款ESP8266开发板就是NodeMcu,其 ...
- Arduino WString.h库功能函数详细介绍
Arduino WString.h库功能函数详细介绍 在Arduino开发框架下,String是一个很重要的数据类型.
- 【工具】更新arduino最新esp8266库离线安装包3.0.1、ESP32库离线安装包1.0.6,库编译报错解决方法...
公众号关注 "DLGG创客DIY" 设为"星标",重磅干货,第一时间送达. 210806更新ESP32和ESP8266最新离线安装包下载地址. 因为各种 ...
- arduino 步进电机驱动库_一文看懂arduino驱动uln2003操作步进电机的方法
arduino驱动uln2003操作步进电机的方法 1.网上买的步进电机,很多接线顺序都不对.经过不懈努力查资料,终于找到了能用的接线方式: 电机上的12345针脚,对应着接线端子的42135. 2. ...
最新文章
- 案例分析:免费的维护服务
- componentsJoinedByString 和 componentsSeparatedByString 的方法的区别
- java读写锁死锁例子_Java并发关于重入锁与读写锁的详解
- 如何基于数据快速构建用户模型(Persona)?
- wpf之默认窗口模板研究
- 同一个路由器下的不同网段如何实现ping通
- unity灯光Lightmapping、LightProbes
- echarts无数据时显示无数据_无服务器数据库竞技,哪家云服务落伍了?
- 虹科和ELPRO推出符合GxP标准的自助式温度分布验证套装
- 元胞自动机模型01——认识元细胞机模型
- win7剪切板_Win7系统打开剪切板windows找不到clipbrd.exe文件如何解决?
- 金仓数据库KingbaseES的连接方法
- termux搭建局域网web服务器
- 40 《创新公司:皮克斯的启示_上》 -豆瓣评分8.7
- python归一化 增大差异_python-面向对象进阶
- 3. 工业大数据的创新价值
- 四、redi性能测试、协议、事务
- Buy and Resell
- 人才太缺!神州优车明修开放平台暗圈AI人才(附自动驾驶思路)
- C++基础用法—冒号的用法
热门文章
- 学习用于视觉跟踪的深度紧凑图像表示Learning a Deep Compact Image Representation for Visual Tracking
- android TextView属性汇总
- cr全称是什么意思_魔兽世界CR是团灭的意思 他的全称是什么呢?
- creo 根据点坐标文件创建样条曲线
- 如何使用使用PS批量制作字幕
- 如何在阿里云国际上设置邮箱主机
- C语言根号下的书写方法
- FTA故障树分析法-DFMEA的另外一张脸
- 计算机绘图 精品课程,机械制图与计算机绘图精品课程建设与成效.doc
- PhotoShop cc 2017安装 zeplin插件