傑森最常被問的問題是什麼?就是1602 LCD的範例,或是用哪一個函式庫。
現在傑森介紹一個目前認為最無敵簡單的函式庫:LiquidCrystal_PCF8574。它第一個優點就是,只要在Arduino IDE的「程式庫管理員」中就能抓到,直接下載就能用!
LiquidCrystal_PCF8574 另一個優點就是程式超好寫,幾行程式碼就能搞定!還有一點很重要,就是ESP8266類的開發板也能用!像是WeMos D1或NodeMCU,都能直接用它。
建議大家在一般情況下都使用有PCF8574背板的LCD,它是I2C的介面,只要接4條線就能使用了。
附上傑森的測試程式,裡面都有詳細說明,讓大家參考看看。
重要提醒:
- 程式中會有一行設定I2C的位址,基本上1602 LCD不是0x27就是0x3F,若顯示不出內容,請修改一下。
- LCD背面,I2C轉接卡上有一個可變電組,用來調亮度的,一般出廠時,它都是調到最亮,可能完全看不到字,請用十字起子調整一下!
P.S.這個例子的傑森特別多拿一塊ESP8266來示範,証明這個函式庫不只Arduino可以用,ESP8266也一樣可以使用的!
/*
本程式為LCD 1602的範例
首先要安裝LiquidCrystal_PCF8574的函式庫
接線請參考附圖
LCD 16x2 賣場:
https://www.jmaker.com.tw/products/lcd1602
LCD支架賣場:
https://www.jmaker.com.tw/products/product170
LCD 20x4 賣場:
https://www.jmaker.com.tw/products/lcd20x4
傑森創工賣場:https://www.jmaker.com.tw
傑森創工粉絲團:https://www.facebook.com/jasonshow
*/
#include <LiquidCrystal_PCF8574.h>
LiquidCrystal_PCF8574 lcd(0x27); // 設定i2c位址,一般情況就是0x27和0x3F兩種
void setup()
{
lcd.begin(16, 2); // 初始化LCD
//lcd.begin(20, 4); // 如果是20x4的LCD就是用這行
lcd.setBacklight(255);
lcd.clear();
lcd.setCursor(0, 0); //設定游標位置 (字,行)
lcd.print("*~ first line.");
lcd.setCursor(0, 1);
lcd.print("~* second line.");
} // setup()
void loop()
{
} // loop()