簡單六位數(shù)字密碼鎖_第1頁
簡單六位數(shù)字密碼鎖_第2頁
簡單六位數(shù)字密碼鎖_第3頁
簡單六位數(shù)字密碼鎖_第4頁
簡單六位數(shù)字密碼鎖_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第1章緒論11.1 設(shè)計任務(wù)11.2 設(shè)計要求1第2章系統(tǒng)方案設(shè)計12.1 硬件設(shè)計思想12.2 軟件設(shè)計思想2第3章電路設(shè)計23.1 電路原理23.2 電路原理圖2第4章程序設(shè)計24.1 流程圖24.2 算法描述2第5章程序清單與仿真結(jié)果25.1 程序清單25.2 仿真結(jié)果11第6章設(shè)計總結(jié)116.1設(shè)計體會11參考文獻12致謝12實物展示錯誤!未定義書簽。第1章緒論1.1 設(shè)計任務(wù)( 1)設(shè)置七個鍵位,分別是確認,數(shù)字1,數(shù)字2,數(shù)字3,數(shù)字4,數(shù)字5,數(shù)字6,工作有提示(設(shè)通電狀態(tài)為紅燈亮)。( 2)在單片機內(nèi)部預(yù)設(shè)六位密碼,在使用密碼解鎖器時,要按預(yù)設(shè)的密碼依次輸入才能完成解鎖。預(yù)設(shè)密

2、碼以外的數(shù)字都不能解開密碼鎖(如輸入非6位或輸入6位與預(yù)設(shè)密碼不同的數(shù)字)。( 3)輸入密碼時,數(shù)碼管同步顯示輸入的數(shù)字。( 4)輸入正確后,有解鎖提示(設(shè)為綠燈亮),輸入錯誤后也有提示(設(shè)為紅燈閃爍和鳴笛警告)( 5)輸入錯誤后可以重輸,要有復(fù)位功能。1.2 設(shè)計要求利用AT89S52單片機的P2端口的P2.0-P2.6連接到7個按鍵開關(guān)上,分別是輸入鍵數(shù)字1,數(shù)字2,數(shù)字3,數(shù)字4,數(shù)字5,數(shù)字6和確認鍵,P2.7接蜂鳴器。啟動時,按下電源開關(guān),紅色指示燈長亮,輸入密碼,而數(shù)碼管顯示輸入的相應(yīng)數(shù)字,然后按下確認鍵,若密碼正確,綠燈亮,數(shù)碼管熄滅,弱密碼錯誤,紅燈閃爍,蜂鳴器響,發(fā)出警報。第

3、2章系統(tǒng)方案設(shè)計2.1 硬件設(shè)計思想2.1.1 鍵盤設(shè)計本設(shè)計使用7按鍵,從上到下,從左至右依次設(shè)為確認鍵,數(shù)字1,數(shù)字2,數(shù)字3,數(shù)字4,數(shù)字5,數(shù)字6,用來輸入密碼,如下圖圖2.1鍵盤仿真圖2.1.2 數(shù)字顯示設(shè)計使用共陽極七段數(shù)碼管來顯示輸入的數(shù)字,圖如下:圖2.2顯示仿真圖2.1.3 檢驗密碼電路設(shè)計使用LED燈和蜂鳴器來提示輸入的密碼是否正確,若密碼正確,綠燈亮,若密碼錯誤,紅燈閃爍,蜂鳴器響,電路如圖:圖2.3密碼驗證系統(tǒng)仿真圖2.2 軟件設(shè)計思想電子密碼鎖工作的主要過程是從鍵盤開始輸入密碼,同時LED顯示密碼輸入情況,按下確認鍵后判斷密碼的正確性,作出開鎖或報警處理。密碼的設(shè)定,

4、在此程序中密碼是固定的,預(yù)設(shè)的密碼為"532416"共6位密碼。在單片機內(nèi)部預(yù)設(shè)六位密碼,在使用密碼解鎖器時,要按預(yù)設(shè)的密碼依次輸入才能完成解鎖。預(yù)設(shè)密碼以外的數(shù)字都不能解開密碼鎖(如輸入非6位或輸入6位與預(yù)設(shè)密碼不同的數(shù)字)輸入密碼時,數(shù)碼管要在單片機的控制下同步顯示輸入的數(shù)字。第3章電路設(shè)計3.1 電路原理單片機最小系統(tǒng)。一個AT89S52單片機做為控制電路,運用其P2口來實現(xiàn)密碼的輸入和蜂鳴器的報警,通過P0口給數(shù)碼顯示管高低不同電平信號,來實現(xiàn)輸入密碼的顯示,P1接指示燈。3.2 電路原理圖圖3.2電路原理圖第4章程序設(shè)計4.1 流程圖圖4.1系統(tǒng)流程圖4.2 算法

