日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]   一、矩陣式鍵盤    1.工作原理    矩陣式鍵盤由行線和列線組成,按鍵位于行、列線的交叉點(diǎn)上。一個(gè)4x4的行、列結(jié)構(gòu)可以構(gòu)成16只按鍵的鍵盤,在按鍵數(shù)量較多的場合,矩陣式鍵盤比獨(dú)立式鍵盤

 

  一、矩陣式鍵盤

1.工作原理

矩陣式鍵盤由行線和列線組成,按鍵位于行、列線的交叉點(diǎn)上。一個(gè)4x4的行、列結(jié)構(gòu)可以構(gòu)成16只按鍵的鍵盤,在按鍵數(shù)量較多的場合,矩陣式鍵盤比獨(dú)立式鍵盤,更節(jié)省I/0口。

如圖1所示,每只按鍵在行列線交節(jié)點(diǎn)上,一端接行線,另一端按列線,列線通過上拉電阻RP1接到VCC上,設(shè)QO~Q3為低電平,在沒有動(dòng)作時(shí)行線處于低電平狀態(tài),列線處于高電平狀態(tài),而當(dāng)有按鍵被接下時(shí),該鍵所在的列線的電平由高變低,這也是識別矩陣式鍵盤是否有鍵被接下的關(guān)鍵所在。要將行與列線信號配合起來并作適當(dāng)?shù)奶幚聿判小?br />
2.按鍵識別方法

下面以下圖中9號鍵被接下為例,來說明該按鍵是如何被識別出來的。當(dāng)9號鍵被接下時(shí),與之鍵相連的列線3的電平將由與此鍵相連的行線A的電平?jīng)Q定。由于在天鍵接下時(shí)列線處于高電平狀態(tài),如果讓所有行線也處于高電平,那么將不會引起列線電平的變化,也就沒法判斷有無鍵被接下,更不用說是判斷接下的是哪個(gè)鍵了。如果將所有行線置為低電平,則接下的鍵所在的列線將變成低電平,根據(jù)此變化能準(zhǔn)確判定該列有按鍵接下,但仍不能確定是哪個(gè)鍵被按下,即被接下的鍵在哪一行。若某時(shí)刻讓一條行線處于低電平,讓其余所有行線處于高電平,如A行為低電平,其余行為高電平,因?yàn)槭前存I9被按下,所以列3立刻變?yōu)榈碗娖?,?jù)此可確定是A行與列3交叉點(diǎn)的按鍵(即9號鍵)被按下。同理可以判斷出矩陣鍵盤中每一個(gè)被接下的鍵所在的行、列,即知道被按下的鍵名。

  根據(jù)上面的分析,可以總結(jié)出用單片機(jī)控制和讀取I/0的狀態(tài)來識別矩陣鍵盤按鍵的方法:

第一步,單片機(jī)通過總線地址adr0、adr1、adr2、adr3,分別掃描矩陣鍵盤的四條行線,看是否有按健被接下;

第二步,單片機(jī)調(diào)用延時(shí)去抖程序排除干擾因素,確認(rèn)有按鍵被接下,然后通過總線數(shù)據(jù)線ADO、AD1、AD2、AD3,讀回列線電平狀態(tài)再通過軟件讀出行線和列線的交叉點(diǎn),即找出被接下的鍵。

以上識別按鍵的方法稱為掃描法。

  二、液晶顯示

液晶顯示器微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧,在袖珍式儀表和低功耗系統(tǒng)中得到越廣泛的應(yīng)用。字符型液晶模塊采用5×7點(diǎn)陣圖形顯示字符,根據(jù)顯示的容量可以分為1行16個(gè)字、2行16個(gè)字、2行20個(gè)字等,下面以2行16個(gè)字的LMl602液晶模塊來介紹其編程方法。

LMl602采用標(biāo)準(zhǔn)的(14)腳接口,其引腳定義及功能如下表所示。VSS為地,VDD按5V正電源;VO為液晶顯示器對比度調(diào)整端,接正電源時(shí)對比度最弱,接地時(shí)對比度最高,對比度過高時(shí)會產(chǎn)生“鬼影”,使用時(shí)可以通過一只1Oka的電位器來調(diào)整對比度;RS為寄存器選擇,為高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器;RW為讀寫信號線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和RW均為低電平時(shí)可以寫入指令或顯示地址,當(dāng)RS為低電平、RW為高電平時(shí)可以讀忙信號;當(dāng)RS為高電平、RW為低電平時(shí)可以寫入數(shù)據(jù)。E為使能端,當(dāng)E由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。DO~D7為8位雙向數(shù)據(jù)線。

