四位電子密碼鎖_第1頁
四位電子密碼鎖_第2頁
四位電子密碼鎖_第3頁
四位電子密碼鎖_第4頁
四位電子密碼鎖_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、專業(yè)工程設(shè)計說明書題 目:4位電子密碼鎖設(shè)計院 (系):電子工程與自動化學(xué)院專 業(yè):測控技術(shù)與儀器(卓越)學(xué)生姓名:學(xué) 號:指導(dǎo)教師:摘 要鎖是置于可啟閉的器物上,用以關(guān)住某個確定的空間范圍或某種器具的,必須以鑰匙或暗碼打開的扣件。鎖具發(fā)展到現(xiàn)在已有若干年的歷史了,人們對它的結(jié)構(gòu)、機理也研究得很透徹。隨著社會科技的進步,鎖已發(fā)展到了密碼鎖、磁性鎖、電子鎖、激光鎖、聲控鎖等等。當(dāng)今安全信息系統(tǒng)應(yīng)用越來越廣泛,特別在保護機密、維護隱私和財產(chǎn)保護方面起到重大作用,而基于電子密碼鎖的安全系統(tǒng)是其中的組成部分,因此研究它具有重大的現(xiàn)實意義。本設(shè)計由主控芯片51單片機,單片機時鐘電路,矩陣鍵盤,數(shù)碼管的動

2、態(tài)顯示,報警電路和開鎖電路組成。單片負責(zé)控制整個系統(tǒng)的執(zhí)行過程。關(guān)鍵詞:AT89S51、時鐘電路、矩陣鍵盤、數(shù)碼管的動態(tài)顯示、報警電路,開鎖電路。目 錄引言11課程設(shè)計題目12 系統(tǒng)設(shè)計22.1 總的系統(tǒng)設(shè)計結(jié)構(gòu)圖22.2系統(tǒng)硬件設(shè)計23 AT89S52最小系統(tǒng)設(shè)計33.1 時鐘電路設(shè)計33.2 復(fù)位電路設(shè)計44 鍵盤及顯示報警電路的硬件設(shè)計54.1 矩陣鍵盤電路設(shè)計54.2 顯示電路硬件設(shè)計54.3 繼電器驅(qū)動電路及報警電路設(shè)計6繼電器簡介64.3.2 固態(tài)繼電器驅(qū)動電路設(shè)計7報警提示電路75 系統(tǒng)軟件設(shè)計85.1主程序模塊95.2密碼比較判斷模塊95.3鍵盤掃描模塊95.4修改密碼模塊10

3、5.5數(shù)碼管液晶顯示模塊116 總體調(diào)試117 總結(jié)12參考文獻13附錄14引言通過本次課設(shè)的理解與掌握:1、熟悉掌握單片機的結(jié)構(gòu)及工作原理,鍛煉獨立設(shè)計、制作和調(diào)試單片機應(yīng)用系統(tǒng)的軟硬件開發(fā)的過程和方法。 2、通過MCS-51單片機應(yīng)用系統(tǒng)的設(shè)計與編程應(yīng)用,將理論知識和實際應(yīng)用結(jié)合起來,加深對電子電路、電子元器件、印刷電路板等方面的知識,提高在軟件編程、排錯調(diào)試、焊接技術(shù)、相關(guān)設(shè)備的使用技能。掌握單片機的接口及外圍設(shè)備的特性,使用和控制方法。為以后設(shè)計和實現(xiàn)單片機應(yīng)用系統(tǒng)打下良好的基礎(chǔ)。3、通過密碼鎖的設(shè)計將所學(xué)知識融會貫通,鍛煉獨立設(shè)計、制作和調(diào)試單片機應(yīng)用系統(tǒng)的能力,領(lǐng)會單片機

4、應(yīng)用系統(tǒng)的軟件、硬件調(diào)試方法和習(xí)題研制開發(fā)過程,為進一步的動手實踐活動打下一定的基礎(chǔ)。1 課程設(shè)計題目2、4位電子密碼鎖設(shè)計任務(wù)要求:1、掌握單片機最小系統(tǒng)的設(shè)計方法;2、掌握數(shù)碼管動態(tài)掃描原理與實現(xiàn)方法;3、掌握矩陣鍵盤的工作原理和使用方法;4、利用矩陣鍵盤實現(xiàn)4位密碼的輸入;5、利用4位數(shù)碼管顯示工作狀態(tài),如待機,開鎖,關(guān)鎖,修改密碼,輸入密碼,密碼是否正確等狀態(tài)信息;6、輸入密碼為數(shù)字09,具有確定輸入及密碼修改功能;連續(xù)三次密碼輸入錯誤將鎖定10秒并報警。2 系統(tǒng)設(shè)計密碼輸入設(shè)備開關(guān)鎖的LED燈顯示報警鳴笛電路數(shù)碼管顯示2.1 總的系統(tǒng)設(shè)計結(jié)構(gòu)圖AT89S52圖 2 12.2系統(tǒng)硬件設(shè)

