第5章顯示和鍵盤接口技術(shù)work2007_第1頁
第5章顯示和鍵盤接口技術(shù)work2007_第2頁
第5章顯示和鍵盤接口技術(shù)work2007_第3頁
第5章顯示和鍵盤接口技術(shù)work2007_第4頁
第5章顯示和鍵盤接口技術(shù)work2007_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

本章內(nèi)容單片機與LED數(shù)碼管接口LED大屏幕顯示器和接口字符LCD液晶顯示和接口單片機與鍵盤接口第5章顯示和鍵盤接口技術(shù)5.1單片機與LED數(shù)碼管接口5.1.1LED數(shù)碼管結(jié)構(gòu)及原理

單片機與LED數(shù)碼管接口2.LED數(shù)碼管結(jié)構(gòu)及原理

共陽結(jié)構(gòu)共陰結(jié)構(gòu)單片機與LED數(shù)碼管接口3.LED數(shù)碼管字型編碼

若將數(shù)值0送至單片機的P1口,數(shù)碼管上不會顯示數(shù)字“0”。顯然,要使數(shù)碼管顯示出數(shù)字或字符,直接將相應(yīng)的數(shù)字或字符送至數(shù)碼管的段控制端是不行的,必須使段控制端輸出相應(yīng)的字形編碼。將單片機P1口的P1.0、P1.1…P1.7八個引腳依次與數(shù)碼管的a、b…f、dp八個段控制引腳相連接。如果使用的是共陽極數(shù)碼管,COM端接+5V,要顯示數(shù)字“0”,則數(shù)碼管的a、b、c、d、e、f六個段應(yīng)點亮,其它段熄滅,需向P1口傳送數(shù)據(jù)11000000B(C0H),該數(shù)據(jù)就是與字符“0”相對應(yīng)的共陽極字型編碼。若共陰極的數(shù)碼管COM端接地,要顯示數(shù)字“1”,則數(shù)碼管的b、c兩段點亮,其他段熄滅,需向P1口傳送數(shù)據(jù)00000110(06H),這就是字符“1”的共陰極字型碼了。單片機與LED數(shù)碼管接口3.LED數(shù)碼管字型編碼

表5.2數(shù)碼管字型編碼(P133)單片機與LED數(shù)碼管接口5.1.2LED靜態(tài)顯示

靜態(tài)顯示是指數(shù)碼管顯示某一字符時,相應(yīng)的發(fā)光二極管恒定導(dǎo)通或恒定截止。這種顯示方式的各位數(shù)碼管的公共端恒定接地(共陰極)或+5V(共陽極)。每個數(shù)碼管的八個段控制引腳分別與一個八位I/O端口相連。只要I/O端口有顯示字型碼輸出,數(shù)碼管就顯示給定字符,并保持不變,直到I/O口輸出新的段碼。

單片機與LED數(shù)碼管接口LED靜態(tài)顯示

單片機與LED數(shù)碼管接口5.13LED動態(tài)顯示

單片機與LED數(shù)碼管接口LED動態(tài)顯示工作原理

動態(tài)顯示是一種按位輪流點亮各位數(shù)碼管的顯示方式,即在某一時段,只讓其中一位數(shù)碼管“位選端”有效,并送出相應(yīng)的字型顯示編碼。此時,其它位的數(shù)碼管因“位選端”無效而都處于熄滅狀態(tài);下一時段按順序選通另外一位數(shù)碼管,并送出相應(yīng)的字型顯示編碼,依此規(guī)律循環(huán)下去,即可使各位數(shù)碼管分別間斷地顯示出相應(yīng)的字符。這一過程稱為動態(tài)掃描顯示。

5.2LED大屏幕顯示器和接口

5.2.1LED大屏幕顯示器結(jié)構(gòu)及原理LED點陣顯示器是把很多LED發(fā)光二極管按矩陣方式排列在一起,通過對每個LED進(jìn)行發(fā)光控制,完成各種字符或圖形的顯示。最常見的LED點陣顯示模塊有5×7(5列7行),7×9(7列9行),8×8(8列8行)結(jié)構(gòu)。LED點陣由一個一個的點(LED發(fā)光二極管)組成,總點數(shù)為行數(shù)與列數(shù)之積,引腳數(shù)為行數(shù)與列數(shù)之和。LED大屏幕顯示器和接口

LED大屏幕顯示器結(jié)構(gòu)及原理LED大屏幕顯示器和接口

LED大屏幕顯示器結(jié)構(gòu)及原理“大”字顯示字型碼示意圖LED大屏幕顯示器和接口

