單片機(jī)顯示和鍵盤技術(shù)_第1頁
單片機(jī)顯示和鍵盤技術(shù)_第2頁
單片機(jī)顯示和鍵盤技術(shù)_第3頁
單片機(jī)顯示和鍵盤技術(shù)_第4頁
單片機(jī)顯示和鍵盤技術(shù)_第5頁
已閱讀5頁,還剩29頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)顯示和鍵盤技術(shù)第1頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與LED數(shù)碼管接口LED數(shù)碼管結(jié)構(gòu)及原理 第2頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與LED數(shù)碼管接口LED數(shù)碼管結(jié)構(gòu)及原理 第3頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與LED數(shù)碼管接口LED數(shù)碼管字型編碼 若將數(shù)值0送至單片機(jī)的P1口,數(shù)碼管上不會顯示數(shù)字“0”。顯然,要使數(shù)碼管顯示出數(shù)字或字符,直接將相應(yīng)的數(shù)字或字符送至數(shù)碼管的段控制端是不行的,必須使段控制端輸出相應(yīng)的字形編碼。將單片機(jī)P1口的P1.0、P1.1 P1.7八個引腳依次與數(shù)碼管的a、bf、dp

2、八個段控制引腳相連接。如果使用的是共陽極數(shù)碼管,COM端接+5V,要顯示數(shù)字“0”,則數(shù)碼管的a、b、c、d、e、f六個段應(yīng)點(diǎn)亮,其它段熄滅,需向P1口傳送數(shù)據(jù)11000000B(C0H),該數(shù)據(jù)就是與字符“0”相對應(yīng)的共陽極字型編碼。若共陰極的數(shù)碼管COM端接地,要顯示數(shù)字“1”,則數(shù)碼管的b、c兩段點(diǎn)亮,其他段熄滅,需向P1口傳送數(shù)據(jù)00000110(06H),這就是字符“1”的共陰極字型碼了。第4頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與LED數(shù)碼管接口LED靜態(tài)顯示 靜態(tài)顯示是指數(shù)碼管顯示某一字符時,相應(yīng)的發(fā)光二極管恒定導(dǎo)通或恒定截止。這種顯示方式的各位數(shù)碼管的公

3、共端恒定接地(共陰極)或+5V(共陽極)。每個數(shù)碼管的八個段控制引腳分別與一個八位I/O端口相連。只要I/O端口有顯示字型碼輸出,數(shù)碼管就顯示給定字符,并保持不變,直到I/O口輸出新的段碼。 第5頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與LED數(shù)碼管接口LED靜態(tài)顯示 第6頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與LED數(shù)碼管接口LED動態(tài)顯示 第7頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與LED數(shù)碼管接口LED動態(tài)顯示 動態(tài)顯示是一種按位輪流點(diǎn)亮各位數(shù)碼管的顯示方式,即在某一時段,只讓其中一位數(shù)碼管“位選端”有效,并送出相應(yīng)的

4、字型顯示編碼。此時,其它位的數(shù)碼管因“位選端”無效而都處于熄滅狀態(tài);下一時段按順序選通另外一位數(shù)碼管,并送出相應(yīng)的字型顯示編碼,依此規(guī)律循環(huán)下去,即可使各位數(shù)碼管分別間斷地顯示出相應(yīng)的字符。這一過程稱為動態(tài)掃描顯示。 第8頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二LED大屏幕顯示器和接口 LED大屏幕顯示器結(jié)構(gòu)及原理LED點(diǎn)陣顯示器是把很多LED發(fā)光二極管按矩陣方式排列在一起,通過對每個LED進(jìn)行發(fā)光控制,完成各種字符或圖形的顯示。最常見的LED點(diǎn)陣顯示模塊有57(5列7行),79(7列9行),88(8列8行)結(jié)構(gòu)。LED點(diǎn)陣由一個一個的點(diǎn)(LED發(fā)光二極管)組成,總點(diǎn)數(shù)為行數(shù)與

