基于單片機(jī)的電子密碼鎖設(shè)計(jì)_第1頁
基于單片機(jī)的電子密碼鎖設(shè)計(jì)_第2頁
基于單片機(jī)的電子密碼鎖設(shè)計(jì)_第3頁
基于單片機(jī)的電子密碼鎖設(shè)計(jì)_第4頁
基于單片機(jī)的電子密碼鎖設(shè)計(jì)_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

基于單片機(jī)的電子密碼鎖設(shè)計(jì)第一章緒論1.1課題的介紹密碼鎖是鎖的一種,開啟時(shí)用的是一系列的數(shù)字或符號(hào)。密碼鎖的密碼通常都只是排列而非真正的組合。部分密碼鎖只使用一個(gè)轉(zhuǎn)盤,帶動(dòng)鎖內(nèi)的數(shù)個(gè)碟片或凸輪轉(zhuǎn)動(dòng);亦有些密碼鎖是轉(zhuǎn)動(dòng)數(shù)個(gè)刻有數(shù)字的撥輪圈,直接帶動(dòng)鎖內(nèi)部的機(jī)械。此密碼鎖是一種能防止多次試探密碼的基于單片機(jī)的密碼鎖,根據(jù)總體要求,給出了該單片機(jī)密碼鎖的硬件電路和軟件程序,同時(shí)給出了單片機(jī)型號(hào)的選擇,硬件設(shè)計(jì),軟件流程圖,軟件程序等內(nèi)容。密碼鎖應(yīng)用非常廣泛,如生活中的密碼箱,取款機(jī)取款時(shí)插入卡后要輸入個(gè)人設(shè)定的密碼,銀行里的密碼柜,核武器在發(fā)射時(shí)也有密碼等等。很多行業(yè)的許多地方都需要密碼鎖,但普通密碼鎖的密碼容易被多次試探而破譯。我們的設(shè)計(jì)給出了一種能防止多次試探密碼的密碼鎖設(shè)計(jì)方法,利用單片機(jī)控制。因?yàn)閱纹瑱C(jī)不但具有體積小,成本低,控制靈活,便于產(chǎn)品化等特點(diǎn),而且單片機(jī)具有新的發(fā)展,具體主要體現(xiàn)在單片機(jī)片內(nèi)資源越豐富,用它構(gòu)成的單片機(jī)控制系統(tǒng)的硬件開銷就會(huì)越少,產(chǎn)品的體積和可靠性就會(huì)越高,無論是現(xiàn)代社會(huì)應(yīng)用比較廣泛的8位單片機(jī)還是16位、32位的單片機(jī),不僅可以把CPU、RAM、ROM、定時(shí)器/計(jì)數(shù)器、I/O接口和中斷系統(tǒng)等電路集成進(jìn)去,而且片內(nèi)新增了A/D和D/A轉(zhuǎn)換器、監(jiān)視定時(shí)器、DMA通道和總線接口等都為單片機(jī)開辟了新的應(yīng)用天地,所以,使用單片機(jī)系統(tǒng)控制密碼鎖,體積小,成本低,控制靈活,便于產(chǎn)品化,可以防止多次試探。1.2本設(shè)計(jì)課題的研究現(xiàn)狀隨著電子技術(shù)的發(fā)展和單片機(jī)功能的增強(qiáng),出現(xiàn)了帶微處理器的智能密碼鎖,它除了具有電子密碼鎖的功能外,還引入了智能化管理、專家分析系統(tǒng)等功能,從而使密碼鎖具有很高的安全性、可靠性。目前發(fā)達(dá)國家已經(jīng)大規(guī)模地應(yīng)用智能門禁系統(tǒng),可以通過多種更加安全,更加可靠的方法來實(shí)現(xiàn)大門的管理。但電子密碼鎖在我國的應(yīng)用還不廣泛,主要出現(xiàn)在保險(xiǎn)柜、密碼箱、高級(jí)賓館等場所,家居用的較少,究其原因,我認(rèn)為有以下幾點(diǎn):基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第7頁。1、價(jià)格原因?,F(xiàn)在買一把普通的機(jī)械鎖,價(jià)格在幾塊到幾十塊左右,而電子密碼鎖的價(jià)格較貴,一般在百元以上,進(jìn)口的甚至要上千元,買一把這樣的鎖對(duì)很多家庭來說,是很難接受的。基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第7頁。2、廠商的推廣力度不夠。電子密碼鎖屬于較新的高科技產(chǎn)品,許多用戶對(duì)其并不了解,更不用說拿它與傳統(tǒng)的機(jī)械鎖作比較。而一般的商場也不會(huì)經(jīng)營這種產(chǎn)品,用戶即使想買也難以買到。目前我國開發(fā)的電子密碼鎖的技術(shù)還比較落后,開發(fā)的密碼鎖大多采用分離電子元件或普通數(shù)字電路設(shè)計(jì)生產(chǎn)的,盡管與機(jī)械鑰匙鎖相比有許多優(yōu)點(diǎn),但智能化程度低,編碼組合仍較少。采用單片機(jī)制作的電子密碼鎖,就克服了以上的兩大缺陷。其主要特點(diǎn)為:保密性好。由于采用6位密碼,隨機(jī)破碼率很低,并且在密碼可能泄露的情況下及時(shí)更改密碼,避免因人員的更替等特殊情況而使鎖的安全性下降。(2)無活動(dòng)零件,不會(huì)磨損,壽命系統(tǒng)自動(dòng)啟動(dòng)。(3)界面簡潔,操作簡單人性化,故障率低,密碼輸入操作簡便。(4)通用性強(qiáng),可根據(jù)需要安裝在不同的設(shè)備上。(5)硬件成本低廉,軟件簡潔可靠,易于批量生產(chǎn)?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第8頁?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第8頁。第二章密碼鎖設(shè)計(jì)方案及論證2.1密碼鎖的設(shè)計(jì)思路根據(jù)本設(shè)計(jì)的要求,構(gòu)思如下:(1)輸入密碼用矩形鍵盤,包括數(shù)字鍵和功能鍵。(2)LED數(shù)碼管顯示輸入密碼,但是只是輸出顯示符號(hào)-。采用動(dòng)態(tài)掃描輸出。(3)通過輸入密碼進(jìn)行模擬開鎖。(4)輸入密碼錯(cuò)誤或操作錯(cuò)誤時(shí)報(bào)警。軟件的設(shè)計(jì)主要包括矩形鍵盤鍵值的讀取、LED動(dòng)態(tài)掃描輸出程序、密碼判斷程序和報(bào)警程序。2.2設(shè)計(jì)方案的幾種類型1、多撥式最簡單的密碼鎖,常見于低安全設(shè)定的單車鎖,使用多個(gè)撥圈。每個(gè)圈的中間有凹位。鎖的中心的一條軸,上有數(shù)個(gè)凸出的齒,用來卡住撥圈。當(dāng)撥圈轉(zhuǎn)到正確的密碼組合,鎖便可以打開。這種鎖是最容易打開的。很多這類鎖根本無需知道密碼都能開啟。除非它的內(nèi)部組件造得完美無瑕,否則只要把軸向外拉,其中一個(gè)齒便會(huì)比其他更為拉緊撥圈。這時(shí)輪動(dòng)被拉緊的撥圈,直至聽到小小的“卡”聲,表示這個(gè)齒已進(jìn)入了正確的凹位。重復(fù)這步驟,很快便可以把鎖打開。2、單一轉(zhuǎn)盤式用在掛鎖上的密碼鎖可以是只有一個(gè)轉(zhuǎn)盤。轉(zhuǎn)盤推動(dòng)背后數(shù)個(gè)平衡碟片或凸輪。習(xí)慣上,開啟這種鎖時(shí)先把轉(zhuǎn)盤順時(shí)針轉(zhuǎn)到第一個(gè)數(shù)字,然后反時(shí)針轉(zhuǎn)到第二個(gè)數(shù)字,如此直至最后一個(gè)數(shù)字。凸輪上通常有凹位,當(dāng)轉(zhuǎn)入正確的密碼后,各位成一直線,鎖便可以打開。這種密碼鎖較為安全,但亦非全無缺點(diǎn)。例如,部分密碼掛鎖可以拉緊鎖頭,然后轉(zhuǎn)動(dòng)轉(zhuǎn)盤直至不能再動(dòng),這樣便能把密碼找出。亦有些轉(zhuǎn)盤密碼鎖的數(shù)字之間有特定關(guān)系,使到密碼的組合可能性大為降低。廉價(jià)的密碼掛鎖可以用特別的襯片打開,而無需使用密碼。3、其他設(shè)計(jì)基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第9頁。有些門鎖上有一個(gè)數(shù)字鍵盤,開啟時(shí)按序鍵入一個(gè)數(shù)字系列。這種鎖是使用電子控制,常見于辦公室內(nèi)。優(yōu)點(diǎn)是只要告訴員工密碼便可,無須復(fù)制鑰匙。它由單片機(jī)系統(tǒng)、矩陣鍵盤、LED顯示器等組成的電子密碼鎖。具有開鎖、超次鎖定、解密、修改、保存密碼、用戶密碼基本的密碼鎖的功能??朔似胀ㄦi需要隨身攜帶鑰匙且易丟失、保密性差的缺點(diǎn),在賓館、辦公大樓、倉庫、保險(xiǎn)柜和家庭普遍適用。本設(shè)計(jì)中采用的是電子密碼鎖,基本功能如下:基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第9頁。1、電源開始后,顯示器顯示“CLOSE”;2、按“*”,清除顯示器;3、輸入888888,顯示,按#鍵結(jié)束,此時(shí)燈亮,顯示-PASS-;4、更改密碼時(shí),先按A,此時(shí)數(shù)碼管顯示CHPASS,按*鍵輸入新密碼再按#鍵結(jié)束,此時(shí)顯示-EPASS,再按*鍵輸入一遍新號(hào)碼按#鍵結(jié)束,此時(shí)顯示-SESS-,即可建立新號(hào)碼;5、若第二次輸密碼是密碼輸錯(cuò),則會(huì)顯示Error,并報(bào)警提示;6、鍵盤設(shè)計(jì)要求(如圖2-1)789A456B123C*0#D圖2-1鍵盤結(jié)構(gòu)2.3方案論證及設(shè)計(jì)框圖考慮到數(shù)字電路方案原理簡單,造價(jià)低廉,但是不能滿足現(xiàn)在的安全需求,而單片機(jī)方案有較大的活動(dòng)空間,不但能實(shí)現(xiàn)所要求的功能,而且能在很大的程度上擴(kuò)展功能及方便地對(duì)系統(tǒng)進(jìn)行升級(jí),實(shí)現(xiàn)基本的密碼鎖功能,添加掉電存儲(chǔ)、聲光提示甚至添加遙控控制功能。所以我們采用后一種方案?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第10頁?;趩纹瑱C(jī)的電子密碼鎖主要由單片機(jī)80c52最小應(yīng)用系統(tǒng)電路、鍵盤輸入電路、數(shù)碼顯示電路、復(fù)位電路、晶振電路、報(bào)警電路和開鎖電路組成。各電路有其特有功能,以下將分別論述,系統(tǒng)功能框圖如圖2-2所示基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第10頁。80c5280c52鍵盤輸入復(fù)位電路晶振電路顯示電路報(bào)警電路開鎖電路圖2-2系統(tǒng)功能框圖基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第11頁?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第11頁。第三章硬件設(shè)計(jì)3.1單片機(jī)簡介一、單片機(jī)的基礎(chǔ)知識(shí)目前世界單片機(jī)的生產(chǎn)廠商很多,如Intel,Motorola,Philips,NEC,ADM,Zilog等公司,其主流產(chǎn)品有十幾個(gè)系列,幾百個(gè)品種。盡管其個(gè)具特色,其稱各異,但作為集CPU,RAM,ROM(或EPROM),I/O接口,定時(shí)器/計(jì)數(shù)器,中斷系統(tǒng)為一體的單片機(jī),其原理大同小異?,F(xiàn)以Intel公司的系列產(chǎn)品為列,說明各系列之間的區(qū)別。Intel公司從其生產(chǎn)單片機(jī)開始,發(fā)展到現(xiàn)在,大體上可以分為3大系列:MCS—48系列,MCS—51系列,MCS—96系列。二、單片機(jī)的結(jié)構(gòu)與發(fā)展單片機(jī)出現(xiàn)的歷史并不長,它的產(chǎn)生與發(fā)展和微處理器的產(chǎn)生與發(fā)展大體相同。因此,單片機(jī)的發(fā)展階段可以分為4個(gè)階段。第1階段,(1974-1976):單片機(jī)初級(jí)階段。此階段的單片機(jī)采用雙片的形式而且功能比較簡單。此時(shí)推出的8位單片機(jī)F8,只包含了8位CPU,64BRAM,一個(gè)定時(shí)/計(jì)數(shù)器和兩個(gè)并行口的3851芯片才能組成一臺(tái)完整的計(jì)算機(jī)。第2階段(1976-1978):低性能單片機(jī)階段。此階段的單片機(jī)已經(jīng)成為一臺(tái)完整的計(jì)算機(jī),但內(nèi)部不夠豐富。以Intel公司生產(chǎn)的MCS-48為代表,片內(nèi)集成了8位CPU,8位定時(shí)/計(jì)數(shù)器,RAM和ROM等,但無串行口,中斷系統(tǒng)也比較簡單,片內(nèi)RAM和ROM容量較小且尋址范圍不大于4KB。它把單片機(jī)推向市場,促進(jìn)單片機(jī)的變革。第3階段(1978-1982):高性能單片機(jī)階段。此階段的單片機(jī)品種多,內(nèi)部資源豐富,功能強(qiáng)。以Intel公司生產(chǎn)的MCS-51系列為代表,片內(nèi)集成了8位CPU,16位定時(shí)/計(jì)數(shù)器,串行I/O口,多級(jí)中斷系統(tǒng),RAM和ROM等,片內(nèi)RAM和ROM容量加大,尋址范圍可達(dá)64KB。第4階段(1982年-現(xiàn)在):8位單片機(jī)的鞏固發(fā)展及16位,32位單片機(jī)推出階段。其最大特點(diǎn)是增加了內(nèi)部資料,實(shí)時(shí)處理能力更強(qiáng)。三、單片機(jī)的發(fā)展趨勢1.單片機(jī)的發(fā)展趨勢是:向高性能化,大容量,微型化,外圍電路內(nèi)裝化等方面發(fā)展。(1)采用雙CPU結(jié)構(gòu),以提高處理速度和處理能力?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第12頁。(2)增加數(shù)據(jù)總線寬度,以提高數(shù)據(jù)處理速度和處理能力?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第12頁。(3)采用流水結(jié)構(gòu)。指令以隊(duì)列形式出現(xiàn)在CPU中,從而具有很快的運(yùn)算速度。(4)串行總線結(jié)構(gòu)。2.存儲(chǔ)器的發(fā)展(1)增加存儲(chǔ)容量。片內(nèi)RAM可達(dá)256B。片內(nèi)存儲(chǔ)器存儲(chǔ)容量的增大有利于外圍擴(kuò)展電路的簡化,從而提高產(chǎn)品的穩(wěn)定性,降低產(chǎn)品的成本。(2)片內(nèi)EPROM開始到EPROM平方化。(3)程序保密化。3.片內(nèi)I/O口改進(jìn)一般單片機(jī)都有較多的并行口,以滿足外圍設(shè)備,芯片擴(kuò)展的需要,并配有串行口,以滿足多機(jī)通信功能的需要.并配有串行口,以滿足多機(jī)通信功能的需要。(1)提高并行口的驅(qū)動(dòng)能力。(2)增加I/O口的邏輯控制功能。(3)特殊的串行接口功能,為單片機(jī)構(gòu)成網(wǎng)絡(luò)系統(tǒng)提供更便于利用的條件。四、單片機(jī)的特點(diǎn)1、小巧靈活,成本低,研發(fā)周期短,易于產(chǎn)品,能利用它方便的組裝成各種智能式測控設(shè)備及各種智能儀表,很容易滿足儀器設(shè)備既智能化又微型化的需求。2、可靠性高,使用的溫度范圍寬。3、易擴(kuò)展控制能力強(qiáng)。4、指令系統(tǒng)相對(duì)簡單,較易掌握且指令中有較豐富的邏輯控制功能指令,能較方便地直接操作外部I/O設(shè)備。五、單片機(jī)的應(yīng)用目前單片機(jī)的應(yīng)用已深入到國民經(jīng)濟(jì)的各個(gè)領(lǐng)域,對(duì)各個(gè)行業(yè)的技術(shù)、改造和產(chǎn)品的更新?lián)Q代起到了重要的推動(dòng)作用,由于單片機(jī)的特點(diǎn)決定了單片機(jī)的應(yīng)用領(lǐng)域,智能器儀表、機(jī)電一體化、實(shí)時(shí)控制、民用電子品等方面。單片機(jī)在智能儀器儀表的應(yīng)用。單片機(jī)廣泛地應(yīng)用于實(shí)驗(yàn)室、交通運(yùn)輸工具、計(jì)量等各種儀器儀表中,可使儀器儀表智能化,提高它們的測量速度和測量精度,加強(qiáng)控制功能,簡化儀器儀表的硬件結(jié)構(gòu),便于使用、維修和改進(jìn)。單片機(jī)在該領(lǐng)域的應(yīng)用,不使傳統(tǒng)的儀器儀表發(fā)生根本性的變革,也給傳統(tǒng)的儀器儀表行業(yè)的改造帶來了曙光和美好的前景。1.單片機(jī)在實(shí)時(shí)控制領(lǐng)域的應(yīng)用單片機(jī)也可廣泛地應(yīng)用于各種實(shí)時(shí)控制系統(tǒng)中,測量和控制工業(yè)上過程控制中的各種物理參數(shù),如轉(zhuǎn)速、位移、壓力、流量等,將測量技術(shù)、自動(dòng)控制技術(shù)和單片機(jī)技術(shù)相結(jié)合,能充分發(fā)揮數(shù)據(jù)處理和實(shí)時(shí)控制功能,使系統(tǒng)工作于最佳狀態(tài),提高系統(tǒng)的生產(chǎn)效率和產(chǎn)品的質(zhì)量。2.在軍工領(lǐng)域的應(yīng)用基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第13頁。利用可靠性高、適用的溫度范圍廣、能適應(yīng)各種惡劣的環(huán)境的特點(diǎn),單片機(jī)可廣泛應(yīng)用于導(dǎo)彈控制,航天飛機(jī)巡航系統(tǒng)等領(lǐng)域?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第13頁。3.單片機(jī)在分布式多機(jī)統(tǒng)中應(yīng)用分布式多機(jī)系統(tǒng)具有功能強(qiáng)、可靠性高的特點(diǎn)。4.在民用電子產(chǎn)品中的應(yīng)用單片機(jī)在民用電子產(chǎn)品中的作用,能明顯提高產(chǎn)品的性能價(jià)格比,提高產(chǎn)品在市場上的競爭力。單片機(jī)廣泛地用于各種儀器儀表,使儀器儀表智能化,并可以提高測量的自動(dòng)化程度和精度,簡化儀器儀表的硬件結(jié)構(gòu),提高其性能價(jià)格比。單片機(jī)控制系統(tǒng)能夠取代以前利用復(fù)雜電子線路或數(shù)字電路構(gòu)成的控制系統(tǒng),可以軟件控制來實(shí)現(xiàn),并能夠?qū)崿F(xiàn)智能化,現(xiàn)在單片機(jī)控制范疇無所不在,例如通信產(chǎn)品、家用電器、智能儀器儀表、過程控制和專用控制裝置等等,單片機(jī)的應(yīng)用領(lǐng)域越來越廣泛。誠然,單片機(jī)的應(yīng)用意義遠(yuǎn)不限于它的應(yīng)用范疇或由此帶來的經(jīng)濟(jì)效益,更重要的是它已從根本上改變了傳統(tǒng)的控制方法和設(shè)計(jì)思想。是控制技術(shù)的一次革命,是一座重要的里程碑,本次設(shè)計(jì)采用的是80c52單片機(jī)。六、單片機(jī)芯片的特性及說明1.主要特性:它與MCS-51兼容,有4KB字節(jié)可編程閃爍存儲(chǔ)器,壽命:1000寫/擦循環(huán),數(shù)據(jù)保留時(shí)間為10年。全靜態(tài)工作時(shí)在0Hz-24Hz之間,內(nèi)部RAM是128b*8位,有32可編程的I/O線,兩個(gè)16位定時(shí)器/計(jì)數(shù)器,5個(gè)中斷源。2.管腳說明如圖3-1所示:圖3-180c52管腳VCC:供電電壓GND:接地基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第14頁。P0口:P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第14頁。P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢,當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。P3口也可作為AT89C52的一些特殊功能口,如下表所示:

管腳備選功能

P3.0RXD(串行輸入口)

P3.1TXD(串行輸出口)

P3.2/INT0(外部中斷0)基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第15頁。P3.3/INT1(外部中斷1)

P3.4T0(記時(shí)器0外部輸入)

P3.5T1(記時(shí)器1外部輸入)

P3.6/WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)

P3.7/RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)

P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。

RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。

ALE/PROG:當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí),ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。

/PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。

/EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第15頁。XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。

XTAL2:來自反向振蕩器的輸出。3.2晶振電路晶振電路如圖3-2所示。利用MCS-51內(nèi)部的高增益反相放大器,在XTAL1和XTAL2引腳上外接定時(shí)元件,內(nèi)部振蕩。定時(shí)元件一般采用石英晶體和電容組成的并聯(lián)振蕩回路。晶體可以在1.2~12MHZ之間任選,電容可以在5~30pF之間選擇,電容C1和C2的大小可起頻率微調(diào)的作用,電容大小要和晶體的容性負(fù)載阻抗相匹配,否則不易起振。圖3-2晶振電路3.3復(fù)位電路主要實(shí)現(xiàn)的功能是使CPU和系統(tǒng)中的其他功能部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種。按鍵電平復(fù)位是通過使復(fù)位端經(jīng)電阻與VCC接通而實(shí)現(xiàn)的。按鍵脈動(dòng)復(fù)位則是利用RC微分電路產(chǎn)生的正脈沖來實(shí)現(xiàn)的。復(fù)位RST基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第16頁。在振蕩器運(yùn)行時(shí),有兩個(gè)機(jī)器周期(24個(gè)振蕩周期)以上的高電平出現(xiàn)在此引腳時(shí),將使單片機(jī)復(fù)位,只要這個(gè)腳保持高電平,51芯片便循環(huán)復(fù)位。復(fù)位后P0-P3口均置1引腳表現(xiàn)為高電平,程序計(jì)數(shù)器和特殊功能寄存器SFR全部清零。當(dāng)復(fù)位腳由高電平變?yōu)榈碗娖綍r(shí),芯片為ROM的0000H處開始運(yùn)行程序。本系統(tǒng)采用的是手動(dòng)復(fù)位電路。復(fù)位電路圖如3-3所示:基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第16頁。圖3-3復(fù)位電路圖3.4鍵盤接口電路鍵盤是單片機(jī)系統(tǒng)中最常用的人機(jī)聯(lián)系的一種設(shè)備,它由若干個(gè)按鍵組成,用戶通過鍵盤向CPU入數(shù)據(jù)或命令以實(shí)現(xiàn)簡單的人機(jī)通信。對(duì)鍵盤的識(shí)別可分為兩類:一類是由專門的硬件電路來識(shí)別,它使用起來方便,但需要價(jià)格昂貴的芯片,單片機(jī)系統(tǒng)中一般不采用;另一類靠軟件來識(shí)別,它結(jié)構(gòu)簡單,價(jià)格便宜,應(yīng)用靈活。本設(shè)計(jì)中查詢的方法識(shí)別鍵,優(yōu)點(diǎn)是電路簡潔,節(jié)省硬件,抗干擾能力強(qiáng),應(yīng)用靈活,缺點(diǎn)是占用較多的CPU時(shí)間資源。非編碼鍵盤可以分為兩種結(jié)構(gòu)形式:獨(dú)立式鍵盤和行列式鍵盤。本次設(shè)計(jì)中采用的是行列式鍵盤,可節(jié)省I/O口線。其工作原理是:行線P1.0~P1.3是輸入線,CPU通過其電平的高低來判別鍵盤是否被按下。依次使列線P1.4~P1.7中的一根輸出為低電平,則只有與之對(duì)應(yīng)的鍵按下時(shí),才能使行線為低電平。鍵盤接口電路圖如3-4所示:基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第17頁?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第17頁。圖3-4鍵盤接口電路圖3.5數(shù)碼管數(shù)碼顯示電路七段數(shù)碼顯示器如圖3-5所示:圖3-5七段數(shù)碼顯示器顯示電路主要由6個(gè)共陽型七段數(shù)碼管(SM4105)、6只型PNP型三極管、一片74LS1383-8線譯碼器組成。電路結(jié)構(gòu)簡單,性能穩(wěn)定,使用方便。七段顯示數(shù)碼管(動(dòng)態(tài))工作原理:逐個(gè)地循環(huán)點(diǎn)亮各位顯示器,也就是說在任一時(shí)刻只有1位顯示器在顯示?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第18頁。LED動(dòng)態(tài)顯示的優(yōu)點(diǎn)是用較少的端口,可以擴(kuò)展多位LED顯示器。缺點(diǎn)是過多的占用CPU的時(shí)間。除了LED動(dòng)態(tài)顯示,還有一種是LED靜態(tài)顯示。LED靜態(tài)顯示的優(yōu)點(diǎn)是不占用CPU的時(shí)間,缺點(diǎn)是占用過多的輸出端口?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第18頁。采用動(dòng)態(tài)顯示的數(shù)碼管,為了使人看到所有顯示器都在顯示,就得加快循環(huán)點(diǎn)亮各位顯示器的速度(提高掃描頻率),利用人眼的視覺殘留效應(yīng),給人感覺到與全部顯示器持續(xù)點(diǎn)亮的效果一樣。一般地,每秒循環(huán)掃描不低于50次。數(shù)碼管顯示電路的工作原理:數(shù)碼管顯示時(shí),P0.0--P0.3根據(jù)程序輸出高電平或低電平,經(jīng)過限流電阻(防止數(shù)碼管因電流過高而損壞)送至數(shù)碼管的陰極。同時(shí),單片機(jī)的P0.4--P0.6根據(jù)要求輸出高電平或低電平,送到74LS138的三個(gè)輸入端,經(jīng)譯碼后由輸出端輸出,此時(shí),74LS138的輸出端只有一位為“0”,使其中的一只三極管導(dǎo)通,引入電源,驅(qū)動(dòng)與其對(duì)應(yīng)的數(shù)碼管,數(shù)碼管工作。數(shù)碼管的各發(fā)光二極管根據(jù)對(duì)應(yīng)的高電平或低電平發(fā)光或不發(fā)光。每只數(shù)碼管依次循環(huán),就完成了發(fā)光電路的設(shè)計(jì),本設(shè)計(jì)采用動(dòng)態(tài)數(shù)碼顯示器。LED數(shù)碼顯示器有兩種連接方法:①共陽極接法:把二極管的陽極連接在一起構(gòu)成公共陽極,使用時(shí)公共陽極接+5V,每個(gè)發(fā)光二極管的陰極通過電阻與輸入端相連。當(dāng)陰極端輸入低電平時(shí),七段發(fā)光二極管就導(dǎo)通點(diǎn)亮,而輸入高電平時(shí)則不點(diǎn)亮。②共陰極接法:把二極管的陰極連接在一起構(gòu)成公共陰極,使用時(shí)公共陰極接地,每個(gè)發(fā)光二極管的陽極通過電阻與輸入端相連。當(dāng)陽極端輸入高電平時(shí),七段發(fā)光二極管就導(dǎo)通點(diǎn)亮,而輸入低電平時(shí)則不點(diǎn)亮。本設(shè)計(jì)中采用的是共陽極LED數(shù)碼顯示器。數(shù)碼管顯示電路原理圖如3-7所示:基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第19頁。圖3-7數(shù)碼管顯示電路原理基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第19頁。3.6譯碼器74LS138的運(yùn)用在中規(guī)模集成電路中譯碼器有幾種型號(hào),使用最廣的通常是74LS138,其是一個(gè)3到8的譯碼器,下圖是其邏輯符號(hào)及管腳排布,下表中列出了該器件的邏輯功能,從表中可以看出其輸出為低電平有效,使能端G1為高電平有效,G2,G3為低電平有效,當(dāng)其中一個(gè)為低電平,輸出端全部為1。74LS138圖如3-8所示:圖3-874LS1383.7開鎖控制電路開鎖控制電路主要由發(fā)光二極管和電阻組成。其優(yōu)點(diǎn)是結(jié)構(gòu)簡單,成本低,操作簡便。在設(shè)計(jì)中,暫時(shí)用發(fā)光二極管代替電磁鎖,當(dāng)p2.6輸出為低電平時(shí),發(fā)光二極管亮,表示開鎖;輸出時(shí)高電平時(shí),發(fā)光二級(jí)管滅,表示沒有開鎖。如圖3-9所示:基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第20頁。圖3-9開鎖控制電路及報(bào)警電路基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第20頁。3.8報(bào)警電路報(bào)警電路由一個(gè)蜂鳴器驅(qū)動(dòng)電路來實(shí)現(xiàn)的,包括以下幾個(gè)部分:一個(gè)蜂鳴器、一個(gè)三極管和一個(gè)電阻。加電后不發(fā)聲,當(dāng)有鍵按下密碼正確時(shí),不發(fā)聲直接開鎖,當(dāng)密碼輸入錯(cuò)誤時(shí),蜂鳴器發(fā)出噪聲報(bào)警。蜂鳴器的作用:用來發(fā)聲,在其兩端加直流電壓(有源蜂鳴器)或者方波(無源蜂鳴器)就可以發(fā)聲,其主要參數(shù)是外形尺寸、發(fā)聲方向、工作電壓、工作頻率、驅(qū)動(dòng)方式(直流/方波)等。這些都可以根據(jù)需要來選擇。三極管作用:三極管起開關(guān)作用,其基極的高電平使三極管飽和導(dǎo)通,使蜂鳴器發(fā)聲,而基極低電平則使三極管關(guān)閉,蜂鳴器停止發(fā)聲。報(bào)警電路如上圖3-9所示?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第21頁。基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第21頁。第四章電子密碼鎖軟件系統(tǒng)設(shè)計(jì)4.1軟件工具介紹PROTELDXP2004簡介ProtelDXP是Altium公司2002年7月推出的第7代Protel系列軟件,是基于Windows操作平臺(tái)的一款產(chǎn)品。它將原理圖繪制、電路仿真、PCB設(shè)計(jì)、設(shè)計(jì)規(guī)則檢查、FPGA及邏輯器件設(shè)計(jì)等完美地融合在一起,為用戶提供了全面的設(shè)計(jì)解決方案,是電子線路設(shè)計(jì)人員首選的計(jì)算機(jī)輔助設(shè)計(jì)軟件。

