LCD1602液晶顯示實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告及程序_第1頁(yè)
LCD1602液晶顯示實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告及程序_第2頁(yè)
LCD1602液晶顯示實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告及程序_第3頁(yè)
LCD1602液晶顯示實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告及程序_第4頁(yè)
LCD1602液晶顯示實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告及程序_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上實(shí)驗(yàn)三 LCD1602液晶顯示實(shí)驗(yàn)姓名 專業(yè) 學(xué)號(hào) 成績(jī) 一、 實(shí)驗(yàn)?zāi)康?. 掌握Keil C51軟件與proteus軟件聯(lián)合仿真調(diào)試的方法;2. 掌握LCD1602液晶模塊顯示西文的原理及使用方法;3. 掌握用8位數(shù)據(jù)模式驅(qū)動(dòng)LCM1602液晶的C語(yǔ)言編程方法;4. 掌握用LCM1602液晶模塊顯示數(shù)字的C語(yǔ)言編程方法。二、 實(shí)驗(yàn)儀器與設(shè)備1.微機(jī)一臺(tái) 2.keil C51集成開(kāi)發(fā)環(huán)境 3.Proteus仿真軟件三、 實(shí)驗(yàn)內(nèi)容1. 用Proteus設(shè)計(jì)一LCD1602液晶顯示接口電路。要求利用P0口接LCD1602液晶的數(shù)據(jù)端,P2.0P2.2做LCD1602液晶的

2、控制信號(hào)輸入端。P3.0P3.3口擴(kuò)展3個(gè)功能鍵K1K3。參考電路見(jiàn)后面。2. 編寫程序,實(shí)現(xiàn)字符的靜態(tài)和動(dòng)態(tài)顯示。顯示字符為第一行:“1.姓名全拼”,第二行:“2.專業(yè)全拼+學(xué)號(hào)”。3. 編寫程序,利用功能鍵實(shí)現(xiàn)字符的垂直滾動(dòng)和水平滾動(dòng)等效果顯示。顯示字符為:“1.姓名全拼 2.專業(yè)全拼+學(xué)號(hào) 3.MCS-51 EXP8 4.LCD DISPLAY ”主程序靜態(tài)顯示“My information!”四、 實(shí)驗(yàn)原理液晶顯示的原理:采用的LCD顯示屏都是由不同部分組成的分層結(jié)構(gòu),位于最后面的一層是由熒光物質(zhì)組成的可以發(fā)射光線的背光層,背光層發(fā)出的光線在穿過(guò)第一層偏振過(guò)濾層之后進(jìn)入包含成千上萬(wàn)水晶

3、液滴的液晶層,液晶層中的水晶液滴都被包含在細(xì)小的單元格結(jié)構(gòu)中,一個(gè)或多個(gè)單元格構(gòu)成屏幕上的一個(gè)像素。當(dāng)LCD中的電極產(chǎn)生電場(chǎng)時(shí),液晶分子就會(huì)產(chǎn)生扭曲,從而將穿越其中的光線進(jìn)行有規(guī)則的折射,然后經(jīng)過(guò)第二層過(guò)濾層的過(guò)濾在屏幕上顯示出來(lái)。1. LCD1602采用標(biāo)準(zhǔn)的14引腳(無(wú)背光)或16引腳(帶背光)接口,各引腳接口說(shuō)明如表:編號(hào)符號(hào)引腳說(shuō)明編號(hào)符號(hào)引腳說(shuō)明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號(hào)14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負(fù)極2. 1602

4、液晶模塊內(nèi)部的控制器共有11條控制指令,如表所示:3. 芯片時(shí)序表:41602LCD的一般初始化(復(fù)位)過(guò)程 (1) 延時(shí)15ms。(2) 寫指令38H(不檢測(cè)忙信號(hào))。(3) 延時(shí)5ms。(4) 寫指令38H(不檢測(cè)忙信號(hào))。(5) 延時(shí)5ms。(6) 寫指令38H(不檢測(cè)忙信號(hào))。(7) 以后每次寫指令、讀/寫數(shù)據(jù)操作均需要檢測(cè)忙信號(hào)。(8) 寫指令38H:顯示模式設(shè)置。(9) 寫指令08H:顯示關(guān)閉。(10) 寫指令01H:顯示清屏。(11) 寫指令06H:顯示光標(biāo)移動(dòng)設(shè)置。(12) 寫指令0CH:顯示開(kāi)及光標(biāo)設(shè)置。五、實(shí)驗(yàn)步驟1. 用Proteus設(shè)計(jì)1602液晶顯示接口電路;2. 在

5、Keil C51中編寫液晶顯示控制程序,編譯通過(guò)后,與Proteus聯(lián)合調(diào)試;3. 按動(dòng)功能鍵,觀察字符及效果是否正確顯示。六、電路設(shè)計(jì)調(diào)試及程序 1) 實(shí)驗(yàn)電路2) 程序設(shè)計(jì)與調(diào)試靜態(tài)顯示專心-專注-專業(yè)#include<reg51.h>#define uchar unsigned char#define uint unsigned intuchar code table="1.Huang Xin "uchar code table1="2.Tongxin "sbit lcden=P22;sbit lcdrw=P21;sbit lcdrs=

6、P20;uchar num;void delay(uint z) uint x,y; for(x=z;x>0;x-) for(y=110;y>0;y-);void write_com(uchar com) lcdrs=0; P0=com; delay(5); lcden=1; delay(5); lcden=0;void write_data(uchar date) lcdrs=1; P0=date; delay(5); lcden=1; delay(5); lcden=0;void init() lcden=0; lcdrw=0; write_com(0x38); write_c

