8-1.LCD液晶顯示模組1602顯示兩行文字

功能:它可以顯示2行的藍底白字,每行16個字,也可以手動調整亮度,也可以透過程式控制亮度,建議使用有加裝PCF8574背板的液晶顯示模組1602。

 

材料接線:液晶顯示模組1602*1、杜邦線(公對母)*4

將液晶顯示模組1602最上方的GND接Arduino板子的GND,VCC接5V,SDA接類比腳位A4,SCL接類比腳位A5

 

程式積木

 

程式:

寫程式前一定要先新增這個簡單又好用的函式庫,名稱為:LiquidCrystal_PCF8574

操作流程:[工具]/[管理程式庫]/輸入搜尋名稱/[安裝]/[關閉]

 

接著只要幾行程式碼就能在液晶顯示模組顯示文字,如果無法顯示文字,請修改I2C的位址,不是0x27就是0x3F。

如果文字看不清楚,請參考最上方的圖片說明,拿十字起子工作進行手動旋轉調整亮度。

/* 程式名稱:LCD液晶顯示模組1602 */
#include <LiquidCrystal_PCF8574.h>  // 添加應用函式庫LiquidCrystal_PCF8574.h
LiquidCrystal_PCF8574 lcd(0x27);  // 設定液晶顯示模組的 i2c位址,一般情況就是0x27或0x3F其中一個
void setup()
{
  lcd.begin(16, 2);                 // 初始化LCD,寬度16字,高度2行
  lcd.setBacklight(255);         // 設定背景亮度為255
  lcd.clear();                           // 清除顯示器上面的文字
  lcd.setCursor(0, 0);              // 設定文字要顯示的位置在左上角,第幾個字及第幾行(字,行)。
  lcd.print("** first line.");      // 顯示文字(最多16字)
  lcd.setCursor(0, 1);              // 設定文字要顯示的位置在第二行最左邊
  lcd.print("** second line");  // 顯示文字(最多16字)
}
 
void loop()
{
}

 

 

8-2.LCD液晶顯示光敏電阻的亮度

功能:利用光敏電阻偵測亮度,利用LCD液晶顯示模組1602顯示亮度。光敏電阻偵測到的數值(0很亮∼1023很暗)。

 

材料接線:光敏電阻的接腳 = A0,液晶顯示模組1602的SDA及SCL對應擴展版相同名稱(SDA對應到類比腳位A4,SCL類比腳位A5)

 

程式積木

 

程式:

寫程式前一定要先新增這個簡單又好用的函式庫,名稱為:LiquidCrystal_PCF8574

操作流程:[工具]/[管理程式庫]/輸入搜尋名稱/[安裝]/[關閉]

 

接著只要幾行程式碼就能在液晶顯示模組顯示文字,如果無法顯示文字,請修改I2C的位址,不是0x27就是0x3F。

如果LCD的文字看不清楚,請拿十字起子手動旋轉調整亮度。

// 程式名稱:LCD顯示亮度
// 光敏電阻的接腳 = A0
// 液晶顯示模組1602的SDA及SCL對應擴展版相同名稱(SDA對應到類比腳位A4,SCL類比腳位A5)

#include <LiquidCrystal_PCF8574.h>  // 使用函式庫LiquidCrystal_PCF8574   by Matthias Hertel
LiquidCrystal_PCF8574 lcd(0x27);  // 設定液晶顯示模組的 i2c位址,一般情況就是0x27或0x3F其中一個
int light;  //定義整數變數存放偵測到的亮度數值
void setup()
{
  lcd.begin(16, 2);         // 初始化LCD,寬度16字,高度2行
  lcd.setBacklight(255);    // 設定背景亮度為255
  lcd.clear();              // 清除LCD顯示器的文字
  Serial.begin(9600);       // 設定序列埠的速率要與監控視窗的速率相同
  pinMode(A0,INPUT);        // 設定光敏電阻接在 A0(類比第0接腳)為輸入功能
}

void loop()
{
  light = analogRead(A0); //讀取類比腳位A0的光敏電阻偵測的整數亮度數值
  String str1 = "Light=";  //宣告字串變數
  String str2 = "     ";  //宣告字串變數放5個空格
  //lcd.clear();        // 清除LCD顯示器的文字
  Serial.println(str1 + light + str2);  //將亮度變數前後合併字串顯示在序列埠
  lcd.setCursor(0, 0);  //定位在 LCD 的第0個字、第0列位置
  lcd.print(str1 + light + str2);  //將亮度變數前後合併字串顯示在LCD
  delay(100);  //等待0.1秒
}