2004年年初,Altium公司推出了最新版本的Protel軟件——ProtelDXP2004。與以前的版本相比較,ProtelDXP2004的功能得到進(jìn)一步增強(qiáng),其改進(jìn)型Situs自動(dòng)布線規(guī)則大大提高了布線的成功率和準(zhǔn)確率。此外,ProtelDXP2004全面支持FPGA設(shè)計(jì)技術(shù)。SP4升級(jí)包更增強(qiáng)了ProtelDXP2004的功能。

ProtelDXP2004SP4具有強(qiáng)大的設(shè)計(jì)功能,完全能夠滿足電子電路設(shè)計(jì)的需要,是目前用戶群最大、實(shí)際工程應(yīng)用最廣泛的版本。2.Proteus7.9仿真平臺(tái)在該設(shè)計(jì)中,利用Proteus軟件進(jìn)行仿真。Proteus是英國Labcenter公司開發(fā)的電路分析與仿真軟件。運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)數(shù)字電路、模擬電路、數(shù)?;旌想娐?,是目前唯一能實(shí)現(xiàn)對(duì)51、PIC、AVR、HC11、ARM等處理器的仿真軟件。該軟件的特點(diǎn)是:(1)集原理圖設(shè)計(jì)、仿真和PCB設(shè)計(jì)于一體,真正實(shí)現(xiàn)從概念到產(chǎn)品的完整開發(fā)工具。(2)具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真,是獨(dú)一無二的支持處理器與外圍電路的協(xié)同仿真電路設(shè)計(jì)軟件。(3)具有全速、單步、設(shè)置斷點(diǎn)等多種形式的調(diào)試功能。(4)具有各種信號(hào)源和電路分析所需的虛擬儀表、是電類教學(xué)實(shí)驗(yàn)與創(chuàng)新的最侍平臺(tái)。(5)支持KeilC51uVision2、MATLAB等第三方的軟件編譯和調(diào)試環(huán)境。(6)具有強(qiáng)大的原理圖到PCB板設(shè)計(jì)功能,可輸出多種格式的電路設(shè)計(jì)報(bào)表。3.Keil軟件概述基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第22頁。程序在KEILC51上調(diào)試,采用模塊程序設(shè)計(jì)技術(shù),逐個(gè)模塊調(diào)好后進(jìn)行系統(tǒng)程序總調(diào)。