7、om(0x0c); write_com(0x06); write_com(0x01); write_com(0x80+0x00);void main() init(); delay(100); while(1) for(num=0;num<12;num+) write_data(tablenum); delay(200); write_com(0x02); write_com(0x80+0x40); for(num=0;num<16;num+) write_data(table1num); delay(200); while(1); 動(dòng)態(tài)顯示#include<reg51.h&

8、gt;#define uchar unsigned char#define uint unsigned intuchar code table="1.Huang Xin "uchar code table1="2.Tongxin "sbit lcden=P22;sbit lcdrw=P21;sbit lcdrs=P20;uchar num;void delay(uint z) uint x,y; for(x=z;x>0;x-) for(y=110;y>0;y-);void write_com(uchar com) lcdrs=0; P0=co

9、m; delay(5); lcden=1; delay(5); lcden=0;void write_data(uchar date) lcdrs=1; P0=date; delay(5); lcden=1; delay(5); lcden=0;void init() lcden=0; lcdrw=0; write_com(0x38); write_com(0x0f); write_com(0x06); write_com(0x01); write_com(0x80+0x00);void main() init(); delay(100); while(1) for(num=0;num<

10、12;num+) write_data(tablenum); delay(200); write_com(0x02); write_com(0x80+0x40); for(num=0;num<16;num+) write_data(table1num); delay(200); write_com(0x01); 按鍵實(shí)現(xiàn)不同效果#include<reg51.h>#define uchar unsigned char#define uint unsigned intuchar code table="My information!"uchar code ta

11、ble1="1.Huang Xin"uchar code table2="2.Tongxin "uchar code table3="3.MCS-51 EXP8"uchar code table4="4.LCD DISPLAY"uchar num,i,j;uchar flag1,flag2,flag3,flag4;sbit k1=P30;sbit k2=P31;sbit k3=P32;sbit k4=P33;sbit lcden=P22;sbit lcdrw=P21;sbit lcdrs=P20;void dela

12、y(uint z) uint x,y; for(x=z;x>0;x-) for(y=110;y>0;y-);void write_com(uchar com) lcdrs=0; P0=com; delay(5); lcden=1; delay(5); lcden=0;void write_data(uchar date) lcdrs=1; P0=date; delay(5); lcden=1; delay(5); lcden=0;void init() lcden=0; lcdrw=0; write_com(0x38); write_com(0x0f); write_com(0x0

13、6); write_com(0x01); void main() init(); TMOD=0x01; TH0=(65536-10000)/256; TL0=(65536-10000)%256; EA=1; ET0=1; TR0=1; EX0=1; IT0=1; IP=0x05; EX1=1; IT1=1; delay(100); while(1) flag3=0; write_com(0x01); write_com(0x80+0x01); delay(50); for(num=0;num<15;num+) write_data(tablenum); delay(200); delay

14、(200); write_com(0x01); void display() if(k1=0) while(1) if(flag1=1) break; if(flag3=0)/ if(flag1=1)break;/控制返回 write_com(0x01); write_com(0x80+0x00); delay(50); for(num=0;num<11;num+) /顯示"1.Huang Xin" if(flag1=1) break; while(flag3=1) if(flag1=1)break; write_data(table1num); delay(200)

15、; write_com(0x80+0x40); for(num=0;num<16;num+)/顯示"2.Tongxin " if(flag1=1) break;while(flag3=1) if(flag1=1) break; write_data(table2num); delay(200); write_com(0x01); delay(200); write_com(0x80+0x00); for(num=0;num<16;num+)/顯示"2.Tongxin " if(flag1=1) break;while(flag3=1) if(

16、flag1=1)break; write_data(table2num);delay(200); write_com(0x80+0x40); for(num=0;num<13;num+) /顯示"3.MCS-51 EXP8" if(flag1=1) break;while(flag3=1) if(flag1=1)break; write_data(table3num);delay(200); write_com(0x01); write_com(0x80+0x00); for(num=0;num<13;num+) /顯示"3.MCS-51 EXP8&q

17、uot; if(flag1=1) break;while(flag3=1) if(flag1=1)break; write_data(table3num);delay(200); delay(200);if(flag1=1) break; write_com(0x80+0x40); for(num=0;num<13;num+) /顯示"4.LCD DISPLAY" if(flag1=1) break; while(flag3=1) if(flag1=1)break; write_data(table4num);delay(200); write_com(0x01);

18、write_com(0x80+0x00); for(num=0;num<13;num+) /顯示"4.LCD DISPLAY" if(flag1=1) break;while(flag3=1) if(flag1=1)break; write_data(table4num);delay(200); write_com(0x80+0x40); for(num=0;num<11;num+) /顯示"1.Huang Xin" if(flag1=1) break;while(flag3=1) if(flag1=1)break; write_data(t

19、able1num);delay(200); flag3=0; flag1=0;/清標(biāo)志位 write_com(0x01);/清屏 if(k2=0) /if(flag1=1)break; write_com(0x01);/清屏 write_com(0x80+0x00); for(num=0;num<11;num+) /顯示"1.Huang Xin" if(flag1=1)break;write_data(table1num);delay(50); write_com(0x80+0x10); for(num=0;num<16;num+)/顯示"2.Tongxin " if(flag1=1)break; write_data(table2num);delay(50); write_com(0x02); write_com(0x80+0x40); for(num=0;num<13;num+) /顯示"3.MCS-51 EXP8" if(flag1=1)break; write_data(table3num);delay(50); write_com(0x80+0x50); for(num=0;num<13;num+) /顯示&quo

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論