課程學年設計4乘4矩陣鍵盤設計_第1頁
課程學年設計4乘4矩陣鍵盤設計_第2頁
課程學年設計4乘4矩陣鍵盤設計_第3頁
課程學年設計4乘4矩陣鍵盤設計_第4頁
課程學年設計4乘4矩陣鍵盤設計_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、學年設計報告設計題目4*4矩陣鍵盤設計所學專業(yè)網(wǎng)絡工程指導教師2012年8月30日學年設計任務書學年設計題目4*4矩陣鍵盤設計組長學號班級組別專業(yè)網(wǎng)絡工程組員指導教師學#:設計目的簡單應用系統(tǒng)設計與開發(fā),設計一個4*4矩陣鍵盤學年設計所需環(huán)境系統(tǒng)劃、境:WindowsXP運行環(huán)境:KeilC、Proteus仿真軟件學年設計任務要求數(shù)碼管顯示4*4矩陣鍵盤按鍵號,按下任意鍵是,數(shù)碼管都會顯示其鍵的序號,掃描程序首先判斷按鍵發(fā)生在哪一列,然后根據(jù)所發(fā)生的行附加/、同的值,從而得到按鍵的序號。學年設計工作進度計劃序號起止日期工作內容分工情況2012/8/25-2012/8/26資料查找模塊全體組員2

2、012/8/26-2012/8/27討論設計思路模塊全體組員2012/8/27-2012/8/28電路圖構建模塊時鐘和復位電路設計矩陣鍵盤電路設計顯示部分設計(4)2012/8/28-2012/8/29程序編寫模塊完成程序設計與調試2012/8/29-2012/8/30整合與調試模塊完成電路與程序的整合2012/8/30-2012/8/31文檔撰寫模塊全體組員指導教師簽字:年月日系(教研室)審核意見:系(教研室)主任簽字:年月日目錄摘要41緒論41.1 研究背景41.2 主要工作41.3 本文結構42總體設計41.1 需求分析41.2 系統(tǒng)總體設計51.3 主要設計軟件介紹51 PROTEUS

3、軟件簡介51 KEIL簡介53硬件電路設計6case 1: 芯片選型6case 1: 時鐘和復位電路6case 1: 矩陣式鍵盤電路7case 1: 顯示電路73.5蜂鳴器電路83.6總電路84系統(tǒng)軟件設計9軟件流程圖9程序代碼95系統(tǒng)測試與數(shù)據(jù)分析126結束語14致謝14參考文獻144*4矩陣鍵盤設計摘要:隨著21世紀的到來,電子信息行業(yè)將是人類社會的高科技行業(yè)之一,式設施現(xiàn)代化的基礎,也是人類通往科技巔峰的直通路。電子行業(yè)的發(fā)展從長遠來看很重要,但最主要的還是科技問題。矩陣式鍵盤提高效率進行按鍵操作管理有效方法,它可以提高系統(tǒng)準確性,有利于資源的節(jié)約,降低對操作者本身素質的要求。是它能準時

4、、實時、高效地顯示按鍵信息,以提高工作效率和資源利用率。矩陣式鍵盤乃是當今使用最為廣泛的鍵盤模式,該系統(tǒng)以N個端口連接控制N*N個按鍵,顯示在LED數(shù)碼管上。單片機控制依據(jù)這是鍵盤顯示系統(tǒng),該系統(tǒng)可以對不同的按鍵進行實時顯示,其核心是單片機和鍵盤矩陣電路部分,主要對按鍵與顯示電路的關系、矩陣式技術及設備系統(tǒng)的硬件、軟件等各個部分進行實現(xiàn)。4*4矩陣式鍵盤采用AT89C51單片機為核心,主要由矩陣式鍵盤電路、譯碼電路、顯示電路等組成,軟件選用C語言編程。單片機將檢測到的按鍵信號轉換成數(shù)字量,顯示于LED顯示器上。該系統(tǒng)靈活性強,易于操作,可靠性高,將會有更廣闊的開發(fā)前景。關鍵詞:AT89C51;

5、單片機;蜂鳴器;顯示電路;矩陣鍵盤;1緒論研究背景隨著21世紀的到來,以前的單個端口連接的按鍵已經(jīng)不能滿足人們在大型或公共場合的需求。電子信息行業(yè)將是人類社會的高科技行業(yè)之一,4*4矩陣鍵盤設計是當今社會中使用的最廣的技術之一。鑒于此,研究人員通過不斷地實驗與研究開發(fā),最終研發(fā)出采用矩陣鍵盤設計的N個端口連接N*N個按鍵,來滿足人們的需求,對于這,我們本次的實驗在于設計驗證4*4矩陣鍵盤的功能。主要工作本論文主要研究單片機控制的鍵盤識別顯示系統(tǒng),分別對按鍵信息和顯示電路以及軟、硬件各個部分進行研究。按下任意鍵時,數(shù)碼管都會顯示其鍵的序號,掃描程序首先判斷按鍵發(fā)生在哪一列,然后根據(jù)所發(fā)生的行附加

