Lab8

LCD 螢幕顯示

[材料]

Arduino主板 x 1

麵包板 x 1

Led x 1

可變電阻 x 1

LCD(含有i2c的晶片) x 1 (ps. i2c使用Arduino UNO的A4、A5,可連接多個其他電子零件)


[函式庫]

LiquidCrystal_I2C.h :https://github.com/fmalpartida/New-LiquidCrystal,選擇Code-->Download ZIP,並在Arduino的"草稿碼"-->"匯入程式庫 "--> "加入 .ZIP程式庫"選擇下載檔案。

ps.若出現"Zip並不含有程式庫"的錯誤訊息,請將Arduino軟體關閉後重新啟動,應該就可以解決。

[LCD i2c 腳位]

GND --> GND

VCC --> 5V

SDA --> A4

SCL --> A5

基本的LCD顯示

/*  Lab8 LCD 程式碼*/

/* LCD 接線方式
GND --> GND
VCC --> 5V
SDA --> A4
SCL --> A5
*/

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);  //設定LCD

void setup()
{
  Serial.begin(9600); 
  lcd.begin(16, 2);     //初始化 LCD,代表我們使用的LCD一行有16個字元,共2行。
  lcd.backlight();      //開啟背光   
}

void loop()
{
  delay(200); 
  lcd.home();   //LCD歸零,清除所有內容
  lcd.clear();  //LCD歸零,清除所有內容
  lcd.setCursor(0, 0);        // 設定游標位置在第一行第一個字
  lcd.print("Hello, world!");
  lcd.setCursor(0, 1);        // 設定游標位置在第二行第一個字
  lcd.print("test 123");
}


[解釋]

1. 函式庫可以讓我們直接使用他人完成的程式碼,簡化我們撰寫程式的難度。

#include <Wire.h> --> 這是i2c的函式庫

#include <LiquidCrystal_I2C.h> --> 這是LCD i2c的函式庫

2. 可用小螺絲起子調整LCD後方可變電阻,以改變背光亮度。

[基本問題]

1. 改變要顯示的資料(文字或數字),位置。

2. 顯示其他感測器的資料。
    (例如:顯示Lab5中"可變電阻"的數值)


[挑戰問題]

1. 如果LCD要顯示的文字太多,要如何處理?