arduino输出显示(LCD部分)深圳技师学院肖明耀ArduinoLCD控制•了解液晶显示器1602LCD•应用1602LCD显示数据•制作LCD电压表液晶显示器1602LCD•液晶(LiquidCrystal)是一种高分子材料,因为其特殊的物理、化学、光学特性,20世纪中叶开始广泛应用在轻薄型显示器上。•液晶显示器(LiquidCrystalDisplay,LCD)的主要原理是以电流刺激液晶分子产生点、线、面并配合背光灯管构成画面。为简述方便,通常把各种液晶显示器都直接叫做液晶。•各种型号的液晶通常是按照显示字符的行数或液晶点阵的行、列数来命名的。例如:1602的意思是每行显示16个字符,一共可以显示两行。1602液晶的端口定义RAM地址映射图液晶显示器1602LCD的使用•液晶显示器1602LCD的接线方式有两种,分别是8位数据线方式和4位数据线方式。•8位数据线方式使用D0~D7传输数据,传输速度快,但要使用较多的arduino引脚,4位数据线方式,使用D4~D7传输数据。•在液晶显示器1602LCD的对比度调节端V0接一个电位器,调节对比度电压,用于控制1602LCD的对比度。LCD电路液晶驱动LiqudCrystal类库成员函数•函数LiquidCrystal()是LiquidCrystal类的构造函数,用于初始化LCD。需要根据所使用的接线方式来填写对应的参数。•语法:根据接线方式的不同,函数的使用方法也不同:•4位数据线接法的语法是:•LiquidCrystal(rs,enable,d4,d5,d6,d7)•LiquidCrystal(rs,rw,enable,d4,d5,d6,d7)•8位数据线接法的语法是:•LiquidCrystal(rs,enable,d0,dl,d2,d3,d4,d5,d6,d7)•LiquidCrystal(rs,rw,enable,d0,dl,d2,d3,d4,d5,d6,d7)•参数:•rs,连接到RS的Arduino引脚。•rw,连接到R/W的Arduino引脚(可选)。•enable,连接到E的Arduino引脚。•d0,dl,d2,d3,d4,d5,d6,d7,连接到对应数据线的Arduino引脚。begin()•函数begin()的功能是设置显示器的宽度和高度。•语法:lcd.begin(cols,rows);•参数:•lcd,LiquidCrystal类的实例化对象。•cols,LCD的列数。•rows,LCD的行数:这里使用1602LCD,因此设置为begin(16,2)即可。•返回值:无。clear()home()•clear()•函数clear()的功能是清屏。清除屏幕上的所有内容,并将光标定位到屏幕左上角位置。•语法:lcd.Clear()•参数lcd,LiquidCrystal类的对象。home()•函数home()功能是使光标复位。将光标定位到屏幕左上角位置。•语法:lcd.home()•lcd,LiquidCrystal类的对象。•返回值:无。setCursor()•函数setCursor()功能是设置光标位置。将光标定位在指定位置,如setCursor(1,1)即是将光标定位到第2列、第2行的位置。•语法:lcd.setCursor(col,row)•参数:•col,光标需要定位到的列。•row,光标需要定位到的行。•返回值:无。write()•函数write()功能是输出一个字符到LCD上。每输出一个字符,光标就会向后移动一格。•语法:lcd.write(data)•参数:•lcd,LiquidCrystal类的对象。•data,需要显示的字符。•返回值:输出的字符数。print()•函数print()功能是将文本输出到LCD上。每输出一个字符,光标就会向后移动一格。•语法:•lcd.print(data)•lcd.print(data,BASE)•参数:•lcd,LiquidCrystal类的对象。•data,需要输出的数据(类型可为char、byte、int、long、String)•BASE:输出的进制形式•BIN,二进制•DEC,十进制•OCT,八进制•HEX,十六进制•返回值,输出的字符数。光标函数•函数cursor()功能是显示光标。在当前光标所在位置会显示一条下画线。•语法:lcd.cursor()•参数:•lcd,LiquidCrystal类的对象。返回值:无。noCursor()•函数noCursor()功能是隐藏光标。•语法:lcd.noCursor()•lcd,LiquidCrystal类的对象。•返回值:无。blink()noBlink()•函数blink()功能是开启光标闪烁。该功能需要先使用cursor()显示光标。•语法:lcd.blink()•lcd,LiquidCrystal类的对象。•返回值:无。noBlink()•函数noBlink()功能是关闭光标闪烁。•语法:lcd.noBlink()•lcd,LiquidCrystal类的对象。•返回值:无。display()•函数display()功能是开启LCD的显示功能。它将会显示在使用noDisplay()关闭显示功能之前的LCD显示任何内容。语法:lcd.display()•参数:•lcd,LiquidCrystal类的对象。返回值:无。•函数noDisplay()功能是关闭LCD的显示功能。LCD将不会显示任何内容,但之前显示的内容不会丢失,当使用display()函数开启显示时,之前的内容会显示出来。•语法:lcd.noDisplay()•参数:•lcd,LiquidCrystal类的对象。•返回值:无。左移、右移•函数scrollDisplayLeft()功能是向左滚屏。将LCD上显示的所有内容向左移动一格。•语法:lcd.scrollDisplayLeft()•参数:•lcd,LiquidCrystal类的对象。返回值:无。•函数scrollDisplayRight()功能是向右滚屏。将LCD上显示的所有内容向右移动一格。•语法:lcd.scrollDisplayRight()•参数:•lcd,LiquidCrystal类的对象。返回值:无。autoscroll()•函数autoscroll()功能是自动滚屏。•语法:lcd.autoscroll()•参数:•lcd,LiquidCrystal类的对象。•返回值:无。noAutoscroll()•函数noAutoscroll()功能是关闭自动滚屏。•语法:lcd.noAutoscroll()•参数:•lcd,LiquidCrystal类的对象。•返回值:无。创建自定义字符•函数createChar()功能是创建自定义字符。最大支持8个5x8像素的自定义字符。8个字符可以用1~8编号。每个自定义字符都使用一个8B的数组保存。当输出自定义字符到LCD上时,需要使用write()函数。•语法:lcd.createChar(Num,Data)•参数:•lcd,LiquidCrystal类的对象。•Num,自定义字符的编号(1-8)。•Data,自定义字符像素数据。•返回值:无。液晶显示器LCD1602应用•#includeLiquidCrystal.h•//实例化一个lcd的LiquidCrystal类的对象,并初始化相关引脚•LiquidCrystallcd(12,11,4,5,6,7);•//初始化•voidsetup(){•//设置LCD行、列数,2行、16列•lcd.begin(16,2);•}•//主循环•voidloop(){•lcd.setCursor(1,0);//设置光标位置到0行、1列•lcd.print(^_^Welcome^_^);//打印输出^_^Welcome^_^•lcd.setCursor(1,1);//设置光标位置到0行、1列•lcd.print(Ilovearduino);//打印输出Ilovearduino•}谢谢