LCD1602顯示模組

最後更新日期:2022-03-24 10:47:30

前面雖有LED點矩陣可顯示跑馬文字、圖示來呈現訊息,但提供更佳的文字閱讀體驗裝置,非LCD1602莫數!
先來一睹它的風采,應該在很多電子產品上,能看到它的蹤影。
常見的字幕顏色有「藍底白字」或「綠底黑字」!

lcd1602顯示模組正面照

lcd1602顯示模組背面照

眼尖的您可能已發現,此上方模組的背面電路與您手邊的LCD1602模組有些差異,您手邊的應該類似於下圖對吧!
主要是多了一塊I2C的轉換電路,原本的LCD1602模組需要許多的資料及控制線,才能控制得宜。但在搭配I2C轉換電路後,控制此元件只需要4條電線即可,分別是:VCC、GND、SCL及SDA。 (科技始終來自於人的惰性)

lcd1602顯示模組 I2C 背面照

常用的I2C位址編號

如上敘,使用I2C協定帶來的好處是,只要4條線就可以控制元件;另一個好處是,相同的4條線,還能連接多個I2C裝置。在省下接線時間的同時,這邊稍微說明一下其運作概念(詳情還請自行研究)。
各位在唸書時,應該都曾經在教室內的廣播聽到,「W年X班YYY同學,請到ZZ處!」,I2C協定也雷同此方式。
樹莓派透過SCL、SDA線路下達要動作的位址及指令,且此線路可能連接多個設備,故I2C轉換電路必須篩選特定位址,才進行指令的接收與執行。

lcd1602顯示模組 I2C 背面照

究竟手邊拿到的LCD1602模組的位址編號是多少呢?透過上圖右,其位址分佈範圍在0x20 ~ 0x27及0x38 ~ 0x3F(0x表示十六進制值)。
先觀看晶片編號是PCF8574AT或是PCF8574T,這樣就可以把範圍分成兩部份。接著再觀看圖中「粉紅色」圈選處,共有三組金屬接點(下方會標記:A0、A1、A2),若金屬接點沒有連接在一起,判讀為0;若有連接,判讀為1。如此就能查詢上圖右表了。
一般常見狀態是A0 ~ A2都沒有連接,故判讀為 0 0 0,所以位址編號不是0x3F,就是0x27。

# 實作步驟

  • 學習使用
  • 設計電路圖
  • 連接電路
  • 搭建積木程式 & 執行

# 學習使用

利用LCD1602顯示模組來報時吧!

# 設計電路圖

電路圖設計如下:

LCD1602顯示模組電路圖

# 連接電路

實際線路如下圖,建議連接步驟如下,若您要移除電路時,請使用相反的順序進行即可。

  1. 於麵包板上連接相關元件
  2. 資料、控制腳位連接上樹莓派
  3. GND腳位連接上樹莓派
  4. VCC(5V or 3.3V)腳位連接上樹莓派

LED實際電路連接

# 搭建積木程式 & 執行

開啟積木程式畫面如下,若您已經下載代理程式,並且完成「rp_agent」設定,可以將首次使用須知下方的框框,勾選「不再顯示此訊息」,並按下「確定」按鈕。

PS. cwBlockly頁面請於樹莓派中執行。

積木程式首次使用須知

初始畫面如下。

積木程式初始畫面

控制LCD1602的積木位於「顯示元件」→「LCD1602顯示模組」。

LCD1602顯示模組

拖曳「LCD1602定義積木」至RPi預設積木中。

LCD1602定義積木

此定義積木可設定其I2C的位址及是否開啟LCD背光效果。

LCD1602定義積木屬性設定

為了確認此元件的真實I2C位址,我們先執行一下程式吧!

獲得LCD1602真實I2C位址

若是第一次使用此積木,程式會為此環境安裝相依的程式套件(RPLCD),請稍等一下。

安裝相依套件RPLCD

接著在LX終端機中,可以看到有效的I2C位址表(如下圖),因目前只安裝一個I2C裝置,所以此裝置的I2C位址是0x3f

樹莓派偵測I2C裝置位址

眼尖的您肯定發現,這個位址(0x3f)不就跟積木設定的0x27不相同嗎?
是的!所以在「LX終端機」中,就看到了錯誤訊息。

I2C裝置位址錯誤

修正方式就是將「I2C位址」設定成「0x3F」。

I2C裝置位址修正

在開始顯示文字之前,通常會先將螢幕內容清除,可以在「顯示元件」→「LCD1602顯示模組」,找到清除的積木,並將其加入。

拖曳清除LCD1602螢幕積木

放置清除LCD1602螢幕積木

接下來就要進入主題了,為了讓LCD1602持續的顯示時間,我們需要一個無限迴圈。

放置無限迴圈積木

顯示文字的步驟是先設定座標位置,也就是游標位置,稍後文字從該位置開始出現。

拖曳設定座標積木

擺放設定座標積木

試著下拉座標軸的數據,首先是X軸,表示水平位置,其範圍是0 ~ 15(16個字),再來是Y軸,表示垂直位置,其範圍是0 ~ 1(2個字),所以此模組才被稱為LCD1602

座標X軸範圍

座標Y軸範圍

座標方向說明

第一橫行要呈現日期,先從「顯示元件」→「LCD1602顯示模組」,放置顯示積木。

放置顯示積木

當前日期的積木,可以從「文字」項目中取得。

放置當前日期積木

按照類似的步驟,在「第二橫行」呈現「當前時間」。

放置當前時間積木

此時千萬別急著執行!因無限迴圈內還少一個積木,目前會造成CPU高負載!
解決辦法是放入一個延遲時間的積木即可。

放置延遲時間積木

下載本範例積木程式 lcd1602_01.rpb

# 常見問題

怎麼了!沒看到文字嗎?別慌張,應該是螢幕對比的問題,請將LCD1602模組翻到背面,並準備一個小的十字起子,將起子如下圖方式擺放。

調整螢幕對比

以順、逆時鐘方向轉動,直到內容顯示清晰為止。


若您對基礎電子套件有興趣,可至蝦皮賣場購買,若是學校團體亦可來信訂購,謝謝。

若對本篇教學文章有任何建議或問題,歡迎您來信:chipwaygo@gmail.com,謝謝。