5、列數(shù)之積,引腳數(shù)為行數(shù)與列數(shù)之和。第9頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二LED大屏幕顯示器和接口 LED大屏幕顯示器結(jié)構(gòu)及原理第10頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二LED大屏幕顯示器和接口 LED大屏幕顯示器結(jié)構(gòu)及原理“大”字顯示字型碼示意圖第11頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二LED大屏幕顯示器和接口 LED大屏幕顯示器結(jié)構(gòu)及原理顯示字符“大”的過程如下:先給第一行送高電平(行高電平有效),同時給8列送11110111(列低電平有效);然后給第二行送高電平,同時給8列送11110111,最后給第八行送高電平,同時給8列送1

6、1111111。每行點(diǎn)亮延時時間為1ms,第八行結(jié)束后再從第一行開始循環(huán)顯示。利用視覺駐留現(xiàn)象,人們看到的就是一個穩(wěn)定的圖形。第12頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二LED大屏幕顯示器和接口 LED大屏幕顯示器接口第13頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二LED大屏幕顯示器和接口 LED大屏幕顯示器擴(kuò)展接口第14頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊Vss: +5V電源管腳

7、(Vcc)VDD: 地管腳(GND)Vo: 液晶顯示驅(qū)動電源(0V5V)第15頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊DB0DB7:數(shù)據(jù)線,可以用8位連接,也可以只用高4位連接,節(jié)約單片機(jī)資源,本實(shí)驗(yàn)中采用的是八位連接方法。第16頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5

8、DB4DB7DB6KLCD模塊A:背光控制正電源K:背光控制地第17頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊單片機(jī)與LCD模塊之間有四種基本操作: 寫命令 讀狀態(tài) 寫顯示數(shù)據(jù) 讀顯示數(shù)據(jù)第18頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 12345678910111213141516VSSVDDVORSR/WEDB0DB1ADB3DB2DB5DB4DB7DB6KLCD模塊RSR/

9、W操作00寫命令操作(初始化、光標(biāo)定位等)01讀狀態(tài)操作(讀忙標(biāo)志)10寫數(shù)據(jù)操作(要顯示的內(nèi)容)11讀數(shù)據(jù)操作(可以把顯示存儲區(qū)中的數(shù)據(jù)反讀出來)第19頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符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ī)之間將進(jìn)行一次數(shù)據(jù)交換第20頁,

10、共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 讀狀態(tài)操作 狀態(tài)字的最高位的BF為忙標(biāo)志位,1表示LCD正在忙,0表示不忙。通過判斷最高位BF的0、1狀態(tài),就可以知道LCD當(dāng)前是否處于忙狀態(tài),如果LCD一直處于忙狀態(tài),則繼續(xù)查詢等待,否則進(jìn)行下面的操作。查詢忙狀態(tài)程序段如下:do i=lcd_r_start(); / 調(diào)用讀狀態(tài)函數(shù),讀取LCD狀態(tài)字 i&=0 x80; / 采用與操作屏蔽掉低7位 delay(2);/ 延時 while(i!=0); / LCD忙,繼續(xù)查詢,否則退出循環(huán)第21頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液

11、晶顯示和接口 寫命令操作 LCD上電時,都必須按照一定的時序?qū)CD進(jìn)行初始化操作,主要任務(wù)是設(shè)置LCD的工作方式、顯示狀態(tài)、清屏、輸入方式、光標(biāo)位置等。 第22頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 寫命令操作 void lcd_w_cmd(unsigned char com) unsigned char i; do / 查LCD忙操作 i=lcd_r_start(); / 調(diào)用讀狀態(tài)字函數(shù) i=i&0 x80; / 與操作屏蔽掉低7位 delay(2); while(i!=0); / LCD忙,繼續(xù)查詢,否則退出循環(huán) RW=0; delay1()

12、; RS=0; / RW=1,RS=0,寫LCD命令字 delay1(); E=1; /E端時序 delay1(); P1=com; /將com中的命令字寫入LCD數(shù)據(jù)口 delay1(); E=0; delay1(); RW=1; delay(255);第23頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 寫命令操作 編號指令名稱控制信號命令字D7 D6 D5 D4 D3 D2 D1 D01清屏0 00 0 0 0 0 0 0 12歸home位0 00 0 0 0 0 0 1 3輸入方式設(shè)置0 00 0 0 0 0 1 I/D S4顯示狀態(tài)設(shè)置0 00 0