5、描述1、設(shè)計一個延時子程序voiddelayms(unsignedintt)unsignedinti,j;for(i=t;i>0;i-)for(j=114;j>0;j-);2、主程序voidinit()voiddelayms(unsignedintt)voidmain()第5章程序清單與仿真結(jié)果5.1 程序清單#include<reg52.h>sbitmm1=P2八0;/密碼按鍵1-8sbitmm2=P2A1;sbitmm3=P2A2;sbitmm4=P2A3;sbitmm5=P2A4;sbitmm6=P2A5;sbitmmok=P2A6;sbitl1=P1A0;sbi

6、tl2=P1A2;sbitfmq=P2A7;voidinit()P0=0xf;禁止數(shù)碼管顯示mm1=1;mm2=1;mm3=1;mm4=1;mm5=1;mm6=1;mmok=1;fmq=1;l1=1;l2=1;voiddelayms(unsignedintt)unsignedinti,j;for(i=t;i>0;i-)for(j=114;j>0;j-);voidmain()unsignedcharmmsr,bn,bn1,bn2,bn3,bn4,bn5;mmsr=0;bn=0;bn1=0;bn2=0;bn3=0;bn4=0;bn5=0;mmsr=1;init();while(1)if

7、(mmsr=1)if(mm5=0)/系統(tǒng)8位程序密碼532416delayms(10);if(mm5=0)bn=1;P0=0xf;消隱P0=0x92;/顯示5if(mm3=0)&(bn=1)delayms(10);if(mm3=0)&(bn=1)bn1=1;P0=0xff;消隱P0=0xb0;/顯示3if(mm2=0)&(bn1=1)delayms(10);if(mm2=0)&(bn1=1)bn2=1;P0=0xff;消隱P0=0xa4;/顯示2if(mm4=0)&(bn2=1)delayms(10);if(mm4=0)&(bn2=1)bn3=1

8、;P0=0xff;消隱P0=0x99;/顯示4if(mm1=0)&(bn3=1)delayms(10);if(mm1=0)&(bn3=1)bn4=1;P0=0xff;消隱P0=0xf9;/顯示1if(mm6=0)&(bn4=1)delayms(10);if(mm6=0)&(bn4=1)bn5=1;P0=0xff;消隱P0=0x82;/顯示6if(mm1=0)delayms(10);if(mm1=0)P0=0xff;/消隱P0=0xf9;/顯示1if(mm2=0)delayms(10);if(mm2=0)P0=0xff;消隱P0=0xa4;/顯示2if(mm3=0

9、)delayms(10);if(mm3=0)P0=0xff;/消隱P0=0xb0;顯示3if(mm4=0)delayms(10);if(mm4=0)P0=0xff;/消隱P0=0x99;/顯示4if(mm5=0)delayms(10);if(mm5=0)P0=0xf;消隱P0=0x92;/顯示5if(mm6=0)delayms(10);if(mm6=0)P0=0xff;/消隱P0=0x82;/顯示8if(mmok=0)delayms(10);if(mmok=0)if(bn=1)&(bn1=1)&(bn2=1)&(bn3=1)&(bn4=1)&(bn5=1

10、)/密碼成功while(1)P0=0xff;l2=0;delayms(100);elsewhile(1)P0=0xff;fmq=0;l1=0;delayms(100);l1=1;delayms(100);unsignedcharmmsr,bn,bn1,bn2,bn3,bn4,bn5;mmsr=0;bn=0;bn1=0;bn2=0;bn3=0;bn4=0;bn5=0;mmsr=1;init();while(1)if(mmsr=1)if(mm5=0)/系統(tǒng)8位程序密碼532416delayms(10);if(mm5=0)bn=1;P0=0xf;消隱P0=0x92;/顯示5if(mm3=0)&