5、計 本次課程設(shè)計的密碼鎖電路主要由四個模塊組成:鍵盤輸入模塊、數(shù)據(jù)處理模塊、數(shù)碼管顯示控制模塊,繼電器驅(qū)動模塊和蜂鳴器報警模塊。通過單片機送給開鎖執(zhí)行機構(gòu),電路驅(qū)動繼電器吸合,從而達到開鎖的目的。如圖1-2所示,為密碼鎖開鎖電路原理圖。當(dāng)用戶輸入的密碼正確時,單片機便輸出開門信號,送到繼電器驅(qū)動電路,然后驅(qū)動繼電器常開觸點閉合,達到開門的目的。本次設(shè)計中,繼電器選用固態(tài)繼電器,信息通過數(shù)碼管顯示,并利用蜂鳴器和發(fā)光二極管聲光指示。其中,綠發(fā)光二極管亮,蜂鳴器響一聲表示開鎖;否則,密碼輸入三次錯誤,則開啟報警裝置。圖 2 23 AT89S52最小系統(tǒng)設(shè)計單片機最小系統(tǒng)包括CPU、時鐘電

6、路和復(fù)位電路等三部分。下面則分別介紹這三部分的選取。3.1 時鐘電路設(shè)計時鐘電路用于產(chǎn)生單片機工作時所必需的時鐘控制信號,常用的時鐘電路有內(nèi)部時鐘方式和外部時鐘方式。內(nèi)部時鐘方式電路外接兩個電容和一個晶振,根據(jù)振蕩頻率要求的不同選用不同阻值的電容和晶振。時鐘電路中的晶振震蕩頻率范圍通常是1.2MHz12MHz,AT89S52常選擇6MHz或12MHz的石英晶體,為消除開鎖驅(qū)動電路誤差,得到準(zhǔn)確的波特率,本設(shè)計選擇震蕩頻率為11.0592MHz的石英晶,時鐘電路如圖3-1所示。圖 3 13.2 復(fù)位電路設(shè)計復(fù)位是單片機的初始化操作,只需在單片機的復(fù)位引腳加上大于2個機器周期的高電平就可使單片機復(fù)

7、位,當(dāng)程序運行出錯或操作進入死循環(huán)狀態(tài)可通過復(fù)位重新啟動程序。MCS-51的復(fù)位是由外部的復(fù)位電路來實現(xiàn)的,AT89S52也不例外,復(fù)位電路通常采用上電自動復(fù)位和按鈕復(fù)位兩種方式,為方便復(fù)位操作,本文采用按鍵電平復(fù)位,電路如圖5所示。其中C取10uF,R2取1K,復(fù)位電路如圖3-2所示。圖324 鍵盤及顯示報警電路的硬件設(shè)計4.1 矩陣鍵盤電路設(shè)計鍵盤是系統(tǒng)中的手動控制部分,所以鍵盤的設(shè)計就顯得尤為的重要。每一條水平(行線)與垂直線(列線)的交叉處不相通,而是通過一個按鍵來連通,利用這種行列式矩陣結(jié)構(gòu)只需要M條行線和N條列線,即可組成具有M×N個按鍵的鍵盤。由于本設(shè)計中要求使用16個

8、按鍵輸入,為減少鍵盤與單片機接口時所占用的I/O線的數(shù)目,故使用矩陣鍵盤。本設(shè)計中,矩陣鍵盤列線和單片機相連,行線與單片機相連。 鍵盤掃描采用行掃描法,即依次置行線中的每一行為低電平,其余均為高電平,掃描列線電平狀態(tài),為低電平即表示該鍵按下。 鍵盤電路硬件連接圖如圖4-1所示。圖 414.2 顯示電路硬件設(shè)計顯示是系統(tǒng)的輸出部分,用于觀察當(dāng)前的輸入狀態(tài)。顯示電路采用三極管對位碼進行驅(qū)動。LED數(shù)碼管有共陽和共陰兩種,把這些LED發(fā)光二極管的正極接到一塊(一般是拼成一個8字加一個小數(shù)點)而作為一個引腳,就叫共陽的,相反的,就叫共陰的,那么應(yīng)用時這個腳就分別的接VCC和GND。再把多個這樣的8字裝