對(duì)于模塊結(jié)構(gòu)程序,要一個(gè)個(gè)子程序分別調(diào)試。調(diào)試時(shí),一定要符合入口條件和出口條件,調(diào)試可用單步運(yùn)行和斷點(diǎn)運(yùn)行方式,通過檢查用者系統(tǒng)的CPU現(xiàn)場情況、RAM的內(nèi)容和I/O口的狀態(tài),檢測程序執(zhí)行結(jié)果是否符合設(shè)計(jì)要求,有無循環(huán)錯(cuò)誤、有無機(jī)器碼錯(cuò)誤以及轉(zhuǎn)移地址的錯(cuò)誤,同時(shí),還可以發(fā)現(xiàn)系統(tǒng)中存在的硬件設(shè)計(jì)錯(cuò)誤和軟件算法錯(cuò)誤。

各程序模塊通過后,則可以把相關(guān)功能塊連在一起進(jìn)行總調(diào)。這個(gè)階段若有故障,可以考慮各子程序運(yùn)行時(shí)是否破壞了現(xiàn)場,緩沖單元、工作寄存器是否發(fā)生沖突,標(biāo)志位的建立和清除是否有誤,堆棧區(qū)是否有溢出,輸入設(shè)備的狀態(tài)是否正常等等,若用者系統(tǒng)是在開發(fā)機(jī)的監(jiān)控程序下運(yùn)行時(shí),還要考慮用者緩沖單元是否和監(jiān)控程序的工作單元發(fā)生沖突。