LMl602液晶模塊內(nèi)部的字符發(fā)生存儲器CGROM內(nèi)存儲了160個(gè)不同的點(diǎn)陣字符圖形,包括阿拉伯?dāng)?shù)字、英文字母的大小寫、常用符號和日文假名等。每個(gè)字符都有一個(gè)固定的代碼,如大寫英文字母“A”的代碼是O1OOOOO1B(41H),只要顯示地址41H中的點(diǎn)陣字符圖形,使用者就能看到字母“A”。

引腳 符號引腳說明1VSS電源地2VDD電源正3VL液晶顯示偏壓信號4RS數(shù)據(jù) /命令選擇端(H/L)5R/W讀 /寫選擇端(H/L)6E使能信號7DOData I/08D1Data I/09D2Data I/010D3Data I/011D4Data I/012D5Data I/013D6Data I/014D7Data I/015BLA背光源正極16BLK背光源負(fù)極

  2.基本操作時(shí)序

讀狀態(tài):輸入RS=L、RW=H、E=H輸出DO~D7=狀態(tài)字

寫指令:輸入RS=L、RW=L、DO~D7=指令碼、E=高脈沖輸出無

讀數(shù)據(jù):輸入RS=H、RW=H、E=H輸出DO~D7=數(shù)據(jù)

寫數(shù)據(jù):輸入RS=H、RW=L、DO~D7=數(shù)據(jù)、E=高脈沖輸出無

3.初始化流程

初始化過程(復(fù)位過程)

延時(shí)15ms

寫指令38H(不檢測忙信號)

延時(shí)5ms寫指令38H

(不檢測忙信號)

延時(shí)5ms

寫指令38H(不檢測忙信號)

延時(shí)5ms

寫指令38H(不檢測忙信號)

  說明:以后每次寫指令、讀/寫數(shù)據(jù)操作之前均需檢測忙信號。

寫指令38H:顯示模式設(shè)置

寫指令08H:顯示關(guān)閉

寫指令01H:顯示清屏

寫指令06H:顯示光標(biāo)移動(dòng)設(shè)置

寫指令0CH:顯示開及光標(biāo)設(shè)置

給出以上具體操作時(shí)序主要是為了幫助大家更好地理解LCD驅(qū)動(dòng)程序,并按照基本初始化流程書寫驅(qū)動(dòng)程序。驅(qū)動(dòng)程序沒不需要每次都編寫,需要使用時(shí),只要把以前編寫的驅(qū)動(dòng)程序作為頭文件調(diào)用即可。液晶驅(qū)動(dòng)程序見后邊附程序。

三、單片機(jī)總線模式鍵盤檢測與液晶顯示總體電路

下圖中的總線鍵盤主要是用于制作大鍵盤。單片機(jī)通過74LS138與74LS573進(jìn)行總線模式擴(kuò)展,使鍵盤掃描和液晶顯示共用數(shù)據(jù)口通過地址信號分別控制與二者間的數(shù)據(jù)傳輸,以充分地利用單片機(jī)的I/O口資源。

 

  四、按鍵程序流程圖

按鍵程序流程如下圖所示。

  本實(shí)驗(yàn)在已Proteus仿真軟件上驗(yàn)證通過。通過Keil軟件進(jìn)行編程,然后將生成的Hex文件加載到51單片機(jī)中,就能觀察到液晶屏顯示的實(shí)驗(yàn)現(xiàn)象內(nèi)容。在矩陣鍵盤上按下任意鍵,在液晶顯示器上就會以移位顯示的方式看到軟件定義的鍵值?!?br />
鍵盤和顯示器是單片機(jī)應(yīng)用系統(tǒng)經(jīng)常使用的人機(jī)交互界面,此實(shí)驗(yàn)可以幫助單片機(jī)初學(xué)者了解總線模式,學(xué)會用總線模式實(shí)現(xiàn)鍵盤掃描與液晶顯示的技術(shù)。

 

 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