9、在一起就成了多位的數(shù)碼管了 。顯示方式有靜態(tài)顯示和動態(tài)顯示兩種顯示方式。靜態(tài)顯示時,數(shù)據(jù)是分開送到每一位LED上的;而動態(tài)顯示則是數(shù)據(jù)是送到每一個LED上,再根據(jù)位選線來確定是哪一位LED被顯示。靜態(tài)顯示亮度很高,但口線占用較多;動態(tài)顯示占用口線數(shù)目較少,適合用在顯示位數(shù)較多的場合,但顯示位數(shù)的增多,將占用大量的CPU時間。本次設(shè)計選用動態(tài)顯示。如圖4-2所示。圖 4 24.3 繼電器驅(qū)動電路及報警電路設(shè)計繼電器簡介固態(tài)繼電器(Solid State Relay,縮寫SSR),是由微電子電路,分立電子器件,電力電子功率器件組成的無觸點開關(guān)。用隔離器件實現(xiàn)了控制端與負載端的隔離。固態(tài)繼電器的輸入

10、端用微小的控制信號,達到直接驅(qū)動大電流負載。 固態(tài)繼電器有三部分組成:輸入電路,隔離(耦合)和輸出電路。按輸入電壓的不同類別,輸入電路可分為直流輸入電路,交流輸入電路和交直流輸入電路三種。有些輸入控制電路還具有與TTL/CMOS兼容,正負邏輯控制和反相等功能。固態(tài)繼電器的輸入與輸出電路的隔離和耦合方式有光電耦合和變壓器耦合兩種。固態(tài)繼電器的輸出電路也可分為直流輸出電路,交流輸出電路和交直流輸出電路等形式。交流輸出時,通常使用兩個可控硅或一個雙向可控硅,直流輸出時可使用雙極性器件或功率場效應(yīng)管。 1、固態(tài)繼電器的優(yōu)點 (1)高壽命,高可靠:固態(tài)繼電器沒有機械零部件,有固體器件完成觸點功能,由于沒

11、有運動的零部件,因此能在高沖擊,振動的環(huán)境下工作,由于組成固態(tài)繼電器的元器件的固有特性,決定了固態(tài)繼電器的壽命長,可靠性高。 (2)靈敏度高,控制功率小,電磁兼容性好:固態(tài)繼電器的輸入電壓范圍較寬,驅(qū)動功率低,可與大多數(shù)邏輯集成電路兼容不需加緩沖器或驅(qū)動器。 (3)快速轉(zhuǎn)換:固態(tài)繼電器因為采用固體器件,所以切換速度可從幾毫秒至 9 幾微妙。 (4)電磁干擾小:固態(tài)繼電器沒有輸入“線圈”,沒有觸點燃弧和回跳,因而減少了電磁干擾。大多數(shù)交流輸出固態(tài)繼電器是一個零電壓開關(guān),在零電壓處導(dǎo)通,零電流處關(guān)斷,減少了電流波形的突然中斷,從而減少了開關(guān)瞬態(tài)效應(yīng)。 2、固態(tài)繼電器的缺點 (1)導(dǎo)通后的管壓降大,

12、可控硅或雙相控硅的正向降壓可達12V,大功率晶體管的飽和壓降也在12V之間,一般功率場效應(yīng)管的導(dǎo)通電阻也較機械觸點的接觸電阻大。 (2)半導(dǎo)體器件關(guān)斷后仍可有數(shù)微安至數(shù)毫安的漏電流,因此不能實現(xiàn)理想的電隔離。 (3)由于管壓降大,導(dǎo)通后的功耗和發(fā)熱量也大,大功率固態(tài)繼電器的體積遠遠大于同容量的電磁繼電器,成本也較高。 (4) 電子元器件的溫度特性和電子線路的抗干擾能力較差,耐輻射能力也較差,如不采取有效措施,則工作可靠性低。 (5)固態(tài)繼電器對過載有較大的敏感性,必須用快速熔斷器或RC阻尼電路對其進行過載保護。固態(tài)繼電器的負載與環(huán)境溫度明顯有關(guān),溫度升高,負載能力將迅速下降。 (6)主要不足是