單步和斷點(diǎn)調(diào)試后,還應(yīng)進(jìn)行連續(xù)調(diào)試,用以確定定時(shí)精度、CPU的實(shí)時(shí)響應(yīng)等問題。當(dāng)全部調(diào)試和修改完成后,將程序固化到80c52中。進(jìn)行整機(jī)調(diào)試。各功能實(shí)現(xiàn)則調(diào)試完成。基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第22頁?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第23頁。

基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第23頁。4.2主程序框圖如下圖所示:開始初始化等待密碼的輸入有鍵按下?開始初始化等待密碼的輸入有鍵按下?操作有誤?顯示Error并報(bào)警提示繼續(xù)輸入密碼密碼正確?開鎖并亮燈NYYNYN圖4-2主程序流程圖4.3程序功能及程序舉例基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第24頁。1.主程序功能:主要完成初始化、設(shè)置中斷向量、檢查有無按鍵按下,以及調(diào)用顯示等。此時(shí)的程序?yàn)椋夯趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第24頁。#include<comm.h>sbitpassed=P2^7;datauchartemp[6],passwd[6],pass1[6],pass2[6];//temp為顯示的內(nèi)容、passwd為密碼存放的地方、pass1為密碼修改時(shí)第一次存放、pass2為第二次存放。voidstatlock(){ ///close. temp[0]=0x0c; temp[1]=17; temp[2]=0; temp[3]=18; temp[4]=0x0e; temp[5]=22;}voidmain(){ input=0; passwd[0]=8; passwd[1]=8; passwd[2]=8; passwd[3]=8; passwd[4]=8; passwd[5]=8; passlen=0;// passed=0; statlock();//顯示鎖住狀態(tài) while(1){ display(); P1=0xf0; while(P1!=0xf0){ key_scan(); } }基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第25頁。}基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第25頁。2.鍵盤掃描及識(shí)別子程序功能:鍵盤采用查詢方式,放在主程序中,當(dāng)沒有按鍵按下時(shí),單片機(jī)循環(huán)主程序,一旦有鍵按下,便轉(zhuǎn)向相應(yīng)的子程序處理,之后再返回。按鍵分布圖如4-1所示:789改456關(guān)123空*0#空?qǐng)D4-1按鍵分布圖其中,*表示輸入數(shù)字,#表示確認(rèn)。3.?dāng)?shù)碼管顯示功能:對(duì)應(yīng)的程序?yàn)閏odetab[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0xbf,0xC7,0x92,0x8c,0xaf,0xa3,0x7f,0xff,0x89};voidsend(uchard,ucharn){ //P0=(((n<<4)&0xf0)+(0x0f&d)); //P0=0x24; P0=tab[d]; P2=(P2&0xf8)+n; delay(1); P2=P2|0x07;}voiddisplay(){ ucharj; for(j=0;j<=5;j++) send(temp[j],j);}4.報(bào)警電路功能:當(dāng)密碼輸錯(cuò)或者改密碼第二次輸入錯(cuò)誤時(shí)提示錯(cuò)誤并報(bào)警,對(duì)應(yīng)程序?yàn)椋?include<comm.h>sbitbeep=P2^6;基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第26頁。sbitpassed=P2^7;基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第26頁。voidstaterr(){ temp[0]=0x0e; temp[1]=20; temp[2]=20; temp[3]=21; temp[4]=20; temp[5]=23;}voidwarn(){ucharl=20; passlen=0; input=0; passed=1; staterr(); while(l--){ beep=0; display(); delay(5); beep=1; display(); delay(5); }}基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第27頁?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第27頁。系統(tǒng)仿真與調(diào)試5.1PROTEUS仿真過程PROTEUS軟件自帶編輯器,可以實(shí)現(xiàn)對(duì)匯編程序的編譯,其操作步驟是:(1)新建源文件:點(diǎn)菜單Source→Add/RemovesourceFiles在出現(xiàn)的對(duì)話框中,選擇ASEM51編輯器,新建JIE.asm源文件。(2)程序設(shè)計(jì):點(diǎn)菜單Source→JIE.asm打開源文件編輯器,將將附錄程序輸入到文本中。(3)源程序編譯:點(diǎn)菜單Souce→BuildALL編譯匯編源程序,生成目標(biāo)代碼文件PMD.HEX,若編譯失敗,可對(duì)程序進(jìn)行修改調(diào)試直至編譯成功。(4)目標(biāo)代碼加載:在PROTEUS編輯環(huán)境雙擊80c52,在PROGRAMFILE一欄中單擊打開按鈕,選中JIE.HEX文件。在CLOCKFREQUENCY欄中設(shè)置系統(tǒng)工作頻率為12MHz,單擊OK完成目標(biāo)代碼加載。最后,點(diǎn)擊運(yùn)行按鈕,啟動(dòng)系統(tǒng)仿真。仿真操作過程如下:基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第28頁。

