版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 單片機課程設(shè)計</b></p><p> 單片機4*4矩陣式鍵盤</p><p><b> 系別:信息工程系</b></p><p><b> 班級:10電信本</b></p><p> 姓名: </p>
2、<p> 學(xué)號: </p><p> 1.課程設(shè)計的目的和要求</p><p><b> 1.1設(shè)計目的</b></p><p> 熟練掌握51小系統(tǒng)開發(fā)應(yīng)用;加強單片機的綜合運用能力、提高單片機的件編程和調(diào)試能力,為以后的學(xué)習(xí)和開發(fā)工作打下強勁基礎(chǔ);掌握AT89C51芯片模塊的工作原理及應(yīng)用設(shè)計;掌握4*4
3、矩陣鍵盤的工作原理及應(yīng)用設(shè)計;掌握小系統(tǒng)開發(fā)設(shè)計的流程及設(shè)計思路;提高分析問題,解決問題能力,提高實踐動手能力。</p><p> 1.2課程設(shè)計題目描述和要求</p><p> 題目:單片機4*4矩陣式鍵。</p><p> 1.3、電路硬件說明 (1)在“單片機系統(tǒng)”區(qū)域中,把單片機的P3.0-P3.7端口通過8聯(lián)撥動撥碼開關(guān)JP3連接到“4
4、5;4行列式鍵盤”區(qū)域中的M1-M4,N1-N4端口上。 ?。?)在“單片機系統(tǒng)”區(qū)域中,把單片機的P0.0-P0.7端口連接到“靜態(tài)數(shù)碼顯示模塊”區(qū)域中的任何一個a-h(huán)端口上;要求:P0.0對應(yīng)著a,P0.1對應(yīng)著b,……,P0.7對應(yīng)著h。</p><p><b> 總體方案的設(shè)計</b></p><p> 2.1矩陣式鍵盤識別程序流程圖 4*4陣
5、列式鍵盤識別程序流程圖如圖所示,控制器采用單片機AT89C51</p><p> 圖2-1 4*4矩陣式鍵盤識別程序流程圖 </p><p> 740)this.width=740" border=undefined></p><p> 2-1-2 4*4矩陣式鍵盤O-F顯示</p><p> 2.2單片機AT89C
6、51</p><p> 硬件復(fù)位。同時該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求AT89S51是一個低功耗,高性能CMOS 8位單片機,片內(nèi)含4k Bytes ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS-51指令系統(tǒng)及89C51引腳結(jié)構(gòu),芯片內(nèi)集成了
7、通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機的AT89S51可為許多嵌入式控制應(yīng)用系統(tǒng)提供高性價比的解決方案。 </p><p> AT89C51具有如下特點:40個引腳如圖2-2,4k Bytes Flash片內(nèi)程序存儲器,128 bytes的隨機存取數(shù)據(jù)存儲器(RAM),32個外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個全雙工串行通
8、信口,看門狗(WDT)電路,片內(nèi)時鐘振蕩器。 </p><p> 此外,AT89S51設(shè)計和配置了振蕩頻率可為0Hz并可通過軟件設(shè)置省電模式。空閑模式下,CPU暫停工作,而RAM定時計數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或。</p><p> 圖2-2 AT89C51管腳圖</p><p>
9、3.系統(tǒng)硬件電路設(shè)計</p><p><b> 3.1主板電路</b></p><p> 系統(tǒng)整體單片機4*4矩陣式鍵盤主板電路,如圖3-1所示</p><p> 圖3-1 4*4矩陣式鍵盤主板電路 </p><p> 3-2.實物作品:(如圖3-2)</p><p><b>
10、 圖 .3-2</b></p><p> 3-3.程序設(shè)計內(nèi)容 (1)4×4矩陣鍵盤識別處理 。 (2)每個按鍵都有它的行值和列值,行值和列值的組合就是識別這個按鍵的編碼。矩陣的 行線和列線分別通過兩并行接口和CPU通信。鍵盤的一端(列線)通過電阻接VCC,而接地是通過程序輸出數(shù)字“0”實現(xiàn)的。鍵盤處理程序的任務(wù)是:確定有無鍵按下,判斷哪一個鍵按下,鍵的功能是什么?還要消除按鍵在閉合或
11、斷開時的抖動。兩個并行口中,一個輸出掃描碼,使按鍵逐行動態(tài)接地;另一個并行口輸入按鍵狀態(tài),由行掃描值和回饋信號共同形成鍵編碼而識別按鍵,通過軟件查表,查出該鍵的功能。 </p><p><b> 4.源程序</b></p><p> /********************主程序***********************************/</p
12、><p> 4-1 .匯編源程序:</p><p> KEYBUF EQU 30HORG 00HSTART: MOV KEYBUF,#2WAIT:MOV P3,#0FFHCLR P3.4MOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY1LCALL DELY10MSMOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY1
13、MOV A,P3ANL A,#0FHCJNE A,#0EH,NK1MOV KEYBUF,#0LJMP DK1NK1: CJNE A,#0DH,NK2MOV KEYBUF,#1LJMP DK1NK2: CJNE A,#0BH,NK3MOV KEYBUF,#2LJMP DK1NK3: CJNE A,#07H,NK4MOV KEYBUF,#3LJMP DK1NK4: NOPDK1:MOV A,KEYBUFMO
14、V DPTR,#TABLEMOVC A,@A+DPTRMOV P0,ADK1A: MOV A,P3ANL A,#0FHXRL A,#0FHJNZ DK1ANOKEY1:MOV P3,#0FFHCLR P</p><p> 4-2 .C語言源程序:</p><p> #includeunsigned char code table[]={0x3f,0x06,0x5b
15、,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};unsigned char temp;unsigned char key;unsigned char i,j;void main(void){while(1){P3=0xff;P3_4=0;temp=P3;temp=temp & 0x0f;if (temp!=0x
16、0f){for(i=50;i>0;i--)for(j=200;j>0;j--);temp=P3;temp=temp & 0x0f;if (temp!=0x0f){temp=P3;temp=temp & 0x0f;switch(temp){case 0x0e:key=7;break;case 0x0d:key=8;break;case 0x0b:key=9;break;
17、case 0x07:key=10;break;}</p><p><b> }}}}</b></p><p><b> 5.總結(jié)</b></p><p> 經(jīng)過這段時間的努力,我終于完成了4*4矩陣式鍵盤的設(shè)計,雖然沒有完全達到設(shè)計要求,但從中學(xué)到了不少課堂上所學(xué)不到的實際知識。
18、 我們認為,在這次的課程設(shè)計中,在收獲知識的同時,還收獲了閱歷,收獲了成熟,在此過程中,為了完成課程設(shè)計,我學(xué)會了通過多種渠道去獲得課程設(shè)計所需用的各種資料,在通過查找大量資料,請教老師,以及不懈的努力的過程中,不僅培養(yǎng)了獨立思考、動手操作的能力,在各種其它能力上也都有了提高。更重要的是,在實驗課上,我們學(xué)會了很多學(xué)習(xí)的方法。而這是日后最實用的,真的是受益匪淺。要面對社會的挑戰(zhàn),只有不斷的學(xué)習(xí)、實踐,再學(xué)習(xí)、再
19、實踐。 </p><p> 之所以使用單片機作為我們的執(zhí)行核心,不僅是因為老師說單片機現(xiàn)在是社會上應(yīng)用最廣泛的工具,也因為想通過使用單片機鍛煉自己的c 語言編程能力,養(yǎng)成良好的c語言編程風(fēng)格。不管怎樣,這些都是一種鍛煉,一種知識的積累,能力的提高。完全可以把這個當作基礎(chǔ)東西,只有掌握了這些最基礎(chǔ)的,才可以更進一步,取得更好的成績。很少有人會一步登天吧。永不言棄才是最重要的。 </p
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機課程設(shè)計--矩陣鍵盤 led顯示
- 單片機課程設(shè)計---鍵盤接口課程設(shè)計
- 單片機鍵盤輸入課程設(shè)計
- 單片機手機鍵盤-單片機原理及應(yīng)用課程設(shè)計
- 單片機課程設(shè)計--單片機串行通訊
- 單片機秒表單片機課程設(shè)計
- 單片機課程設(shè)計---單片機數(shù)字時鐘
- 單片機課程設(shè)計-單片機課程設(shè)計---電子時鐘
- 單片機課程設(shè)計--單片機控制步進電機
- 《單片機原理》課程設(shè)計4x4矩陣鍵盤設(shè)計
- 單片機課程設(shè)計-單片機控制步進電機
- 單片機課程設(shè)計---單片機籃球計分器
- 單片機課程設(shè)計報告---單片機數(shù)字時鐘
- 單片機課程設(shè)計---單片機原理及應(yīng)用
- 單片機課程設(shè)計報告-仿手機鍵盤
- 單片機課程設(shè)計--單片機控制各種器件
- 單片機課程設(shè)計---單片機數(shù)字時鐘.doc
- 單片機課程設(shè)計報告(4×4矩陣鍵盤)
- 課程設(shè)計-制作單片機的4x4矩陣鍵盤
- 單片機課程設(shè)計---單片機病房呼叫系統(tǒng)
評論
0/150
提交評論