版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 桂林電子科技大學信息科技學院單片機原理及應用實訓報告題 目 密碼鎖 學 號 姓 名 指導老師 2011 年 9 月 21 日1.系統(tǒng)設計1.1設計要求1.1.1基本要求(1)按照題目要求獨立設計系統(tǒng)所需電路,并完成硬件電路的制作及調試。(2)結合硬件能夠正常工作。(3)能夠正常顯示密碼。(4)能夠正常顯示密碼模式。(5)能夠開關鎖。1.1.2發(fā)揮部分密碼的存儲。通過24C02芯片保存密碼,實現(xiàn)斷電密碼保存。1.2設計原理C51單片機顯示模塊鍵盤1.2.1基本框圖:1.2.3 原理圖在本次實訓電路中用到的電路原理圖如下:1.3方案比較(1)關于矩陣鍵盤和獨立鍵盤之間的選擇。獨立鍵盤將每一個按鍵
2、開關接到一個獨立的輸入口中,因此其識別程序相對簡潔,方便使用。但是實訓中采用的AT89S52單片機字長為8位,每一組輸入輸出口有8位,故每一組輸出口最多能接8個開關,而通常情況下,密碼由0到9這10個數字組成,如果采用獨立鍵盤,一組獨立開關將不能滿足要求。相對而言,4x4矩陣鍵盤每識別一個按鍵,都要進行行列掃描,程序較為復雜,但是矩陣鍵盤僅用一組I/O口就能接16個按鍵,除去0到9這10個數字外,還剩下6個,方便對系統(tǒng)進行功能擴展。故在本次實訓電路中采用4x4矩陣鍵盤,接到單片機的P3口。(2)關于數碼管以及LED的選擇。單片機的I/O數量十分有限,倘若要使用多位數碼管,必須采用動態(tài)掃描的方式
3、實現(xiàn)。對于一般密碼而言,4位10進制密碼已經足夠,故本次實訓電路中采用4位共陰極數碼管。另外,外加4個LED就足以指示一個密碼鎖的各種不同的狀態(tài)。1.4方案論證1.4.1總體思路單片機的最小系統(tǒng)僅有兩部分,即時鐘電路和復位電路。另外,通過接駁在單片機不同端口的設備,再編寫適當的程序,可以方便對單片機系統(tǒng)進行相應的擴展。AT89S52芯片共有4組并行I/O口,即P0、P1、P2、P3,基本思路是將4x4矩陣鍵盤接在P3口上,將4個LED接在P1口的低四位,將P0口作為4位數碼管的位選信號,P2口的低四位作為其位選信號,最后加上通信接口,用以下載程序。放棄密碼存儲功能。1.4.2設計方案按照以上思
4、路繪制出仿真圖如下:以上仿真圖在Proteus 7 中仿真通過,本次實訓電路將采用以上原理圖。2、模塊電路的設計2.1 時鐘電路單片機的時鐘信號由兩種電路產生:內振蕩電路和外震蕩電路。在任一時刻,只要一種震蕩電路便能使單片機正常工作。在需要時鐘穩(wěn)定的的情況下用內部振蕩產生時鐘,在要求單片機與外界信號同步時使用外部震蕩。本次實訓沒有涉及到信號同步,故可以采用內振蕩電路。使用內震蕩電路提供時鐘脈沖,需要在XTAL1和XTAL2之間外接石英晶體振蕩器或陶瓷振蕩器,這時的內部震蕩電路僅相當于一個高增益放大器,和晶振接在一起形成一個正反饋的自激振蕩,再經整形和分頻形成單片機內各邏輯部件所需的時鐘脈沖。設
5、計出的時鐘電路圖如下所示:其中X1、X2接在18和19腳即XTAL1和XTAL2之間。2.2 復位電路單片機的復位操作由復位引腳RET/VPD上出現(xiàn)的高電平引起,高電平持續(xù)時間不少于兩個機器周期(24個振蕩周期),CPU在第二個機器周期內執(zhí)行復位操作。如果RSD/VPD持續(xù)為高電平,那么每隔24個振蕩周期重復一次復位操作。復位后機內各種特殊功能寄存器初始化,而片內128B RAM的狀態(tài)不受復位信號的影響。復位有上電復位和手動復位兩種。一般采用的手動復位用按鈕完成。其模塊電路如下:其中R1=1K,C3=10uF。2.3 4x4矩陣鍵盤模塊鍵盤是單片機常用輸入設備,在按鍵數量較多時,為了節(jié)省I/O
6、口等單片機資源,一般采取掃描的方式來識別到底是哪一個鍵被按下。即通過確定被按下的鍵處在哪一行哪一列來確定該鍵的位置,獲取鍵值以啟動相應的功能程序。接在單片機P3口的矩陣鍵盤模塊如下圖所示:2.4 數碼管顯示模塊一組數碼管動態(tài)掃描顯示需要由兩組信號來控制:一組是字段輸出口輸出的字形代碼,用來控制顯示的字形,稱為段碼;另一組是位輸出口輸出的控制信號,用來選擇第幾位數碼管工作,稱為位碼。由于各位數碼管的段線并聯(lián),段碼的輸出對各位數碼管來說都是相同的。因此,在同一時刻如果各位數碼管的位選線都處于選通狀態(tài)的話,8位數碼管將顯示相同的字符。若要各位數碼管能夠顯示出與本位相應的字符,就必須采用掃描顯示方式。
7、即在某一時刻,只讓某一位的位選線處于導通狀態(tài),而其它各位的位選線處于關閉狀態(tài)。同時,段線上輸出相應位要顯示字符的字型碼。這樣在同一時刻,只有選通的那一位顯示出字符,而其它各位則是熄滅的,如此循環(huán)下去,就可以使各位數碼管顯示出將要顯示的字符。雖然這些字符是在不同時刻出現(xiàn)的,而且同一時刻,只有一位顯示,其它各位熄滅,但由于數碼管具有余輝特性和人眼有視覺暫留現(xiàn)象,只要每位數碼管顯示間隔足夠短,給人眼的視覺印象就會是連續(xù)穩(wěn)定地顯示。由P0口控制段碼,由P2口控制位碼的四位數碼管動態(tài)掃描電路如下:2.5 LED模塊LED與單片機的連接比較簡單,一端連接單片機的P1口,另一端通過合適的電阻接到VCC即可。
8、本次實訓,我通過一個200歐電阻與4個LED連接,通過程序控制單片機對應端口的高低電平,可以實現(xiàn)功能。其模塊電路圖如下:2.6 下載接口模塊本次實訓電路采用標準的下載接口,其原理圖如下:3、開發(fā)軟件及編程語言簡介3.1 Keil C編程軟件Keil C51 軟件是眾多單片機應用開發(fā)的優(yōu)秀軟件之一,它集編輯,編譯,仿真于一體,支持匯編,PLM 語言和C 語言的程序設計,界面友好,易學易用。3.2 C編程語言單片機的C語言具有可移植性好,易懂易用的特點,在我國有大量的c程序員,重新學習單片機將非常容易,因此,雖然匯編語言更精煉,但是使用c也是大勢所趨!3.3 Prot
9、eus軟件Proteus軟件是英國Labcenter electronics公司出版的EDA工具軟件(該軟件中國總代理為廣州風標電子技術有限公司)。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。雖然目前國內推廣剛起步,但已受到單片機愛好者、從事單片機教學的教師、致力于單片機開發(fā)應用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調試到單片機與外圍電路協(xié)同仿真,一鍵切換到PCB設計,真正實現(xiàn)了從概念到產品的完整設計。是目前世界上唯一將電路仿真軟件、PCB設計軟件和虛擬模型仿真軟件三合一的設計平
10、臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即將增加Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器。3.4 Avr fighterAVR單片機ISP下載編程軟件。4、制作與調試過程4.1 繪圖過程本次繪圖采用Protel 99 SE。根據仿真成功的仿真圖,繪制出各個模塊,用網絡標號相連。然后根據實物,畫好封裝。導入PCB圖,進行合理布局。由于本次實訓是在萬用板上焊接,走線比較隨意可以進行多層走線,所以沒有必要再進行
11、走線。4.2調試過程本次實訓是在我第一次在萬用板上焊接,其難度比在一般腐蝕板上焊接要高,全部焊接出來之后,沒有馬上成功。經過了一番調試之后。板子正常工作。我的調試從LED開始。我編寫了一個簡單的流水燈程序,但是LED都沒有亮起。仔細檢查電路后發(fā)現(xiàn),單片機31腳EA沒有接入VCC。查閱相關資料可知,對于51的單片機來說,程序下到芯片內的ROM里,而EA=0時,片外程序ROM有效,EA=1時片內程序ROM有效。而且,EA一定要給個固定電平,高或者低,根據程序存放的位置為片內ROM,為了系統(tǒng)可靠,應當將其接到VCC網絡。接下來是數碼管。編寫一個簡單的程序,數碼管顯示正常。之后再編寫了一個矩陣鍵盤識別
12、程序,將所得的結果通過數碼管顯示出來。發(fā)現(xiàn)有兩個按鍵沒有反應,斷電之后,用萬用表測試了各個按鍵的管腳,發(fā)現(xiàn)有兩個已經短路了。再仔細觀察,原因是在焊接的過程中,溫度太高,導致絕緣皮融化,相靠近的兩根導線短路。將兩根導線重新焊接后問題解決。問題都解決了之后,開始進行程序的編寫,程序的編寫過程是漫長的,經過多次調試下載驗證,將其功能一個個實現(xiàn),完成了程序的編寫。在程序的編寫測試過程中,發(fā)現(xiàn)復位電路有個問題,就是不是每次按下復位鍵都會有效。我剛開始使用的復位電路有2個電阻,另一個是接地,即復位模塊截圖的R2,將其短路后問題解決。4.3 軟件的編寫按照軟件的一般編寫順序,先寫一個最簡單的程序,能實現(xiàn)某個
13、簡單的功能,然后再將其擴展,直到實現(xiàn)所有的功能為止。程序功能都可以實現(xiàn)了之后,還存在很多不足之處,比如操作不當時,會造成系統(tǒng)錯亂。為了杜絕各種缺陷,還要進行很多的測試。直到現(xiàn)在,或許程序中還有很多不足之處我還沒發(fā)現(xiàn)。但由于本人時間能力有限,不能全部發(fā)現(xiàn)并一一解決。5、心得體會之前也進行了很多各種各樣的實訓,不過這次有一些不同之處,給了我一些不一樣的感受。首先,實訓剛開始的時候就聽說這次所要焊接的板子是萬用板,不需要腐蝕,腐蝕板之間的導線全部用導線焊接上去。這樣的焊接方式肯定是很有難度的,我們必須要在焊接的時候。一手拿著電烙鐵,一手拿著焊錫,另外還要扶著板子,還要拿著導線,這樣才能將一個焊點焊好
14、。不過這樣也有一個好處,就是走線和修改都比較簡單,可以走幾層,沒有固定的走線方式。但是這樣也會出現(xiàn)一些問題,就是那些導線的絕緣層很容易熔化并露出金屬,稍不注意就會造成短路,我之前焊接矩陣鍵盤時就出現(xiàn)了這個問題。當然,所謂熟能生巧,在焊接了一大部分之后,似乎找到了一些訣竅,焊接變得輕松了。不過這畢竟還是我第一次在萬用板上焊接,總體上并不美觀。另外,這次實訓是軟硬件相結合的,沒有硬件,就不能知道自己所寫的程序是不是正確,沒有軟件,就不能驗證給繪制的原理圖是不是正確。這就造成了一個死循環(huán),很難找到突破口著手。當然,無論如何,都必須要將這些問題解決的。方法就是先在軟件中進行仿真。仿真時,如果涉及到數碼
15、管的動態(tài)掃描,顯示效果就不是很好,顯示得不完整,但還是可以寫一些簡單的程序,驗證正確即可。電路沒有問題之后,就要進行電路板的焊接,焊接之后,才可以方便調試程序。通過這次實訓,我學習,也復習了很多相關的知識。比如說單片機的知識。雖然單片機學習結束也就剛一個假期而已,但是這么久沒有復習,還是會忘掉不少。單片機就是一個小型的處理器,通過程序控制,可以讓它實現(xiàn)很多功能,應用十分廣泛,學好單片機,以后定會有用武之地。另外,這次編程我是采用C語言,同時可以復習之前的知識。C語言編程也是一個很重要的能力??傊?,通過此次實訓,我復習了很多,也學到了很多那些我應該懂得的知識。6、參考文獻 【1】喻宗泉,喻晗,李
16、建民,單片機原理與應用技術:西安電子科技大學出版社,20067附錄附錄1:元器件清單器件名稱數量器件名稱數量AT89S52(帶座)122pf電容21000歐排阻112MHz晶振110P下載口11k電阻14位共陰數碼管1200歐電阻1LED410uF電解電容1輕觸開關17附錄2:電路原理圖附錄3:電路PCB圖(未布線)附錄4:電路板實物圖附錄5:程序#include <AT89X51.H>unsigned int ms=10000,bitdisplay,led=2000;unsigned char tab=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07
17、,0x7F,0x6F,/09 0x40,/10- 0x76,/11-H 0x5c;/12-口unsigned char pw=0,6,1,9,tpw14,tpw24;unsigned char fdd=0,key=10,fun,n=0,step;unsigned char smg7,hsmg4;bit del=0;hid=0,result=0,result2=0,ok=0,num=0; unsigned char compare(unsigned char ppw14,unsigned char ppw24)/密碼對比n=0;while(ppw1n=ppw2n)n+;if(n=4) break
18、;if(n=4)n=0;return(1);elsen=0;return(0);void timer0(void) interrupt 1/2ms中斷TH0=0xF8; TL0=0x30;if(P3!=0x7f | P3!=0xbf | P3!=0xdf | P3!=0xef)fdd+;/防抖動else fdd=0;if(key=10)/長時間沒有按鍵則退出if(-ms=0)ms=10000;fun=0;else ms=10000;if(P1!=0xFF && -led=0) led=2000;P1=0xFF;if(fun=0)/fun=0,取消,變量復位result=0;re
19、sult2=0;ok=0;hsmg0=hsmg1=hsmg2=hsmg3=12;smg0=smg1=smg2=smg3=12;step=0;num=0;for(n=0;n<4;n+)tpw1n=10;tpw2n=10;n=0;if(fun=2 | fun=3)/密碼進入或改密碼if(step=0)if(key!=10 && n<4)smgn+1=10;smgn+2=10;smgn+3=10; tpw1n=key; smgn=key;hsmgn=11; n+; if(del=1)/退格 n-; smgn=10; hsmgn=10; del=0; key=10;if(o
20、k=1) result=0;ok=0;result=compare(tpw1,pw);/檢驗密碼if(result=1) P1_1=0;smg0=10;smg1=10;smg2=10;smg3=10;hsmg0=10;hsmg1=10;hsmg2=10;hsmg3=10;else P1_0=0;n=0;if(fun=2) step=1;if(fun=3) fun=0;if(result=1 && fun=2)/以下修改密碼if(key!=10 && n<4) if(num=0)tpw1n=key; smgn=key;hsmgn=11; n+;key=10;
21、 elseif(num=1) tpw2n=key; smgn=key;hsmgn=11; n+;key=10; if(del=1) n-; smgn=10; hsmgn=10; del=0; if(ok=1) /密碼替換ok=0;if(n>=4 && step=1 )num=1;n=0;step=2;smg0=10;smg1=10;smg2=10;smg3=10;hsmg0=10;hsmg1=10;hsmg2=10;hsmg3=10;if(n>=4 && step=2)result2=0;result2=compare(tpw1,tpw2);if(r
22、esult2=1) for(n=0;n<4;n+) pwn=tpw1n;P1_3=0;fun=0;led=2000;if(hid=0) /數碼管動態(tài)掃描switch(bitdisplay)case 0:P0=tabsmg0;P2=0x0E;break; case 1:P0=tabsmg1;P2=0x0D;break; case 2:P0=tabsmg2;P2=0x0b;break; case 3:P0=tabsmg3;P2=0x07;break;elseswitch(bitdisplay)case 0:P0=tabhsmg0;P2=0x0E;break; case 1:P0=tabhsmg1;P2=0x0D;break; case 2:P0=tabhsmg2;P2=0x0b;break; case 3:P0=tabhsmg3;P2=0x07;break;bitdisplay+; if(bitdisplay>=4)bitdisplay=0;void main(void)TMOD=0x01;TH0=0xF8; TL0=0x30;EA=1;ET0=1;TR0=1; while(1) /矩陣鍵盤行列掃描 P3=0x7f;if(P3!=0x7f && fdd>10) switch(P3
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度美縫施工與市場拓展合同4篇
- 2025年度個人樓房居間代理合同(含稅費減免)4篇
- 2025年度零星維修與環(huán)保設備維護服務合同4篇
- 2024銅門制安工程進度計劃合同
- 二零二五年度鋼構制造勞務分包節(jié)能減排合同范本3篇
- 供應鏈決策與運輸實施
- 學習導數及其應用復習小結研究報告
- 2025年度高端醫(yī)療設備定制生產項目合同3篇
- 2024秋八年級物理上冊 第1章 聲現(xiàn)象 第四節(jié) 人耳聽不到的聲音說課稿1(新版)蘇科版
- 9《那一定會很好》說課稿-2024-2025學年三年級上冊語文統(tǒng)編版
- 神經外科進修匯報課件
- 2024老年人靜脈血栓栓塞癥防治中國專家共識(完整版)
- 騰訊營銷師認證考試題庫(附答案)
- 鄰近鐵路營業(yè)線施工安全監(jiān)測技術規(guī)程 (TB 10314-2021)
- 四年級上冊脫式計算100題及答案
- 資本市場與財務管理
- 河南近10年中考真題數學含答案(2023-2014)
- 八年級上學期期末家長會課件
- 2024年大學試題(宗教學)-佛教文化歷年考試高頻考點試題附帶答案
- HGE系列電梯安裝調試手冊(ELS05系統(tǒng)SW00004269,A.4 )
- 尤文肉瘤的護理查房
評論
0/150
提交評論