基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第28頁。點(diǎn)擊開始,即給加電,如圖5-1所示。圖5-1啟動(dòng)加電基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第29頁。

基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第29頁。2.點(diǎn)擊*開始再鍵盤輸入初始密碼888888,數(shù)碼管顯示并點(diǎn)擊#,此時(shí)結(jié)果如圖5-2所示。此時(shí)LED燈亮。圖5-2輸入密碼正確狀態(tài)基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第30頁。

基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第30頁。若輸入錯(cuò)誤,則數(shù)碼管顯示Error并報(bào)警,如圖5-3所示:圖5-3輸入密碼錯(cuò)誤狀態(tài)基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第31頁。基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第31頁。4.設(shè)新密碼時(shí),先按A,此時(shí)數(shù)碼管顯示CHPASS,如圖5-4:圖5-4修改密碼基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第32頁。

基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第32頁。5.按*鍵輸入新密碼再按#鍵結(jié)束,此時(shí)顯示-EPASS,如圖5-5所示:圖5-5輸入新密碼基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第33頁。

基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第33頁。6.再按*鍵輸入一遍新號(hào)碼按#鍵結(jié)束,此時(shí)顯示-SESS-,即可建立新號(hào)碼;如圖5-6所示:圖5-6再次輸入新密碼5.若第二次輸密碼是密碼輸錯(cuò),則會(huì)顯示Error,并報(bào)警提示;如上圖5-3。6.按B關(guān)閉仿真,此時(shí)顯示CLOSE。如圖5-1。5.2仿真結(jié)果分析及問題解決方案通過上述仿真,可以看出基于單片機(jī)控制的電子密碼鎖在PROTEUS軟件上可以很好的實(shí)現(xiàn)顯示模塊的仿真。在仿真的過程中因自己操作的粗心及對(duì)本軟件相關(guān)知識(shí)的掌握程度還不夠使得一些問題涌現(xiàn)了出來。如(1)系統(tǒng)工作頻率應(yīng)設(shè)置為12MHz及程序代碼加載時(shí)后綴名應(yīng)改為.hex,可我因沒有考慮全面,在一開始總是出不了仿真結(jié)果;(2)因沒有及時(shí)發(fā)現(xiàn)程序中的一些小細(xì)節(jié)錯(cuò)誤,使得程序的編譯和執(zhí)行一直無法通過;(3)因仿真時(shí)操作不當(dāng),造成屏幕鎖定等。后來經(jīng)過自己慢慢摸索及老師和同學(xué)的幫助,這些問題都得到了一一的解決;(4)因硬件電路圖設(shè)計(jì)不完善,元件選擇不恰當(dāng)導(dǎo)致無法顯示,經(jīng)過修改后順利顯示。基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第34頁。當(dāng)仿真開始運(yùn)行時(shí),各個(gè)模塊處于初始狀態(tài)。當(dāng)從按鍵輸入正確密碼后,燈亮。當(dāng)從按鍵輸入錯(cuò)誤密碼后,報(bào)警器報(bào)警。因此,從仿真結(jié)果可以看出,本設(shè)計(jì)可以得到預(yù)期的仿真效果?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第34頁?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第35頁。