LED大屏幕顯示器結(jié)構(gòu)及原理顯示字符“大”的過程如下:先給第一行送高電平(行高電平有效),同時給8列送11110111(列低電平有效);然后給第二行送高電平,同時給8列送11110111,……最后給第八行送高電平,同時給8列送11111111。每行點亮延時時間為1ms,第八行結(jié)束后再從第一行開始循環(huán)顯示。利用視覺駐留現(xiàn)象,人們看到的就是一個穩(wěn)定的圖形。LED大屏幕顯示器和接口

LED大屏幕顯示器接口LED大屏幕顯示器和接口

LED大屏幕顯示器擴展接口5.3字符LCD液晶顯示和接口

5.31LCD顯示器1、概述

LCD(LiquidCrystalDisplay)是液晶顯示器的縮寫,液晶顯示器是一種被動式的顯示器,即液晶本身并不發(fā)光,而是利用液晶經(jīng)過處理后能改變光線通過方向的特性,而達(dá)到白底黑字或黑底白字顯示的目的。液晶顯示器具有功耗低、抗干擾能力強等優(yōu)點,廣泛地應(yīng)用在儀器儀表和控制系統(tǒng)中。本節(jié)介紹1602模塊式(LCM)點陣式LCD的原理與使用方法。2、1602型液晶顯示模塊的外觀如下:3、LCD液晶顯示器引腳及其功能

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊Vss:+5V電源管腳(Vcc)VDD:

地管腳(GND)Vo:

液晶顯示驅(qū)動電源(0V~5V)LCD液晶顯示器的引腳

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊DB0~DB7:數(shù)據(jù)線,可以用8位連接,也可以只用高4位連接,節(jié)約單片機資源,本實驗中采用的是八位連接方法。LCD液晶顯示器的引腳

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊A:背光控制正電源K:背光控制地LCD液晶顯示器的引腳

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊單片機與LCD模塊之間有四種基本操作:

寫命令 讀狀態(tài) 寫顯示數(shù)據(jù) 讀顯示數(shù)據(jù)LCD液晶顯示器的引腳

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊RSR/W操作00寫命令操作(初始化、光標(biāo)定位等)01讀狀態(tài)操作(讀忙標(biāo)志)10寫數(shù)據(jù)操作(要顯示的內(nèi)容)11讀數(shù)據(jù)操作(可以把顯示存儲區(qū)中的數(shù)據(jù)反讀出來)LCD液晶顯示器的引腳

12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊RS:數(shù)據(jù)和指令選擇控制端,RS=0:命令/狀態(tài);RS=1:數(shù)據(jù)R/W:讀寫控制線,R/W=0:寫操作;R/W=1:讀操作E:數(shù)據(jù)讀寫操作控制位,E線向LCD模塊發(fā)送一個脈沖,LCD模塊與單片機之間將進(jìn)行一次數(shù)據(jù)交換字符LCD液晶顯示和接口

寫命令操作編號指令名稱控制信號命令字D7D6D5D4D3D2D1D01清屏00000000012歸home位000000001×3輸入方式設(shè)置00000001I/DS4顯示狀態(tài)設(shè)置0000001DCB5光標(biāo)畫面滾動000001S/CR/L××6工作方式設(shè)置00001DLNF××7CGRAM地址設(shè)置0001A5A4A3A2A1A08DDRAM地址設(shè)置001A6A5A4A3A2A1A09讀BF和AC01BFAC6AC5AC4AC3AC2AC1AC0字符LCD液晶顯示和接口

寫數(shù)據(jù)操作

光標(biāo)位置與相應(yīng)命令字

列行123456789101112131415161808182838485868788898A8B8C8D8E8F2C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF注:表中命令字以十六進(jìn)制形式給出,該命令字就是與LCD顯示位置相對應(yīng)的DDRAM地址。字符LCD液晶顯示和接口

初始化操作LCD初始工作方式設(shè)置顯示狀態(tài)設(shè)置清屏返回輸入方式設(shè)置001DLNF**—設(shè)置單片機與LCD接口數(shù)據(jù)位數(shù)DL、顯示行數(shù)N、字型FDL=1:8位、DL=0:4位;N=1:2行、N=0:1行F=1:5×10、F=0:5×7例:00111000B(38H)設(shè)置數(shù)據(jù)位數(shù)8位,2行顯示,5×7點陣字符00001DCB—設(shè)整體顯示開關(guān)D、光標(biāo)開關(guān)C、光標(biāo)位的字符閃耀BD=1:開顯示;C=0:不顯示光標(biāo);B=0:光標(biāo)位字符不閃爍例:00001100B(0CH)打開LCD顯示,光標(biāo)不顯示,光標(biāo)位字符不閃爍清屏命令字01H,將光標(biāo)設(shè)置為第一行第一列000001I/DS—設(shè)光標(biāo)移動方向并確定整體顯示是否移動I/D=1:增量方式右移、I/D=0:減量方式左移S=1:移位、S=0:不移位例:00000110B(06H)設(shè)置光標(biāo)增量方式右移,顯示字符不移動5.3.2字符LCD液晶顯示器與單片機的接口

