1602采用標准的16腳接口,其中:
第1腳:VSS為地電源
第2腳:VDD接5V正電源
第3腳:V0為液晶顯示器對比度調整端,接正電源時對比度最弱,接地電源時對比度最高,對比度過高時會產生“鬼影”,使用時可以通過一個10K的電位器調整對比度
第4腳:RS為寄存器選擇,高電平時選擇數據寄存器、低電平時選擇指令寄存器。
第5腳:RW為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當RS和RW共同為低電平時可以寫入指令或者顯示地址,當RS為低電平RW為高電平時可以讀忙信號,當RS為高電平RW為低電平時可以寫入數據。
第6腳:E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執行命令。
第7~14腳:D0~D7為8位雙向數據線。
第15~16腳:背光電源 15:VCC 16:GND
1602液晶模塊內部的字符發生存儲器(CGROM)已經存儲了160個不同的點陣字符圖形,
如表1所示,這些字符有:阿拉伯數字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時模塊把地址41H
中的點陣字符圖形顯示出來,我們就能
看到字母“A”
連接IO有全連接和以下連接方式,當然只介紹優先節省IO口的!
以下是代碼:還可以精簡 可以用的串口來發送字符串,顯示到1062上面,
#include <LiquidCrystal.h> //此代碼是給1602顯示屏寫的。2017-3-15 String comdata = ""; int potpin=0;//定義模擬接口0 int val=0;//將定義變量val,並賦初值0 LiquidCrystal lcd(12, 11, 5, 4, 3, 2);//第一個是接RS,第二個是EN,剩下的是接D4,D5,D6,D7; void setup() { Serial.begin(9600); lcd.begin(16, 2); lcd.print("Hi XiaoHe *^_^*"); } void loop() { float val1,val; int val2; jieshou();//接受字符並顯示 val=analogRead(potpin);//讀取模擬接口0 的值,並將其賦給val val1=(5*val/1023)*5; lcd.setCursor(4, 1);//1位 第二行開始顯示 lcd.print(" ");//清空不穩定的顯示 lcd.setCursor(0, 1);//1位 第二行開始顯示 lcd.print(val1); lcd.print("V");//單位 lcd.setCursor(11, 1);//顯示光標 val2=millis()/1000;//取系統運行時間單位秒 lcd.print(val2); delay(999); } char jieshou() { while (Serial.available() > 0) { comdata += char(Serial.read()); delay(2);//接受完成字符 } if (comdata.length() > 0) { Serial.println(comdata); lcd.setCursor(0, 0);//打印第一行第一個 lcd.print(comdata);//顯示接受的數據 comdata = "";//接受完成再清空 } }



