前邊我們講的流水燈、數(shù)碼管、LED 點陣這三種都是 LED 設(shè)備,這節(jié)課我們來學(xué)習(xí)一下 LCD 顯示設(shè)備——1602 液晶。那個大大的,平時第一行顯示 16 個小黑塊,第二行什么都不顯示的東西就是 1602 液晶,是不是早就注意到它了呢?
大家學(xué)習(xí)這些電子器件,頭腦中要逐漸形成一種意識,不管是我們的單片機(jī),還是74HC138,甚至三極管等等,都是有數(shù)據(jù)手冊的。不管是設(shè)計電路還是編寫程序,器件的數(shù)據(jù)手冊是我們最好的參考資料,那我們今天來學(xué)習(xí) 1602,首先就要看它的數(shù)據(jù)手冊。手冊大家可以在網(wǎng)上找到,這里我講的時候只挑手冊的重點講。
首先我們來看一個主要技術(shù)參數(shù)表格,如表 12-3 所示。
1602 液晶,從它的名字我們就可以看出它的顯示容量,就是可以顯示 2 行,每行 16 個字符的液晶。它的工作電壓是 4.5V~5.5V,對于這點我們設(shè)計電路的時候,直接按照 5V 系統(tǒng)設(shè)計,但是保證我們的 5V 系統(tǒng)最低不能低于 4.5V。在 5V 工作電壓下測量它的工作電流是 2mA,大家注意,這個 2mA 僅僅是指液晶,而它的黃綠背光都是用 LED 做的,所以功耗不會太小的,一二十毫安還是有的。
1602 液晶一共 16 個引腳,每個引腳的功能,我們都可以在它的數(shù)據(jù)手冊上獲得。而這些基本的信息,在我們設(shè)計電路和編寫代碼之前,必須先看明白,如表 12-4 所示。
液晶的電源 1 腳 2 腳以及背光電源 15 腳 16 腳,不用多說,正常接就可以了。
3 腳叫做液晶顯示偏壓信號,大家注意到小黑塊沒有,當(dāng)我們要顯示一個字符的時候,有的黑點顯示,有的黑點就不能顯示,這樣就可以實現(xiàn)我們想要的字符了。我們這個 3 腳就是用來調(diào)整顯示的黑點和不顯示的之間的對比度,調(diào)整好了對比度,就可以讓我們的顯示更加清晰一些。在進(jìn)行電路設(shè)計實驗的時候,通常的辦法是在這個引腳上接個電位器,也就是我們初中學(xué)過的滑動變阻器。通過調(diào)整電位器的分壓值,來調(diào)整 3 腳的電壓。而當(dāng)產(chǎn)品批量生產(chǎn)的時候,我們可以把我們調(diào)整好的這個值直接用簡單電路來實現(xiàn),就如同在我們板子上,我們直接使用的是一個 18 歐的下拉電阻,市面上有的 1602 的下拉電阻大概 1 到 1.5K 也是比較合適的值。
4 腳是數(shù)據(jù)命令選擇端。對于液晶,有時候我們要發(fā)送一些命令,讓它實現(xiàn)我們想要的一些狀態(tài),有時候我們要發(fā)給它一些數(shù)據(jù),讓它顯示出來,液晶就通過這個引腳來判斷接收到的是命令還是數(shù)據(jù),這個引腳我們接到了 ADDR0 上,通過跳線帽和 P1.0 連接在一起。大家注意學(xué)會讀手冊,看到這個引腳描述里:數(shù)據(jù)/命令選擇端,而后跟了括號(H/L),他的意思就是當(dāng)這個引腳是 H(High)高電平的時候,是數(shù)據(jù),當(dāng)這個引腳是 L(Low)低電平的時候,是命令。
5 腳和 4 腳用法類似,功能是讀寫選擇端。我們既可以寫給液晶數(shù)據(jù)或者命令,也可以讀取液晶內(nèi)部的數(shù)據(jù)或狀態(tài),就是控制這個引腳。因為液晶本身內(nèi)部有 RAM,實際上我們送給液晶的命令或者數(shù)據(jù),液晶需要先保存在緩存里,然后再寫到內(nèi)部的寄存器或者 RAM中,這個就需要一定的時間。所以我們進(jìn)行讀寫操作之前,首先要讀一下液晶當(dāng)前狀態(tài),是不是在“忙”,如果不忙,我們可以讀寫數(shù)據(jù),如果在“忙”,我們就需要等待液晶忙完了,再進(jìn)行操作。讀狀態(tài)是常用的,不過讀液晶數(shù)據(jù)我接觸的場合沒怎么用過,大家了解這個功能即可。這個引腳我們接到了 ADDR1 上,通過跳線帽和 P1.1 連接在一起。
6 腳是使能信號,很關(guān)鍵,液晶的讀寫命令和數(shù)據(jù),都要靠它才能正常讀寫,我們后邊詳細(xì)講這個引腳怎么用。這個引腳我們通過跳線帽接到了 ENLCD 上,這個位置的跳線是為了和另外一個 12864 液晶的切換使用而設(shè)計的。
7 到 14 引腳就是 8 個數(shù)據(jù)引腳了,我們就是通過這 8 個引腳讀寫數(shù)據(jù)和命令的。我們統(tǒng)一接到了 P0 口上。來看一下開發(fā)板上的 1602 接口的原理圖,如圖 12-1 所示。