11、;(bn=1)if(mm1=0)&(bn3=1)delayms(10);if(mm1=0)&(bn3=1)bn4=1;P0=0xf;消隱P0=0xf9;/顯示1if(mm6=0)&(bn4=1)delayms(10);if(mm6=0)&(bn4=1)bn5=1;P0=0xff;消隱P0=0x82;/顯示6if(mm1=0)delayms(10);if(mm1=0)P0=0xff;消隱P0=0xf9;/顯示1P0=0x92;/顯示5if(mm6=0)delayms(10);if(mm6=0)P0=0xff;消隱P0=0x82;/顯示8if(mmok=0)dela

12、yms(10);if(mmok=0)/if(bn=1)&(bn1=1)&(bn2=1)&(bn3=1)&(bn4=1)&(bn5=1)密碼成功while(1)P0=0xff;l2=0;delayms(100);elsewhile(1)P0=0xff;5.2 仿真結(jié)果1,開始仿真,按下開關(guān),紅燈亮圖5.1仿真圖2,輸入正確的密碼(532416),數(shù)碼管顯示相應(yīng)的數(shù)字圖5.2輸入數(shù)字“5”圖5.3輸入數(shù)字“3”圖5.4輸入數(shù)字“2”圖5.5輸入數(shù)字“4”圖5.6輸入數(shù)字“1”圖5.7輸入數(shù)字“6”3,(正確密碼)按下確認鍵,綠燈亮圖5.8輸入正確密碼狀態(tài)圖4

13、,若輸入錯誤密碼,則紅燈閃爍,蜂鳴器響(圖內(nèi)為導(dǎo)通狀態(tài))圖5.9輸入錯誤密碼狀態(tài)圖第6章設(shè)計總結(jié)6.1設(shè)計體會通過這次課程設(shè)計和設(shè)計中遇到的問題,我積累了一定的經(jīng)驗,剛開始做設(shè)計時總是會犯一些錯誤,只有經(jīng)過不停的改錯不停的編譯才能得到正確的程序。這說明了作為軟件編程人員是不能粗心大意的,一個程序的質(zhì)量的高低與你細心與否有著一定的聯(lián)系。設(shè)計中要求有耐心和毅力,還要細心,稍有不慎,一個小小的錯誤就會導(dǎo)致結(jié)果的不正確。對錯誤的檢查要求我要有足夠的耐心,這對以后從事集成電路設(shè)計工作會有一定的幫助。本次課程設(shè)計是我到目前為止覺得受益匪淺也是收獲最大的一次實習(xí)。身為通信專業(yè)的學(xué)生,設(shè)計是我們將來必需具備的

14、技能。而這次課程設(shè)計恰恰給我們提供了一個應(yīng)用自己所學(xué)知識去勇于創(chuàng)新和實踐的平臺。從通過理論設(shè)計,到仿真軟件仿真,再到確定具體方案,再到安裝實際電路,最后到調(diào)試電路、成型。整個過程都需要我充分利用所學(xué)的知識進行思考、借鑒。可以說,本次課程設(shè)計是針對前面所學(xué)的知識進行的一次比較綜合的檢驗??偟膩碚f,這次課程設(shè)計雖然很累,但卻是苦中有樂,非常充實。在這次實習(xí)中,正確的思路是很重要的,只有你的設(shè)計思路是正確的,那你的設(shè)計才有可能成功因此我們在設(shè)計前必須做好充分的準備,認真查找詳細的資料,為我們設(shè)計的成功打下堅實的基礎(chǔ),所以跑圖書館和上網(wǎng)、查資料成為了我每天的必修課。本次課程設(shè)計不僅培養(yǎng)了我們的科學(xué)嚴謹?shù)膶W(xué)習(xí)態(tài)度,使我們認識到不管做任何事都要付出一定的努力,才會有大的收獲。本次設(shè)計的完成,離不開劉老師的指導(dǎo)。在此,非常感謝劉老師的指導(dǎo)和同學(xué)的幫助。參考文獻1蔡美琴,張為民,沈新群等.MCS51系列單片機系統(tǒng)及其應(yīng)用M.北京:高等教育出版社,1992.2何立民.單片機應(yīng)用技術(shù)選篇(5)M.北京:北京航空航天大學(xué)出版社,1997.3楊光友.單片機微型計算機原理及接口技術(shù)M.北京:中國水利水電出版社,20

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論