13、存在通態(tài)壓降(需相應(yīng)散熱措施),有斷態(tài)漏電流,交直流不能通用,觸點組數(shù)少,另外過電流、過電壓及電壓上升率、電流上升率等指標(biāo)差。4.3.2 固態(tài)繼電器驅(qū)動電路設(shè)計當(dāng)用戶輸入的密碼正確時,單片機便輸出開門信號,送到繼電器驅(qū)動電路,然后驅(qū)動繼電器常開觸點閉合,綠發(fā)光二極管亮,表示開鎖;否則,紅發(fā)光二極管亮,表示未開鎖。硬件設(shè)計圖如下。圖 4 3報警提示電路報警提示電路采用小蜂鳴器提示。蜂鳴器能夠根據(jù)脈沖信號,以及信號的頻率發(fā)出各種不同的聲音,這樣可以根據(jù)系統(tǒng)要求在密碼出入正確和密碼輸入錯誤時發(fā)出不同的聲音提示,已達到報警的要求。蜂鳴器電路,如圖4-4。圖 44 5 系統(tǒng)軟件設(shè)計在系統(tǒng)設(shè)計中,除了硬件

14、設(shè)計之外,軟件設(shè)計也是很重要的,它是系統(tǒng)工作的指揮者,因此系統(tǒng)軟件設(shè)計時要遵循結(jié)構(gòu)合理、操作性能好、具有一定的保護措施、兼容性好的設(shè)計原則來開發(fā)設(shè)計。密碼鎖系統(tǒng)軟件設(shè)計主要包括主程序模塊、密碼比較判斷模塊、鍵盤掃描模塊、修改密碼模塊、數(shù)碼管顯示模塊等及按鍵檢測模塊。系統(tǒng)程序流程圖5-1開始圖 5 1系統(tǒng)初始化顯示界面按鍵檢測是讀入鍵值判斷密碼對否否設(shè)置新密碼報警鳴笛否是B鍵是否按下開鎖,亮綠燈5.1主程序模塊主程序主要用于定義全局變量,給全局變量賦初值,啟動定時器,為整個程序提供數(shù)據(jù);檢測按鍵;調(diào)用顯示等功能。5.2密碼比較判斷模塊該模塊的功能是將鍵盤輸入的密碼利用if語句與設(shè)定的密碼進行逐個

15、比較,若密碼完全正確則開鎖;若不正確三次,則開啟報警電路,可重新輸入密碼。其密碼輸入和比較判決流程圖如下圖5-2.三次圖 5 25.3鍵盤掃描模塊鍵盤使用矩陣式鍵盤,由行和列組成,CPU對所有鍵盤進行監(jiān)視,從而實現(xiàn)逐列掃描鍵盤確定被按鍵的具體位置、判斷鍵盤上有無鍵按下、消除去抖動、判斷閉合的鍵是否釋放等功能。如圖5-3所示,為鍵盤掃描流程圖.圖 5-35.4修改密碼模塊圖 5-4在密碼輸入正確情況下,可以按下“重置密碼”對密碼進行重新設(shè)置,每設(shè)定一位就將密碼存儲起來,當(dāng)設(shè)置4位密碼完畢后,系統(tǒng)將自動跳到程序開始,調(diào)用新設(shè)置的密碼。圖5-4為修改密碼流程圖.5.5數(shù)碼管液晶顯示模塊在顯示之前,我

16、們編好了段選表09,通過查表來顯示,由于本次設(shè)計采用動態(tài)顯示,所以先送段選給每一位,然后給相應(yīng)的數(shù)碼管送位選,延時1MS,再給下一位送段選,送位選,延時1MS,以此類推,讓4位數(shù)碼管顯示不同的數(shù)字,利用人的視覺暫留,使我們看到4位數(shù)碼管的動態(tài)顯示效果。顯示子程序流程圖如圖5-5所示。圖 5 56 總體調(diào)試在本次軟件調(diào)試中,我們使用的是STC_ISP_V481C51單片機下載工具和Keil uVision2軟件,Keil uVision2是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),使用接近于傳統(tǒng)c語言的語法來開發(fā),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可

17、維護性上有明顯的優(yōu)勢,因而易學(xué)易用,而且大大的提高了工作效率和項目開發(fā)周期,他還能嵌入?yún)R編,您可以在關(guān)鍵的位置嵌入,使程序達到接近于匯編的工作效率。Keil C51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全Windows界面,使您能在很短的時間內(nèi)就能學(xué)會使用keil c51來開發(fā)您的單片機應(yīng)用程序 。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。7 總結(jié)經(jīng)過三周的緊張設(shè)計,終于順利完成了設(shè)計任務(wù)。本次課程設(shè)計主要是針對密碼鎖系統(tǒng)做了詳細介紹,以AT8

