☛ 功能說明

使用 Arduino 開發板控制 LCD 1602 顯示現在溫度 ” 25 ゚°C”,因為度的符號 ” ° ” 無法由鍵盤輸入,必須使用字形碼輸入。 查 LCM 字形表,符號 ” ° ” 的字形碼為 B11011111。 LCM 字形表如下所示:

☛ 使用材料

Arduino UNO R3 開發板 × 1、LCD 1602A 顯示器模組 × 1、可變電阻 20KΩ × 1、電阻 220Ω × 1。

☛ 電路圖及麵包板接線圖

☛ 程式碼

#include<LiquidCrystal.h>               // 使用 LiquidCrystal.h 函式庫

LiquidCrystal lcd(12,11,5,4,3,2);       // 宣告 lcd 變數並定義使用接腳
const byte degree=25;                   // 現在溫度
const byte degreeSymbol=B11011111;      // 度的特殊符號 °

void setup()
{
     lcd.begin(16,2);                   // 使用 16×2 LCD
}

void loop()
{
     lcd.setCursor(0,0);                // 設定游標在第 0 行第 0 列
     lcd.print(degree);                 // 顯示現在溫度
     lcd.write(degreeSymbol);           // 顯示度的特殊符號 °
     lcd.print("C");                    // 顯示字元 C
}

 

☛ 練習

⑴ 設計 Arduino 程式,控制 LCD 1602 顯示 ” π=180°”。

#include<LiquidCrystal.h>               // 使用 LiquidCrystal.h 函式庫

LiquidCrystal lcd(12,11,5,4,3,2);       // 宣告 lcd 變數並定義使用接腳
const byte angles=180;                  // 現在角度
const byte degreeSymbol=B11011111;      // 度的特殊符號 °
const byte piSymbol=B11110111;          // PI 的特殊符號 π

void setup()
{
     lcd.begin(16,2);                   // 使用 16×2 LCD
}

void loop()
{
     lcd.setCursor(0,0);                // 設定游標在第 0 行第 0 列
     lcd.write(piSymbol);               // 顯示角度的特殊符號 π
     lcd.print("=");                    // 顯示字元 =
     lcd.print(angles);                 // 顯示現在角度
     lcd.write(degreeSymbol);           // 顯示度的特殊符號 °
}

 

⑵ 設計 Arduino 程式,控制 LCD 1602 顯示 ” 10÷2=5″。

#include<LiquidCrystal.h>               // 使用 LiquidCrystal.h 函式庫

LiquidCrystal lcd(12,11,5,4,3,2);       // 宣告 lcd 變數並定義使用接腳
const byte divideSymbol=B11111101;      // 除號的特殊符號 ➗
const byte num1=10;                     // 除數 10
const byte num2=2;                      // 被除數 2

void setup()
{
     lcd.begin(16,2);                   // 使用 16×2 LCD
}

void loop()
{
     lcd.setCursor(0,0);                // 設定游標在第 0 行第 0 列
     lcd.print(num1);                   // 顯示除數 10
     lcd.write(divideSymbol);           // 顯示除號的特殊符號 ➗
     lcd.print(num2);                   // 顯示被除數 2
     lcd.print("=");                    // 顯示字元 =
     lcd.print(num1/num2);              // 顯示結果
}