6、不同的值,從而得到按鍵的序號。本文結構根據(jù)矩陣式鍵盤的特點,進行鍵盤控制系統(tǒng)的整體研究與設計;熟練掌握protues軟件的使用,并能夠按要求對設計的電路進行仿真,實現(xiàn)相應的功能;LED實時顯示按鍵的信息;采用軟件編程的方法實現(xiàn)按鍵信息的提取和顯示2總體設計需求分析矩陣鍵盤是提高效率進行按鍵操作管理的有效工具,它可以提高系統(tǒng)準確性,有利于資源的節(jié)約,降低對操作者本身素質的要求。它能準確、實時、高效地顯示按鍵信息,以提高工作效率和資源利用率。系統(tǒng)總體設計時鐘電路4*4矩陣健盤/*ATB9c52顯示器+復位電路圖2.2系統(tǒng)組成框主要設計軟件介紹本設計利用KEIL編程軟件對音樂盒源程序進行編程并調試,

7、配合PROTEUS仿真軟件對硬件進行仿真調試,兩種軟件的簡介如下。PROTEUS軟件簡介Proteus軟件是英國Labcenterelectronics公司出版的EDA工具軟件(該軟件中國總代理為廣州風標電子技術有限公司)。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。雖然目前國內推廣剛起步,但已受到單片機愛好者、從事單片機教學的教師、致力于單片機開發(fā)應用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調試到單片機與外圍電路協(xié)同仿真,一鍵切換到PCB設計,真正實現(xiàn)了從概念到產品的完整設計。是

8、目前世界上唯一將電路仿真軟件、PCB設計軟件和虛擬模型仿真軟件三合一的設計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即將增加Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器。KEIL簡介單片機開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序要變?yōu)镃PU可以執(zhí)行的機器碼有兩種方法,一種是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。機器匯編是通過匯編軟件將源程序變?yōu)闄C器碼,用于MCS-51

9、單片機的匯編軟件有早期的A51,隨著單片機開發(fā)技術的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開發(fā)MCS-51系列單片機的軟件,這從近年來各仿真機廠商紛紛宣布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調試器等在內的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。運行Keil軟件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空閑的硬盤空間、WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。掌握這一軟件的使用對于使用51系列單片機

10、的愛好者來說是十分必要白1如果你使用C語言編程,那么Keil幾乎就是你的不二之選(目前在國內你只能買到該軟件、而你買的仿真機也很可能只支持該軟件),即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調試工具也會令你事半功倍。KeilC51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。3硬件電路設計芯片選型AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROMFalshProgrammableandErasableReadOnlyMemory)的低電壓,高性能CMOS曲微處理器,俗稱單片機。該器件

11、采用ATMEL高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPUW閃爍存儲器組合在單個芯片中,ATMEL勺AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。德*XTAL1PC.0/AX)FD.1/701FC.2/W2PC.5MO5FD.3/706RSTPC.7/WMW德P2,1M13能37加&353433.近3031222326:S黨iiiSHiiiiiii27F102113124131450H?168-17,AT89C51圖2-1單片機AT89C51引腳圖時鐘和復位電路AT89C51中有一個用于構

12、成內部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或者陶瓷諧振器一起構成自然振蕩器。外接石英晶體及電容C1、C2接在放大器的反饋回路中構成并聯(lián)振蕩電路。對外接電容C1,C2雖然沒有什么嚴格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性。如果使用石英晶體,我們推薦電容使用30PF±10PF,而如果使用陶瓷振蕩器建議選擇40PF±10PF。用戶也可以采用外部時鐘。采用外部時鐘的電路如圖示。這種情況下,外部時鐘脈沖接到XTAL1端,即內部時鐘發(fā)生器的輸入

13、端,XTAL2則懸空。由于外部時鐘信號是通過一個2分頻觸發(fā)器后作為內部時鐘信號的,所以對外部時鐘信號的占空比沒有特殊要求,但最小高電平持續(xù)時間和最大的低電平持續(xù)時間應符合產品技術條件的要求。-TECT=-X1C2Tl-.特I,CRVfiTAL,-12KTAL2RSTPSEN土曾圖3.2時鐘和復位電路示意圖矩陣式鍵盤電路矩陣鍵盤又稱為行列式鍵盤,它用4條I/O線作為彳T線,4條I/O線作為列線組成的鍵盤。在行線和列線的每一個交叉點上設置一個按鍵。這樣鍵盤中按鍵個數(shù)是4X4個。這種行列式鍵盤結構有效提高單片機系統(tǒng)中I/O的利用率。如下圖所示:顯示電路本設計用單片機的P0口來控制LED顯示器的數(shù)字顯

14、示。當按鍵有按下時,LED數(shù)碼管將對應顯示出該音符數(shù)字或字母。從而可以通過手動和眼來確定所按的哪個音符,應該發(fā)出哪個音符的聲音如圖3.4所示。3.5蜂鳴器電路播放模式其實就是喇叭,它連接到3.6總電路圖3.4顯示電路示意圖P3.0口上,當有按鍵按下時,就會發(fā)出聲音。如下圖所示:RUIWEJiJUncqjimmnAE"圖3.6總電路示意圖4系統(tǒng)軟件設計軟件流程圖開始結果值化盤始.鍵初圖4.1軟件流程示意圖程序代碼#include<reg51.h>#defineucharunsignedchar#deflneuintunsignedint/段碼ucharcodeDSY_COD

15、E=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x00;sbitBEEP=P3A7;上次按鍵和當前按鍵的序號,該矩陣中序號范圍ucharPre_KeyNo=16,KeyNo=16;/延時voidDelayMS(uintx)uchari;while(x-)for(i=0;i<120;i+);/矩陣鍵盤掃描voidKeys_Scan()ucharTmp;P1=0x0f;高4位置0,放入4行DelayMS(1);Tmp=P1A0x0f;/按鍵后0f變成0000XXXX,X唯一的

16、0變?yōu)?switch(Tmp)判斷按鍵發(fā)生于03列的哪一列KeyNo=0;break;KeyNo=1;break;case4:KeyNo=2;break;case8:KeyNo=3;break;default:KeyNo=16;/無鍵按下P1=0xf0;/低4位置0,放入4列DelayMS(1);Tmp=P1>>4A0x0f;/按鍵后f0變成XXXX0000015,16表示無按鍵中一個為0,3個仍為1,通過異或把3個1變?yōu)?,X中有1個為0,三個仍為1;高4位轉移到低4位并異或得到改變的值switch(Tmp)/X03行分別附加起始值0,4,8,12(KeyNo+=0;break;

17、KeyNo+=4;break;case4:KeyNo+=8;break;case8:KeyNo+=12;/蜂鳴器voidBeep()(uchari;for(i=0;i<100;i+)(DelayMS(1);BEEP=BEEP;BEEP=0;/主程序voidmain()(P0=0x00;BEEP=0;while(1)(P1=0xf0;if(P1!=0xf0)Keys_Scan();/獲取鍵序號if(Pre_KeyNo!=KeyNo)(P0=DSY_CODEKeyNo;Beep();Pre_KeyNo=KeyNo;DelayMS(100);5系統(tǒng)測試與數(shù)據(jù)分析依次按下開關,數(shù)碼顯示管會對應顯

18、示出0f共16個數(shù)字IdbidiniJHs"如.*.一RTR-F-JJ«aieirET向ISfllJIfj-.nc-if-p-i.iPJ.naD£iaif-jj*TF(jJiTTp-ij-P-JjUTiFJjMfiTTi.*ki.Ti?kI*圖5-1初始界面PdkiMiI如JHkMbfrF&.'HMTPZItf-y*近11p箝金4蜂卬4F-J-M-I"除E"FJ-汨pj.ifniapjjJiTTWJTT叫寺(TipjmIF5FJ.TffT5-JJ圖5-2部分結果顯示j工CEV-iTH.-TFrT-E_.t_Jita.9PAMbC

19、-tdui«fiiIPaJ4fiiJ-xra.1MU如出“Ci方FtjMi-Cii;骷士才IMlW*PJ-M-iC-rarO.ETi1箝才er*3fj-.nc-Kf-M料M帥p-|,iPJ.iiTJi2fj-i-*iTFMaj£TT的ip叱煽9-lMTiM*FHXrfPTi.*向lEifk圖5-3部分結果顯不6結束語經(jīng)過一周左右時間的努力,我們小組終于完成了本次的學年設計。一個星期的學年設計對于我們初學者來說并不簡單。因為我們對單片機這門課程學習的時間很少,這是一門理論與實踐相結合的課程,需要我們不斷的學習與實踐才能真正掌握這門課程。剛開始拿到選題,我們先是查找相關資料,從圖書館和網(wǎng)上找到相關的課題,參考借鑒別人的成果從而理清我們設計的思路。此次學年設計大致可以分為兩部分,電路圖部分和程序編程部分。其中電路圖又用到了Proteus仿真軟件

溫馨提示

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

評論

0/150

提交評論