基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第35頁。參考文獻(xiàn)[1]蘇長贊.使用遙控技術(shù)手冊(cè)[M].北京:北京人民郵電出版社,1996.[2]霍孟友.單片機(jī)原理與應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2004.[3]張洪潤.單片機(jī)應(yīng)用技術(shù)教程[M].北京:清華大學(xué)出版社,1997:56-57.[4]馬鳴遠(yuǎn).程序設(shè)計(jì)與C語言[M].西安:西安電子科技大學(xué)出版社,2003.[5]魏立峰,等.單片機(jī)原理與應(yīng)用技術(shù)[M].北京:北京大學(xué)出版社,2008.[6]周潤景,等.基于PROTEUS的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真[M].北京:北京航空航天大學(xué)出版社,2006.[7]周興華,等.單片機(jī)智能化產(chǎn)品C語言設(shè)計(jì)實(shí)例講解[M].北京:北京航空航天大學(xué)出版社,2006.[8]張靖武,周靈彬.單片機(jī)系統(tǒng)的PROTEUS設(shè)計(jì)與仿真[M].北京:電子工業(yè)出版社,2007.[9]盧健,彭軍,顏?zhàn)杂?,陳文薌.自學(xué)習(xí)型智能紅外遙控器設(shè)計(jì)[J].國外電子測量技術(shù),2006(25):63-66.[10]陳永甫.紅外探測與控制電路[M].北京:北京人民郵電出版社,2004.[11]周麗娜.PROTEL99SE電路設(shè)計(jì)技術(shù),基礎(chǔ)、案例篇[M].北京:中國鐵道出版社,2009.[12]胡繼勝,杜貴敏.電子CAD技能與實(shí)訓(xùn):PROTEL99SE[M].北京:電子工業(yè)出版社,2003.[13]何立民.單片機(jī)應(yīng)用文集[M].北京:北京航空航天大學(xué)出版社,1992.[14]竇振中.PIC系列單片機(jī)應(yīng)用設(shè)計(jì)與實(shí)現(xiàn)[M].北京:北京航空航天大學(xué)出版社,1999.[15]周航慈.單片機(jī)應(yīng)用程序設(shè)計(jì)技術(shù)[M].北京:北京航空航天大學(xué)出版社,1992.[16]謝宋和.單片機(jī)模糊控制系統(tǒng)設(shè)計(jì)與應(yīng)用實(shí)例[M].北京:電子工業(yè)出版社,1999.[17]孫育才.STC系列單片機(jī)及其應(yīng)用[M].南京:東南大學(xué)出版社,1997.[18]蔣孝良,等.繼電器接點(diǎn)控制線路的邏輯設(shè)計(jì)[M].上海:上??茖W(xué)技術(shù)出版社,1979.[19]周云仙,等.液晶顯示應(yīng)用手冊(cè)[M].北京:電子工業(yè)出版社,2002.[20]桑野雅彥.存儲(chǔ)器IC的應(yīng)用技巧:UV-EPROM/EEPROM/SRAM/DRAM的結(jié)構(gòu)與使用方法[M].北京:科學(xué)出版社,2006.基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第36頁。基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第36頁。致謝在論文完成之際,我要忠心的感謝身邊給予過我莫大幫助的老師、同學(xué)和朋友,致以他們最誠摯的謝意。

首先我感謝我的導(dǎo)師何振琦,感謝他的親切關(guān)懷和悉心指導(dǎo),還有王衛(wèi)軍老師,感謝他嚴(yán)肅的科學(xué)態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神,精益求精的工作作風(fēng),深深地感染和激勵(lì)著我。從課題的選擇到項(xiàng)目的最終完成,何老師都始終給予我細(xì)心的指導(dǎo)和不懈的支持。何老師多次詢問研究進(jìn)程,并為我指點(diǎn)迷津,幫助我開拓研究思路,精心點(diǎn)撥、熱忱鼓勵(lì),這讓我在整個(gè)論文的撰寫過程中學(xué)習(xí)到了很多關(guān)于課題研究方面的知識(shí)。

真誠的感謝參加論文評(píng)審和答辯的各位老師,感謝你們的辛勤勞動(dòng)和即將從你們那里獲得的有益教誨;感謝同學(xué)們?cè)谠O(shè)計(jì)中給予的指導(dǎo)和幫助。在這四年的學(xué)期中結(jié)識(shí)的各位生活和學(xué)習(xí)上的摯友讓我得到了人生最大的一筆財(cái)富。在此,也對(duì)他們表示衷心感謝。

