【正文】
課程設(shè)計(jì) 題目 基于LCD1602顯示的電子密碼鎖設(shè)計(jì)學(xué)院名稱 電氣工程學(xué)院 指導(dǎo)老師 朱衛(wèi)華 班 級 電子信息工程01班學(xué) 號 20094470128 學(xué)生姓名 周后景 2013年1月目 錄 1. 緒論3 引言3 摘要42. 總體設(shè)計(jì)方案5 設(shè)計(jì)思路5 方案確立5 總體設(shè)計(jì)方框圖53. 設(shè)計(jì)原理分析6 單片機(jī)及其外圍電路6 復(fù)位電路的設(shè)計(jì)6 時(shí)鐘電路的設(shè)計(jì)7 密碼控制電路7 矩陣鍵盤電路的設(shè)計(jì)7 報(bào)警控制電路的設(shè)計(jì)9 液晶顯示電路94. 系統(tǒng)軟件設(shè)計(jì)10 系統(tǒng)主程序10 初始化及按鍵識別11 開鎖處理12 5. 仿真調(diào)試與測試14總結(jié)16參考文獻(xiàn)17附錄17 引言 在日常的生活和工作中, 住宅與部門的安全防范、單位的文件檔案、財(cái)務(wù)報(bào)表以及一些個(gè)人資料的保存多以加鎖的辦法來解決。若使用傳統(tǒng)的機(jī)械式鑰匙開鎖,人們常需攜帶多把鑰匙, 使用極不方便, 且鑰匙丟失后安全性即大打折扣。隨著科學(xué)技術(shù)的不斷發(fā)展,人們對日常生活中的安全保險(xiǎn)器件的要求越來越高。為滿足人們對鎖的使用要求,增加其安全性,用密碼代替鑰匙的密碼鎖應(yīng)運(yùn)而生。密碼鎖具有安全性高、成本低、功耗低、易操作等優(yōu)點(diǎn)。 在安全技術(shù)防范領(lǐng)域,具有防盜報(bào)警功能的電子密碼鎖逐漸代替?zhèn)鹘y(tǒng)的機(jī)械式密碼鎖,克服了機(jī)械式密碼鎖密碼量少、安全性能差的缺點(diǎn),使密碼鎖無論在技術(shù)上還是在性能上都大大提高一步。隨著大規(guī)模集成電路技術(shù)的發(fā)展,特別是單片機(jī)的問世,出現(xiàn)了帶微處理器的智能密碼鎖,它除具有電子密碼鎖的功能外,還引入了智能化管理、專家分析系統(tǒng)等功能,從而使密碼鎖具有很高的安全性、可靠性,應(yīng)用日益廣泛。 設(shè)計(jì)本課題時(shí)構(gòu)思的方案是用以STC89C52為核心的單片機(jī)控制方案。 摘 要 單片機(jī)技術(shù)是智能化檢測與控制領(lǐng)域應(yīng)用非常普及并且具有很大潛力的技術(shù)。論文闡述一個(gè)基于單片機(jī)的液晶顯示電子密碼鎖的設(shè)計(jì)與實(shí)現(xiàn)。系統(tǒng)采用美國Atmel公司的AT89S52單片機(jī)作為系統(tǒng)核心,液晶顯示器LCD1602作為輸出設(shè)備顯示系統(tǒng)提示信息,4*4矩陣薄膜鍵盤作為輸入設(shè)備,配合蜂鳴器、繼電器等電路構(gòu)成整個(gè)系統(tǒng)硬件;系統(tǒng)軟件采用匯編語言編寫。設(shè)計(jì)的系統(tǒng)液晶顯示,密碼修改方便,具有報(bào)警、鎖定等功能,使用便捷簡單,符合住宅、辦公用鎖需求,具有一定的實(shí)用價(jià)值。 關(guān)鍵詞:密碼鎖;單片機(jī);STC89S52;LCD1602;4*4矩陣鍵盤Abstract Singlechip microputer technology is very popular and has great potential in application of intelligent detection and control field. This thesis describes the design and implementation of LCD electronic passwordlock system based on SCM. The system uses the product of America Atmel corporation AT89S52 as the core of system, liquid crystal monitor 1602 as the output device displaying the prompt information of system, 4*4 matrix membrane keyboard as the input device, with buzzer, relay, and other circuits together constitute the system hardware. The software of the system is written in assembly language. The designed system display in LCD, change password easily, has the function of alarming, locking, and so on. This system is simple and easy to use, meets the demand of residential, office lock needs, has some practical value. Key words: PasswordLock。 Singlechip microputer。 STC89C52。 LCD1602。 44 matrix keyboard 2 總體設(shè)計(jì)方案 設(shè)計(jì)思路 該電路是一種采用以AT89S52為核心的單片機(jī)控制方案。 利用單片機(jī)靈活的編程設(shè)計(jì)和豐富的IO端口,及其控制的準(zhǔn)確性,不但能實(shí)現(xiàn)基本的密碼鎖功能,還要根據(jù)實(shí)際需要添加調(diào)電存儲、聲光提示甚至增加遙控控制功能。 方案確立 為了實(shí)現(xiàn)密碼的保密性,采用一個(gè)44的矩陣式鍵盤可以任意設(shè)置用戶密碼(116位長度),從而提高了密碼的保密性。 設(shè)計(jì)采用一個(gè)超級密碼,送電開機(jī)時(shí),只要輸入超級密碼便可開門,這樣可預(yù)防停電后再送電時(shí)無密碼可用。 采用了1602液晶顯示器來作為顯示單元,提高了可讀性,使用戶對密碼鎖的運(yùn)行情況一目了然。 總體設(shè)計(jì)方框圖本設(shè)計(jì)主要由單片機(jī)、矩陣鍵盤、液晶顯示器和密碼存儲等部分組成。其中矩陣鍵盤用于輸入數(shù)字密碼和進(jìn)行各種功能的實(shí)現(xiàn)。由用戶通過連接單片機(jī)的矩陣鍵盤輸入密碼,后經(jīng)過單片機(jī)對用戶輸入的密碼與自己保存的密碼進(jìn)行對比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開鎖電路或者報(bào)警電路控制開鎖還是報(bào)警,實(shí)際使用時(shí)只要將單片機(jī)的負(fù)載由繼電器換成電子密碼鎖的電磁鐵吸合線圈即可。 ●各模塊功能如下1.鍵盤輸入模塊:分為密碼輸入按鍵與幾個(gè)功能按鍵,用于完成密碼鎖輸入功能。 2.蜂鳴器報(bào)警電路:用于完成輸錯(cuò)密碼時(shí)候的警報(bào)功能。 :用于單片機(jī)的起振。 4.復(fù)位電路:完成系統(tǒng)的復(fù)位。 5.顯示模塊:用于完成對系統(tǒng)狀態(tài)顯示及操作提示功能。 6.開鎖電路:應(yīng)用繼電器及發(fā)光二極管模擬開鎖,完成開鎖及開鎖提示3 設(shè)計(jì)原理分析 本系統(tǒng)外圍電路包括鍵盤輸入部分、密碼存儲部分、復(fù)位部分、顯示部分、報(bào)警部分、開鎖部分組成,根據(jù)實(shí)際情況鍵盤輸入部分選擇44矩陣鍵盤,顯示部分選擇字符型液晶顯示LCD1602,密碼存儲部分選用內(nèi)部存儲器來完成。 復(fù)位是單片機(jī)的初始化操作。單片機(jī)啟運(yùn)運(yùn)行時(shí),都需要先復(fù)位,其作用是使CPU和系統(tǒng)中其他部件處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開始工作。 因而,復(fù)位是一個(gè)很重要的操作方式。但單片機(jī)本身是不能自動進(jìn)行復(fù)位的,必須配合相應(yīng)的外部電路才能實(shí)現(xiàn)。該復(fù)位電路采用按鍵電平復(fù)位式復(fù)位電路。當(dāng)單片機(jī)已在運(yùn)行當(dāng)中時(shí),按下復(fù)位鍵S后松開,在復(fù)位引腳RET(9腳)腳持續(xù)出現(xiàn)24個(gè)振蕩器脈沖周期(即2個(gè)機(jī)器周期)的高電平信號將使單片機(jī)復(fù)位。也能使RST為一段時(shí)間的高電平,從而實(shí)現(xiàn)上電或開關(guān)復(fù)位的操作。 時(shí)鐘電路為單片機(jī)產(chǎn)生時(shí)序脈沖,單片機(jī)所有運(yùn)算與控制過程都是在統(tǒng)一的時(shí)序脈沖的驅(qū)動下的進(jìn)行的,如果單片機(jī)的時(shí)鐘電路停止工作(晶振停振),那么單片機(jī)也就停止運(yùn)行了。當(dāng)采用內(nèi)部時(shí)鐘時(shí),連接方法如下圖所示,在晶振引腳XTAL1(19腳)和XTAL2(18腳)引腳之間接入一個(gè)12MHZ晶振,兩個(gè)引腳對地分別再接入一個(gè)電容即可產(chǎn)生所需的時(shí)鐘信號,電容的容量一般在幾十皮法,如22PF。 密碼鎖控制電路 為了加強(qiáng)密碼的保密性,采用一個(gè)44的矩陣式鍵盤可以任意設(shè)置用戶密碼(116位長度),從而提高了密碼的保密性,同時(shí)也能減少與單片機(jī)接口時(shí)所占用的I/O口線的數(shù)目,節(jié)省了單片機(jī)的寶貴資源,在按鍵比較多的時(shí)候,通常采用這種方法。 矩陣鍵盤 每一行與每一列的交叉處不相同,而是通過一個(gè)按鍵來連通,利用這種行列式矩陣結(jié)構(gòu)只需要N根行線與M根列線,即可組成具有N M 個(gè)按鍵的矩陣鍵盤。 在這種行列式矩陣鍵盤編碼的單片機(jī)系統(tǒng)中,鍵盤處理程序首先執(zhí)行等待按鍵并確認(rèn)有無按鍵按下的程序段。 當(dāng)確認(rèn)有按鍵按下后,下一步就是要識別哪一個(gè)按鍵被按下。對鍵的識別方法通常有兩種:一種是通用的組行掃描查詢法;另一種是速度較快的線反轉(zhuǎn)法。 此系統(tǒng)中,我們采用線反轉(zhuǎn)法。首先辨別鍵盤中有無按鍵被按下,在單片機(jī)I/O口向鍵盤送全掃描字,然后讀入行線狀態(tài)來判斷。具體方法是:向行線輸出全掃描字00H,把全部列線置成低電平,然后將列線的電平狀態(tài)讀入累加器A中。如果有按鍵被按下,總會有一根行線電瓶被拉至低電平從而使行線不全為1。 判斷鍵盤中哪一個(gè)按鍵被按下通常是通過將列線逐列至低電平后,檢查行輸入狀態(tài)來實(shí)現(xiàn)的。方法是:依次給列線送低電平,然后檢查所有行線狀態(tài),如果全為1,則所按下的按鍵不在此列;如果不全為1,則所按下的按鍵必在此列,而且是在與零電平行線相交的交點(diǎn)上的那個(gè)按鍵。 ,共計(jì)10個(gè)數(shù)字鍵和6個(gè)功能鍵,鍵盤側(cè)面還有一個(gè)微型蜂鳴器。鍵盤側(cè)面還有一個(gè)蜂鳴器,每操作一次,它便發(fā)出聲音,提示操作成功 10個(gè)數(shù)字鍵用來輸入密碼,另外6個(gè)功能鍵分別是