13、 0 0 1 D C B5光標(biāo)畫面滾動0 00 0 0 1 S/C R/L 6工作方式設(shè)置0 00 0 1 DL N F 7CGRAM地址設(shè)置0 00 1 A5 A4 A3 A2 A1 A08DDRAM地址設(shè)置0 01 A6 A5 A4 A3 A2 A1 A09讀BF和AC0 1BF AC6 AC5 AC4 AC3 AC2 AC1 AC0第24頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 初始化操作 LCD初始工作方式設(shè)置顯示狀態(tài)設(shè)置清屏返回輸入方式設(shè)置001DL N F * *設(shè)置單片機(jī)與LCD接口數(shù)據(jù)位數(shù)DL、顯示行數(shù)N、字型FDL=1:8位、DL=0

14、:4位; N=1:2行、N=0:1行F=1:510、F=0:57例:00111000B(38H)設(shè)置數(shù)據(jù)位數(shù)8位,2行顯示,57點(diǎn)陣字符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è)置為第一行第一列000001 I/D S設(shè)光標(biāo)移動方向并確定整體顯示是否移動I/D=1:增量方式右移、I/D=0:減量方式左移S=1:移位、S=0:不移位例:00000110B(06H)設(shè)置光標(biāo)增量方式右移,顯示字符不移動第25頁,共34

15、頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 寫數(shù)據(jù)操作 光標(biāo)位置與相應(yīng)命令字 列行 123456789101112131415161808182838485868788898A8B8C8D8E8F2C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF注:表中命令字以十六進(jìn)制形式給出,該命令字就是與LCD顯示位置相對應(yīng)的DDRAM地址。第26頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二字符LCD 液晶顯示和接口 void lcd_w_dat(unsigned char dat) unsigned char i; do / 查忙操作 i=lcd

16、_r_start();/ 調(diào)用讀狀態(tài)字函數(shù) i=i&0 x80; / 與操作屏蔽掉低7位 delay(2); while(i!=0); / LCD忙,繼續(xù)查詢,否則退出循環(huán) RW=0; delay1(); RS=1;/ RW=1,RS=0,寫LCD命令字 delay1(); E=1;/ E端時序 delay1(); P1=dat;/ 將dat中的顯示數(shù)據(jù)寫入LCD數(shù)據(jù)口 delay1(); E=0; delay1(); RW=1; delay(255);第27頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與鍵盤接口第28頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單

17、片機(jī)與鍵盤接口按鍵按照結(jié)構(gòu)原理可分為兩類,一類是觸點(diǎn)式開關(guān)按鍵,如機(jī)械式開關(guān)、導(dǎo)電橡膠式開關(guān)等;另一類是無觸點(diǎn)開關(guān)按鍵,如電氣式按鍵,磁感應(yīng)按鍵等。前者造價低,后者壽命長。按鍵按照接口原理可分為編碼鍵盤與非編碼鍵盤兩類。這兩類鍵盤的主要區(qū)別是識別鍵符及給出相應(yīng)鍵碼的方法。編碼鍵盤主要是用硬件來實(shí)現(xiàn)對按鍵的識別,硬件結(jié)構(gòu)復(fù)雜;非編碼鍵盤主要是由軟件來實(shí)現(xiàn)按鍵的定義與識別,硬件結(jié)構(gòu)簡單,軟件編程量大。這里將要介紹的獨(dú)立式按鍵和矩陣式鍵盤都是非編碼鍵盤。第29頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與鍵盤接口按鍵的去抖機(jī)械式按鍵在按下或釋放時,由于機(jī)械彈性作用的影響,通常伴隨有一定時間的觸點(diǎn)機(jī)械抖動,然后其觸點(diǎn)才穩(wěn)定下來,抖動時間一般為510ms,在觸點(diǎn)抖動期間檢測按鍵的通與斷狀態(tài),可能導(dǎo)致判斷出錯。第30頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與鍵盤接口按鍵的去抖 (a)檢測按鍵 (b)釋放按鍵按鍵去抖流程圖第31頁,共34頁,2022年,5月20日,2點(diǎn)52分,星期二單片機(jī)與鍵盤接口獨(dú)立式按鍵 獨(dú)立式按鍵電路配置靈活,軟件結(jié)構(gòu)簡單,但每個按鍵必須占用一根I/O口線,因此,在按鍵較多時,I/O口線

溫馨提示

  • 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

提交評論