18、9S52為核心,并通過調(diào)試運行可以實現(xiàn)數(shù)碼管顯示器顯示密碼輸入的相關(guān)信息,通過10位數(shù)字按鍵(09)設(shè)置4位數(shù)字(09)密碼,實現(xiàn)3個功能按鍵,利用繼電器模擬電子門鎖作出是否開門以及報警等反應(yīng)。 通過課程設(shè)計讓我對單片機系統(tǒng)有了較詳細的了解,而且觸及到與其相關(guān)的很多新知識,而且隨著電子技術(shù)的發(fā)展簡易數(shù)字電壓表也會越來越完善,作為大學(xué)生的我們應(yīng)該跟上時代的步伐,時刻關(guān)注形勢變化,不斷充實更新自己的知識。 在設(shè)計中既應(yīng)用到了基礎(chǔ)知識,也用到了專業(yè)知識,它是對三年來所學(xué)知識的綜合考察。最重要的是我通過親自設(shè)計,親自繪制原理圖,印制電路板以及系統(tǒng)調(diào)試培養(yǎng)了我的耐心和細心,這對我以后的工作和學(xué)習(xí)有很大的

19、幫助。最后,在完成本次課程設(shè)計的過程中,還得到眾多朋友的關(guān)心支持和幫助,非常感謝黃源老師的悉心指導(dǎo),體會到老師治學(xué)的嚴謹,也讓電子密碼鎖的功能更加完善。參考文獻【1】黃滔基于AT89C51單片機的電子密碼鎖設(shè)計 電子科技報【2】朱定華 戴穎穎 李川香 單片微機原理、匯編與c51接口技術(shù) 清華大學(xué)出版社(第一版)【3】郭天祥 51單片機C語言教程 電子工業(yè)出版社附錄程序#include <reg52.h> /52系列單片機頭文件#define uchar unsigned char#define uint unsigned int sbit baojing=P30;sbit kais

20、uo=P31;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;void delayms(uint xms)uint i,j;for(i=xms;i>0;i-) /i=xms即延時約xms毫秒for(j=110;j>0;j-);void display(uint *A)P0=tableA0; /顯示函數(shù)只送段選數(shù)據(jù)P1=0xfe;delayms(1);P0=tableA1; /顯示函數(shù)只送段選數(shù)據(jù)P1=0xfd;delayms(1);P0=

21、tableA2; /顯示函數(shù)只送段選數(shù)據(jù)P1=0xfb;delayms(1);P0=tableA3; /顯示函數(shù)只送段選數(shù)據(jù)P1=0xf7;delayms(1); matrixkeyscan(uint *A,uint key)uchar temp; P2=0xfe; temp=P2; temp=temp&0xf0; if(temp!=0xf0) delayms(10); temp=P2; temp=temp&0xf0; if(temp!=0xf0) temp=P2; switch(temp) case 0xee: key=0; break; case 0xde: key=1;

22、break; case 0xbe: key=2; break; case 0x7e: key=3; break; while(temp!=0xf0) temp=P2; temp=temp&0xf0; display(A); P2=0xfd; temp=P2; temp=temp&0xf0; if(temp!=0xf0) delayms(10); temp=P2; temp=temp&0xf0; if(temp!=0xf0) temp=P2; switch(temp) case 0xed: key=4; break; case 0xdd: key=5; break; ca

23、se 0xbd: key=6; break; case 0x7d: key=7; break; while(temp!=0xf0) temp=P2; temp=temp&0xf0; display(A); P2=0xfb; temp=P2; temp=temp&0xf0; if(temp!=0xf0) delayms(10); temp=P2; temp=temp&0xf0; if(temp!=0xf0) temp=P2; switch(temp) case 0xeb: key=8; break; case 0xdb: key=9; break; case 0xbb:

24、key=10; break; case 0x7b: key=11; break; while(temp!=0xf0) temp=P2; temp=temp&0xf0; display(A); P2=0xf7; temp=P2; temp=temp&0xf0; if(temp!=0xf0) delayms(10); temp=P2; temp=temp&0xf0; if(temp!=0xf0) temp=P2; switch(temp) case 0xe7: key=12; break; case 0xd7: key=13; break; case 0xb7: key=1

25、4; break; case 0x77: key=15; break; while(temp!=0xf0) temp=P2; temp=temp&0xf0; display(A); return key;void main() uint D =1,3,5,8;uint A =10,10,10,10,10;uint i=0,cishu=3; uint key=-1;kaisuo=1;baojing=0; while(1) key= matrixkeyscan(A,key); if(key=10) A0=10;A1=10;A2=10; A3=10; key=-1; while(1) key= matrixkeyscan(A,key); if(key>=0&&key<=9) Ai=key; key=-1; i+; if(i>=4) break; i=0; if(A0=D0&&A1=D1&&A2=D2&&A3=D3) baojing=1; delayms(50);baojing=0; kaisuo=0; /A0=10; /A1=10; /A2=10; /A3=10; if(A

溫馨提示

  • 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. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論