Arduino連線LCD1602顯示屏
阿新 • • 發佈:2018-12-24
LCD1602液晶屏 帶I2C介面
使用I2C介面,省IO口,只需要4條線即可。通過背光燈,和可調節對比度(就是背面藍色那塊可以旋轉的調)
自從1.6.6版本的IDE出來後,不斷有反應LCD 1602 IIC液晶顯示不正常,列印一字串,卻只顯示第一個字元!最初解決辦法換低版本IDE,就可以解決該問題!
現在問題找出來了,只需要更改 LiquidCrystal_I2C.cpp 檔案中的一個語句就可以了,更改如下:
inline size_t LiquidCrystal_I2C::write(uint8_t value) { send(value, Rs); return 0; 改為 return 1; }
引腳說明
GND ------ 地線
VCC ------ 電源(5V or 3.3v 電源不同顯示效果有點差別)
SDA ------ I2C 資料線
SCL ------ I2C 時鐘線
接線方法
LCD1602 i2c模組 Ardunio Nano
GND <------> GND接地線
VCC <------> 5V 接電源
SDA <------> A4
SCL <------> A5
程式如下:
#include <Wire.h> #include <LiquidCrystal_I2C.h> //1602LCD 驅動 引用I2C庫 void setup(){ lcd.init(); // 初始化LCD lcd.backlight(); //設定LCD背景等亮 lcd.setCursor(0,0); //設定顯示指標 lcd.print("HUM:67"); //輸出字元到LCD1602上 lcd.setCursor(0,1); lcd.print("TEN:20"); } void loop(){ }
效果圖:
LCD1602液晶屏
引腳說明
編號 | 引腳 | 說明 |
---|---|---|
1 | GND | 接地 |
2 | VCC | 5V正極 |
3 | V0 | 對比度調整,接正極時對比度最弱 |
4 | RS | 接地 |
5 | R/W | 接地 |
6 | EN | 接地 |
7~14 | D0~D7 | 8位雙向資料 |
15 | BLA | 背光正極 |
16 | BLK | 背光負極 |
3腳電位器
一個滑動變阻器,中間接負極(輸出),兩邊分別接電源正極和接地(或不接)
載入庫檔案
開啟Arduino IDE,選專案 -> 載入庫 -> 管理庫中搜索LiquidCrystal,然後安裝即可,筆者的IDE版本為1.6.12,自帶該庫。
//引入依賴
#include <LiquidCrystal.h>
// 初始化針腳
const int rs = 3, en = 5, d4 = 10, d5 = 11, d6 = 12 d7 = 13;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
void setup() {
//設定LCD要顯示的列數、行數,即2行16列
lcd.begin(16, 2);
//輸出Hello World
lcd.print("hello, world!");
}
void loop() {
//設定游標定位到第0列,第1行(從0開始)
lcd.setCursor(0, 1);
//列印從重置後的秒數
lcd.print( millis() / 1000);
}