本文參考了大量的文獻(xiàn)資料,在此,向各學(xué)術(shù)界的前輩們致敬。最后要感謝的是我的父母和家人,感謝他們多年來對(duì)我默默的支持和幫助。由衷的希望在未來的日子里,周圍的老師、同學(xué)和朋友們一如既往的在各方面繼續(xù)給予我更多的指教和幫助,以期取得新的進(jìn)步和成績來回報(bào)大家?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第37頁?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第37頁。畢業(yè)設(shè)計(jì)小結(jié)隨著畢業(yè)日子的逼近,畢業(yè)設(shè)計(jì)也接近了尾聲。在指導(dǎo)老師何振琦的悉心指導(dǎo)下,我終于順利的完成了畢業(yè)設(shè)計(jì)。以前覺得畢業(yè)設(shè)計(jì)只是對(duì)這幾年來所學(xué)知識(shí)的單純總結(jié),但是通過這次的畢業(yè)設(shè)計(jì)發(fā)現(xiàn)自己的看法有點(diǎn)太片面。畢業(yè)設(shè)計(jì)不僅是對(duì)前面所學(xué)知識(shí)的一種檢驗(yàn),而且是對(duì)自己能力的一種提高。通過這次畢業(yè)設(shè)計(jì),我明白了自己所學(xué)的知識(shí)還是比較欠缺的。要學(xué)習(xí)的東西還很多,以前老是覺得什么東西都會(huì)什么東西都懂,有點(diǎn)眼高手低。通過這次畢業(yè)設(shè)計(jì),我才明白了學(xué)習(xí)是一個(gè)長期累積的過程,在以后的工作中生活中,都應(yīng)該不斷的學(xué)習(xí),努力提高自己的知識(shí)和綜合素質(zhì)。注重理論和實(shí)踐的結(jié)合。在整個(gè)設(shè)計(jì)中我更加了解到了什么是畢業(yè)論文,畢業(yè)論文就是高等院校畢業(yè)生提交的一份有一定的學(xué)術(shù)價(jià)值的文章。它是大學(xué)生完成學(xué)業(yè)的標(biāo)志性作業(yè),是對(duì)學(xué)習(xí)成果的綜合性總結(jié)和檢閱。是大學(xué)生從事科研的最初嘗試,是在指導(dǎo)教師的指導(dǎo)下所取得的科研成果文字記錄,也是檢驗(yàn)學(xué)生掌握知識(shí)的程度、分析和解決問題的基本能力的一份綜合答卷。對(duì)于這次的畢業(yè)設(shè)計(jì),總的來說還是比較成功的,硬件部分基本完成。這次設(shè)計(jì)的難點(diǎn)是軟件的實(shí)現(xiàn),軟件部分的密碼輸入最困難的,經(jīng)過本人堅(jiān)持不懈的努力和其他人的幫助最后終于完成了。單片機(jī)的指令簡單易學(xué),因此開發(fā)周期可以很短。由于時(shí)間有限,未做實(shí)物,且本系統(tǒng)可以改進(jìn)的地方還很多。通過在圖書館里、網(wǎng)上查閱資料,攻克了畢業(yè)設(shè)計(jì)中的道道難題。本次設(shè)計(jì)我能獨(dú)立完成,算是有了很大的收獲??偟母惺苡幸韵聨追矫妫?1)鞏固了課本上的知識(shí)。通過本次設(shè)計(jì),我不但對(duì)單片機(jī)有了更為深入的了解,對(duì)一個(gè)課題如何畫流程圖,編程序,仿真等有了一定的認(rèn)識(shí)。(2)在本次畢業(yè)設(shè)計(jì)中,我進(jìn)一步加強(qiáng)了自己的動(dòng)手能力和運(yùn)用專業(yè)知識(shí)的能力,從中學(xué)習(xí)到如何去思考和解決問題,以及如何靈活地改變方法去實(shí)現(xiàn)設(shè)計(jì)方案;特別是深刻體會(huì)到的是軟件和硬件結(jié)合的重要性,以及兩者的聯(lián)系和配合作用。(3)通過本次畢業(yè)設(shè)計(jì),讓我了解到電子技術(shù)和軟件編程對(duì)當(dāng)今人們生活的重要性。同時(shí)這次做畢業(yè)設(shè)計(jì)的經(jīng)歷也使我受益匪淺。讓我知道做任何事情都應(yīng)腳踏實(shí)地,刻苦努力地去做??傊O(shè)計(jì)過程中懂得了很多東西,也培養(yǎng)了我們獨(dú)立思考和設(shè)計(jì)的能力,也樹立了我們對(duì)知識(shí)應(yīng)用的信心,使自己充分體會(huì)到了在設(shè)計(jì)過程中的成功喜悅?;趩纹瑱C(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第38頁。基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第38頁。附錄電路原理圖:基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第39頁??偝绦?基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第39頁。1.#include<comm.h>sbitpassed=P2^7;datauchartemp[6],passwd[6],pass1[6],pass2[6];//temp為顯示的內(nèi)容、passwd為密碼存放的地方、pass1為密碼修改時(shí)第一次存放、pass2為第二次存放。voidstatlock(){ ///close. temp[0]=0x0c; temp[1]=17; temp[2]=0; temp[3]=18; temp[4]=0x0e; temp[5]=22;}voidmain(){ input=0; passwd[0]=8; passwd[1]=8; passwd[2]=8; passwd[3]=8; passwd[4]=8; passwd[5]=8; passlen=0;// passed=0; statlock();//顯示鎖住狀態(tài) while(1){ Display(); P1=0xf0; while(P1!=0xf0){ key_scan(); } }基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第40頁。}基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第40頁。2.#include<comm.h>codetab[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0xbf,0xC7,0x92,0x8c,0xaf,0xa3,0x7f,0xff,0x89};voidsend(uchard,ucharn){ //P0=(((n<<4)&0xf0)+(0x0f&d)); //P0=0x24; P0=tab[d]; P2=(P2&0xf8)+n; delay(1); P2=P2|0x07;}voiddisplay(){ ucharj; for(j=0;j<=5;j++) send(temp[j],j);}3.#include<comm.h>sbitpassed=P2^7;ucharbedit;bitinput;ucharpasslen;uchark;voidstatpass(){ //-pass- temp[0]=16; temp[1]=19; temp[2]=0x0a; temp[3]=5;基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第41頁。 temp[4]=5;基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第41頁。 temp[5]=16;}voidstatsess(){ temp[0]=16; temp[1]=5; temp[2]=0x0e; temp[3]=5; temp[4]=5; temp[5]=16;}voidinit(){ ucharj=6; while(j--){ temp[j]=23; }}voiddelay(ucharms) { ucharj; while(ms--){ for(j=0;j<120;j++); }}voidpasscheck(){ charj=6; while(j--){ if(pass1[j]!=passwd[j]){ warn();基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第42頁。 return;基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第42頁。 } } passed=0; statpass(); passlen=0; input=0;}voidkey(){ucharj; if(k<=9&&passlen<6&&input) //密碼輸入{ if(bedit<=1){ pass1[passlen]=k; } elseif(bedit==2){ pass2[passlen]=k; } temp[passlen]=16; //顯示“-” passlen++; } elseif(k==10) //*號(hào)鍵,輸入密碼之前必須要輸入的{ input=1; passlen=0; init(); } elseif(k==11) //#號(hào)鍵,結(jié)束輸入密碼{ if(!input) return; input=0; if(passlen==6){ if(bedit==0)基于單片機(jī)的電子密碼鎖設(shè)計(jì)全文共47頁,當(dāng)前為第43頁。{ passchec

溫馨提示

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

評(píng)論

0/150

提交評(píng)論