利用 LiquidCrystal 函式库建立一个 LiquidCrystal 资料形态的物件,LiquidCrystal() 函式的格式如下,可以使用 4 位元 ( d4 ~ d7 ) 或 8 位元 ( d0 ~ d7 ) 的资料线来控制 LCD 显示器,其中 rs 为指令/资料暂存器选择位元,rw 为读/写控制位元,enable 为致能位元,d0 ~ d7 为资料线。例如下面范例中使用 Arduino 数位接脚 12、11、10 分别连接至 LCD 的 rs、rw、enable 接脚,Arduino 数位接脚 5、4、3、2 分别连接至 LCD 的 d4、d5、d6、d7。

格式:

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 )

范例:

include<LiquidCrystal.h>               // 使用 LiquidCrystal 函式库
LiquidCrystal lcd( 12,11,10,5,4,3,2 ); // 宣告 lcd 变数

 

☛ begin() 函式

begin() 函式的功能是用来指定 LCD 显示器的总行数及总列数,有 cols、rows 等二个参数必须设定,cols 参数设定 LCD 的总行数,rows 参数设定 LCD 的总列数。在使用 begin() 函式之前,必须先使用 LiquidCrystal() 函式宣告一个 LiquidCrystal 资料形态的物件。

格式:

lcd.begin( cols, rows )

范例:

include<LiquidCrystal.h>              // 使用 LiquidCrystal 函式库

LiquidCrystal lcd(12,11,10,5,4,3,2);  // 宣告 lcd 变数
lcd.begin(16,2);                      // 使用 16 行 × 2 列的 LCD

 

☛ clear() 函式

clear() 函式的功能是用来清除 LCD,同时将游标移至左上角,不须设定任何参数。在使用 clear() 函式之前,必须先使用 LiquidCrystal() 函式宣告一个 LiquidCrystal 资料形态的物件。

格式:

clear()

范例:

include<LiquidCrystal.h>              // 使用 LiquidCrystal 函式库

LiquidCrystal lcd(12,11,10,5,4,3,2);  // 宣告 lcd 变数
lcd.clear();                          // 清除 LCD,游标移至左上角

 

☛ home() 函式

home() 函式的功能是将游标移至 LCD 左上角,不须设定任何参数。在使用 home() 函式之前,必须先使用 LiquidCrystal() 函式宣告一个 LiquidCrystal 资料形态的物件。

格式:

home()

范例:

include<LiquidCrystal.h>              // 使用 LiquidCrystal 函式库

LiquidCrystal lcd(12,11,10,5,4,3,2);  // 宣告 lcd 变数
lcd.home();                           // 游标移至 LCD 左上角

 

☛ setCursor() 函式

setCursor() 函式的功能是设定游标的位置,有 col 及 row 二个参数必须设定,col 参数设定 LCD 游标的行位置,row 参数设定 LCD 游标的列位置,两个参数都是由 0 开始。在使用 setCursor() 函式之前, 必须先使用 LiquidCrystal() 函式宣告一个 LiquidCrystal 资料形态的物件。

格式:

setCursor( col, row )

范例:

include<LiquidCrystal.h>              // 使用 LiquidCrystal 函式库

LiquidCrystal lcd(12,11,10,5,4,3,2);  // 宣告 lcd 变数
lcd.setCursor(0,1);                   // 设定游标停在第 0 行,第 1 列

 

☛ write() 函式

write() 函式的功能是将字元写入 LCD 中,有一个参数 data 必须设定,data 参数是所要写入 LCD 中的字元,write() 函式会传回所写入的位元组总数。在使用 write() 函式之前,必须先使用 LiquidCrystal() 函式宣告一个 LiquidCrystal 资料形态的物件。

格式:

write( data )

范例:

include<LiquidCrystal.h>              // 使用 LiquidCrystal 函式库

LiquidCrystal lcd(12,11,10,5,4,3,2);  // 宣告 lcd 变数
lcd.write("hello, world!");           // 写入字元 "hello, world!"

 

☛ print() 函式

print() 函式的功能是将文字写入 LCD 中,有 data 及 BASE 两个参数可以设定,data 参数是所要写入至 LCD 中的文字,data 可以是 char、byte、int、long 或 string 等资料形态,如果 data 是数值,可以使用 BASE 参数设定所要显示数值的基数,有 BIN ( 二进 )、OCT ( 八进 )、DEC ( 十进 )、HEX ( 十六进 ) 等四种基数可以选择。print() 函式会传回所写入的位元组总数。在使用 print() 函式之前,必须先使用 LiquidCrystal() 函式宣告一个 LiquidCrystal 资料形态的物件。

格式:

print( data )
print( data, BASE )

范例:

include<LiquidCrystal.h>              // 使用 LiquidCrystal 函式库

LiquidCrystal lcd(12,11,10,5,4,3,2);  // 宣告 lcd 变数
lcd.print("hello, world!");           // 写入字元 "hello, world!"
lcd.print(15,BIN);                    // 显示 15 的二进制数值 1111
lcd.print(15,OCT);                    // 显示 15 的八进制数值 17
lcd.print(15,DEC);                    // 显示 15 的十进制数值 15
lcd.print(15,HEX);                    // 显示 15 的十六进制数值 F

 

☛ cursor() / noCursor() 函式

cursor() 函式的功能是显示游标,noCursor() 函式的功能是隐藏游标,两者皆不须设定任何参数。在使用 cursor() / noCursor() 函式之前,必须先使用 LiquidCrystal() 函式宣告一个 LiquidCrystal 资料形态的物件。

格式:

cursor() / noCursor()

范例:

include<LiquidCrystal.h>              // 使用 LiquidCrystal 函式库

LiquidCrystal lcd(12,11,10,5,4,3,2);  // 宣告 lcd 变数
lcd.cursor();                         // 显示游标
lcd.noCursor();                       // 隐藏游标