新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 跟我學51單片機(七)——LCD1602液晶顯示模塊

        跟我學51單片機(七)——LCD1602液晶顯示模塊

        作者: 時間:2013-01-26 來源:網絡 收藏
        二、電路詳解

          如圖2 所示,1602 液晶的控制管腳都接到了單片機管腳上,前文提到,在功能設置指令中可以將液晶設為8 位數據接口和4 位數據接口,圖中采用的是8位的數據接口,當然也可以當四位數據接口來用。液晶電源正端接5V,負端接地,背光正端接5V,負端接地。此外,液晶的偏壓管腳(VO)接到一個電位器的中間抽頭,電位器的兩端分別接5V 和地,這樣就可通過調節電位器來實現對1602 液晶對比度的調節。經實驗測試,筆者手里的1602 液晶的偏壓管腳的電壓調節到0.3~0.4V 時對比度效果最好,也可以將該管腳通過一個1k 的電阻下拉到地。讀者可以自己實踐測試。

        跟我學51單片機(七)——LCD1602液晶顯示模塊

        圖2 1602液晶與單片機的連接圖

          三、程序設計

          在對1602 液晶設計程序前,我們先看下其讀寫時序圖,從圖3 和圖4 可以看出,1602 液晶的讀寫操作時序可總結成表4 所示。

        跟我學51單片機(七)——LCD1602液晶顯示模塊

        圖3 1602液晶讀操作的時序圖

        跟我學51單片機(七)——LCD1602液晶顯示模塊

        圖4 1602液晶寫操作的時序圖

          對照時序,我們可以很容易的寫出驅動液晶的各個子函數,如下所示。

          寫命令函數:向寄存器寫入控制字

          參數:command - 控制字

          void LCD_en_command(unsigned char command)

          {

          LCD_delay(); // 延時一段時間

          _RW=LOW; // 寫命令時,R/W 為低電平

          _RS=LOW; // 寫入指令,RS 為低電平

          _EN=HIGH; // 置高使能線

          LCDIO=command; // 接收命令字并送到數據總線上

          LCD1602_EN=LOW; // 在使能線的下降沿寫入數據

          }

          寫數據函數:向寄存器寫入數據

          參數:dat - 待要顯示數據

          void LCD_en_dat(unsigned char dat)

          {

          LCD_delay(); // 延時一段時間

          LCD1602_RW=LOW; // 寫指令時,R/W 為低電平

          LCD1602_RS=LOW; // 寫入數據,RS 為高電平

          LCD1602_EN=HIGH; // 置高使能線

          LCDIO=dat; // 接收數據并送到數據總線上

          LCD1602_EN=LOW; // 在使能線的下降沿寫入數據

          }

        紅外遙控器相關文章:紅外遙控器原理


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 安化县| 丹巴县| 林州市| 清流县| 那坡县| 北票市| 芜湖县| 梁山县| 麻栗坡县| 洛浦县| 个旧市| 栾川县| 长沙市| 扬州市| 铁力市| 柏乡县| 拉孜县| 黎川县| 吉木萨尔县| 旺苍县| 商都县| 天水市| 邹平县| 盈江县| 无极县| 云浮市| 毕节市| 韩城市| 稷山县| 辽阳市| 枣庄市| 东乡县| 荣成市| 濮阳市| 吉水县| 林口县| 麻城市| 东至县| 博客| 福贡县| 河南省|