5.3.3字符LCD液晶顯示器的應(yīng)用

1、字符LCD液晶顯示器的驅(qū)動程序voidwrite_com(ucharcom); //寫命令函數(shù)voidwrite_dat(uchardat); //寫數(shù)據(jù)函數(shù)voidlcd_init(); //LCD初始化子程序voidSetCur(ucharPara); //設(shè)置光標(biāo)類型//設(shè)置光標(biāo)位置voidLcdPos(ucharxPos,ucharyPos);

//顯示一個字符voidWriteChar(ucharc,ucharxPos,ucharyPos);//顯示一個字符串voidWriteString(uchar*str,ucharxPos,ucharyPos);字符LCD液晶顯示的實際應(yīng)用-顯示字符串

voidmain(){uchars1[]="Welcome...!!";uchars2[]="_GuangZhouChina_";uchars3[]="2012-06-23";lcd_init();SetCur(CurNoFlash); //不顯示光標(biāo)

WriteString(s1,0,0);//在0列0行開始顯示s1字符串

WriteString(s3,0,1);//在0列1行開始顯示s3字符串

while(1){;}}字符LCD液晶顯示的實際應(yīng)用-數(shù)字電子鐘

voidmain(){uchars1[]="Welcome...!!";uchars2[]="2012-11-13";lcd_init();//LCD初始化

timer0_init();//定時器0初始化

SetCur(NoCur); //無光標(biāo)顯示

WriteString(s1,0,0);//在0行0列顯示:Welcome...!!delay_1ms(5000);//延時5秒

while(1){WriteString(s2,0,0);//在0行0列顯示:2012-11-13WriteChar(date[5],4,1);//在1行4列顯示:時的十位

WriteChar(date[4],5,1);//在1行5列顯示:時的個位

WriteChar(‘:’,6,1);//在1行6列顯示:“:”

WriteChar(date[3],7,1);//顯示分鐘

WriteChar(date[2],8,1);WriteChar(':',9,1);WriteChar(date[1],10,1);//顯示秒鐘

WriteChar(date[0],11,1);}}5.4單片機與鍵盤接口5.4.1按鍵簡介1.常見的按鍵開關(guān)彈性按鍵彈性按鍵撥動開關(guān)電源開關(guān)撥碼開關(guān)5.4單片機與鍵盤接口按鍵按照結(jié)構(gòu)原理可分為兩類,一類是觸點式開關(guān)按鍵,如機械式開關(guān)、導(dǎo)電橡膠式開關(guān)等;另一類是無觸點開關(guān)按鍵,如電氣式按鍵,磁感應(yīng)按鍵等。前者造價低,后者壽命長。按鍵按照接口原理可分為編碼鍵盤與非編碼鍵盤兩類。這兩類鍵盤的主要區(qū)別是識別鍵符及給出相應(yīng)鍵碼的方法。編碼鍵盤主要是用硬件來實現(xiàn)對按鍵的識別,硬件結(jié)構(gòu)復(fù)雜;非編碼鍵盤主要是由軟件來實現(xiàn)按鍵的定義與識別,硬件結(jié)構(gòu)簡單,軟件編程量大。這里將要介紹的獨立式按鍵和矩陣式鍵盤都是非編碼鍵盤。2.按鍵的去抖機械式按鍵在按下或釋放時,由于機械彈性作用的影響,通常伴隨有一定時間的觸點機械抖動,然后其觸點才穩(wěn)定下來,抖動時間一般為510ms,在觸點抖動期間檢測按鍵的通與斷狀態(tài),可能導(dǎo)致判斷出錯。3.按鍵的去抖的思路

(a)檢測按鍵(b)釋放按鍵按鍵去抖流程圖5.4.2獨立式按鍵

獨立式按鍵電路配置靈活,軟件結(jié)構(gòu)簡單,但每個按鍵必須占用一根I/O口線,因此,在按鍵較多時,I/O口線浪費較大,不宜采用。1.獨立式按鍵硬件接口

2.獨立式按鍵程序設(shè)計1)按鍵有效的編程

ucharkey(){if(s0==1)return0;else{delay(10);if(s0==1)return0;elsereturn1;}}sbits0=P3^0;(S0==1)(S0==0)

2.獨立式按鍵程序設(shè)計2)抬鍵有效的編程

ucharkey(){if(s0==1)return0;//無按鍵

else//有按鍵

{delay(10);//延時10mSif(s0==1)return0;

else{

while(s0==0);//等待抬鍵

return1;}}}sbits0=P3^0;(S0==1)(S0==0)

2.獨

溫馨提示

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

評論

0/150

提交評論