版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
摘要 隨著科技的發(fā)展和人們生活水平的提高,現(xiàn)今中國社會(huì)的家庭物質(zhì)財(cái)產(chǎn)比上一個(gè)十年有了質(zhì)的飛躍。提高防盜意識(shí),提升鎖具的安全系數(shù)成為當(dāng)務(wù)之急。過去沿用至今的傳統(tǒng)的機(jī)械鎖由于其構(gòu)造的簡單,以及已經(jīng)許久沒有技術(shù)更新,導(dǎo)致安全系數(shù)下降。被撬的事件屢見不鮮。反觀電子鎖,它的出現(xiàn)是當(dāng)今智能時(shí)代來臨的大勢所趨,其保密性高,使用靈活性好,安全系數(shù)高。智能門鎖就算被強(qiáng)行破門,在失竊的情況下也能配合其他智能設(shè)備,如監(jiān)控,對(duì)嫌疑人的生物特征進(jìn)行采集。對(duì)后期案件偵破有重大幫助。本設(shè)計(jì)旨在設(shè)計(jì)一款基于stc89c52單片機(jī)并且集成了指紋認(rèn)證和IC卡認(rèn)證的智能密碼鎖。本設(shè)計(jì)用stc89c52微控制處理器芯片作為主控,采用指紋識(shí)別模塊,和IC卡認(rèn)證模塊組成的安全認(rèn)證系統(tǒng),可通過矩陣鍵盤輸入的電子密碼設(shè)置指紋密碼解鎖和IC認(rèn)證兩種解鎖方式。采用LCD12864液晶進(jìn)行顯示和交互反饋。測試結(jié)果表明,本系統(tǒng)各項(xiàng)功能已達(dá)到本設(shè)計(jì)的所有要求。關(guān)鍵字:防盜安全,智能門鎖,stc89c52單片機(jī),IC卡
AbstractWiththedevelopmentofscienceandtechnologyandtheimprovementofpeople'slivingstandards,thematerialpropertyofthefamilyinChinahasmadeaqualitativeleapoverthepastdecade.Itisanurgenttasktoimprovetheawarenessofanti-theftandthesafetyfactoroflocks.Inthepast,thetraditionalmechanicallock,becauseofitssimplestructureandnotechnicalupdateforalongtime,leadstothedecreaseofsafetyfactor.Therearemanycasesofbeingprized.Incontrast,theemergenceofelectroniclockisthegeneraltrendofthecomingoftheintelligentage.Ithashighsecurity,goodflexibilityandhighsafetyfactor.Eveniftheintelligentdoorlockisbrokenbyforce,itcancooperatewithotherintelligentdevices,suchasmonitoring,tocollectthebiologicalcharacteristicsofthesuspectinthecaseoftheft.Itisofgreathelptotheinvestigationoflatercases.ThepurposeofthisdesignistodesignanintelligentpasswordlockbasedonSTC89C52,whichintegratesfingerprintauthenticationandICcardauthentication.Inthisdesign,STC89C52chipisusedasthemaincontroller,andfingerprintidentificationmoduleandICcardauthenticationmoduleareusedasthesecurityauthenticationsystem.FingerprintpasswordunlockingandICauthenticationcanbesetthroughtheelectronicpasswordinputbymatrixkeyboard.LCD12864liquidcrystalisusedfordisplayandinteractivefeedback.Thetestresultsshowthatallthefunctionsofthesystemhavereachedalltherequirementsofthedesign.Keywords:Antitheftsecurity,intelligentdoorlock,STC89C52singlechipmicrocomputer,ICcard廣東東軟學(xué)院本科生畢業(yè)設(shè)計(jì)(論文)目錄第一章引言 21.1前言 21.2行業(yè)背景 31.3設(shè)計(jì)特點(diǎn) 3第二章系統(tǒng)設(shè)計(jì) 52.1硬件模塊選擇 52.2系統(tǒng)整體設(shè)計(jì) 8第三章系統(tǒng)硬件電路設(shè)計(jì) 93.1stc89c52最小系統(tǒng)設(shè)計(jì) 93.2LCD12864液晶顯示器電路設(shè)計(jì) 103.3AS608指紋識(shí)別模塊電路設(shè)計(jì) 123.4蜂鳴器電路的設(shè)計(jì) 133.5電磁繼電器電路設(shè)計(jì) 143.6整體電路設(shè)計(jì)如下圖 15第四章系統(tǒng)軟件設(shè)計(jì) 164.1軟件開發(fā)環(huán)境 164.2主函數(shù)設(shè)計(jì) 164.3指紋通信設(shè)計(jì) 194.4LCD12864顯示設(shè)計(jì) 21第五章測試 22第六章結(jié)論 23參考文獻(xiàn) 24致謝 25附錄 26
第一章引言1.1前言隨著科技的發(fā)展和人們生活水平的提高,現(xiàn)今中國社會(huì)的家庭物質(zhì)財(cái)產(chǎn)比上一個(gè)十年有了質(zhì)的飛躍。提高防盜意識(shí),提升鎖具的安全系數(shù)成為當(dāng)務(wù)之急。過去沿用至今的傳統(tǒng)的機(jī)械鎖由于其構(gòu)造的簡單,以及已經(jīng)許久沒有技術(shù)更新,導(dǎo)致安全系數(shù)下降。被撬的事件屢見不鮮。反觀電子鎖,它的出現(xiàn)是當(dāng)今智能時(shí)代來臨的大勢所趨,其保密性高,使用靈活性好,安全系數(shù)高。智能門鎖就算被強(qiáng)行破門,在失竊的情況下也能配合其他智能設(shè)備,如監(jiān)控,對(duì)嫌疑人的生物特征進(jìn)行采集。對(duì)后期案件偵破有重大幫助?;仡欐i的歷史畫卷,鎖在中華文化中歷史悠久,鎖的歷史最遠(yuǎn)可以追溯到中國五千年前的仰韶文化時(shí)期,在那時(shí)就已經(jīng)有鎖的誕生了,而在商周時(shí)期,鎖也有比較多的文字記載。到了春秋和戰(zhàn)國,因?yàn)閼?zhàn)爭多發(fā),誕生并且促使了機(jī)關(guān)術(shù)的發(fā)展,從而促使鎖的技術(shù)發(fā)展。發(fā)展速度可以說是突飛猛進(jìn)。隨后鎖技術(shù)逐步發(fā)展,出現(xiàn)了諸如青銅鎖,葉片鎖,彈子鎖等機(jī)械結(jié)構(gòu)鎖具。而我們目前常用的門鎖便是彈子鎖和葉片鎖發(fā)展改進(jìn)過來的。但是其實(shí)葉片鎖和彈子鎖技術(shù)早在公元8世紀(jì)便出現(xiàn)了。盡管通過現(xiàn)代機(jī)械工業(yè)設(shè)計(jì)思想對(duì)其進(jìn)行了幾次技術(shù)提升和結(jié)構(gòu)升級(jí),但是仍然可以說我們現(xiàn)在使用的鎖具是一門非常非?!八囆g(shù)”了。而我們熟知的對(duì)門鎖最為了解的人有三類,相信都知道是哪三類了。那就是鎖具設(shè)計(jì)師,小偷,開鎖匠。而一個(gè)成熟的開鎖匠,打開一把生活常用鎖具,僅僅只需要幾分鐘。傳統(tǒng)鎖具之所以如此脆弱,是因?yàn)槠鋵?shí)由純機(jī)械結(jié)構(gòu)構(gòu)成的,無論在設(shè)計(jì)上如何提高復(fù)雜度,依舊無法避免鎖與鎖之間的趨同性。目前所有的鎖具其實(shí)并未真正擁有防盜之能。所以智能門鎖的興起是必然的。只有通過生物特征數(shù)字加密才能做到獨(dú)一無二的安全防護(hù)。1.2行業(yè)背景隨著科學(xué)技術(shù)的進(jìn)步。物聯(lián)網(wǎng)技術(shù)出現(xiàn)了,智能硬件也在最近兩年快速在民眾中遍及,而技術(shù)的進(jìn)步也大大降低了智能家居設(shè)備的生成成本。越來越多的家庭開始智能化生活,而隨著科學(xué)技術(shù)的進(jìn)步,門鎖也已經(jīng)從傳統(tǒng)的銅制的純機(jī)械結(jié)構(gòu)的機(jī)械鎖具,發(fā)展出夾雜著現(xiàn)代電子科技的各類門鎖,甚至還有人臉解鎖。智能門鎖可以說是智能家居的入門類產(chǎn)品也是最重要的產(chǎn)品之一。智能門鎖近幾年發(fā)展可以說非常迅速,在多個(gè)行業(yè)不斷技術(shù)探索下,智能門鎖的未來越來越明顯,發(fā)展趨勢也逐漸明朗。近兩年間,我國家用智能門鎖開始了井噴式的大爆發(fā),生物特征技術(shù)的快速發(fā)展也在迅速提高智能門鎖的安全級(jí)別。而在眾多的生物特征認(rèn)證技術(shù)中,指紋認(rèn)證可以說是最“老牌”的生物特征認(rèn)證技術(shù)了,也是最穩(wěn)定安全的認(rèn)證技術(shù)之一。指紋識(shí)別的應(yīng)用場景,大到銀行取款,小道手機(jī)支付,可以說指紋是當(dāng)下財(cái)產(chǎn)保護(hù)的特征認(rèn)證主要手段之一。指紋識(shí)別作為最廣泛的生物特征認(rèn)證技術(shù),早已經(jīng)滲透進(jìn)我們生活的點(diǎn)點(diǎn)滴滴。而除了指紋,生活中最常用的另一種身份認(rèn)證手段便是IC卡認(rèn)證了,無論是水卡、飯卡、還是校卡、身份證、銀行卡都可以歸類為IC卡,所以開發(fā)一款基于指紋認(rèn)證的智能門鎖,無論是安全系數(shù),穩(wěn)定性,市場性都是十分明智的選擇。1.3設(shè)計(jì)特點(diǎn)本設(shè)計(jì)旨在設(shè)計(jì)一款基于stc89c52單片機(jī)并且集成了指紋認(rèn)證和IC卡認(rèn)證的智能密碼鎖。本設(shè)計(jì)以stc89c52微控制處理器芯片作為主控,采用AS608指紋識(shí)別模塊,和IC卡認(rèn)證模塊組成的安全認(rèn)證系統(tǒng),可通過矩陣鍵盤輸入的電子密碼設(shè)置指紋密碼解鎖和IC認(rèn)證兩種解鎖方式。采用LCD12864液晶進(jìn)行顯示和交互反饋。單片機(jī)又叫微控制器,MCU,它與普通的邏輯芯片相比有很大區(qū)別,它把一個(gè)最基礎(chǔ)計(jì)算機(jī)硬件系統(tǒng)集成到一片芯片上,其具體包括,用于數(shù)據(jù)運(yùn)算、處理的CPU、用于隨機(jī)存儲(chǔ)的RAM、只讀的存儲(chǔ)器ROM、以及I/O口和中斷任務(wù)系統(tǒng)、還有定時(shí)器和計(jì)數(shù)器這些功能。可以說是一個(gè)完整的微型的計(jì)算機(jī)。單片機(jī)和計(jì)算機(jī)相比,缺少了許多的外部設(shè)備接口,和許多高級(jí)功能的拓展,但是正因?yàn)槠湄S富的可拓展性和可定制性,使它成為了當(dāng)下智能硬件的主要應(yīng)用芯片。一塊芯片稍加拓展就成了一臺(tái)基礎(chǔ)計(jì)算機(jī)設(shè)備。單片機(jī)的體積很小、質(zhì)量也很輕、價(jià)格十分便宜、為應(yīng)用和開發(fā)提供了許多便利條件。 本次設(shè)計(jì)的基于指紋IC卡的樓宇門禁系統(tǒng),主要由以下特點(diǎn)。用戶可以通過指紋認(rèn)證或者IC卡認(rèn)證,進(jìn)行開門的動(dòng)作。用戶可以在輸入管理員密碼后進(jìn)行添加和刪除新用戶的信息。通過矩陣鍵盤輸入管理密碼。在進(jìn)入管理員界面后可修改管理員密碼。密碼輸入錯(cuò)誤會(huì)進(jìn)入鎖死狀態(tài),然后蜂鳴器警報(bào)開啟。
第二章系統(tǒng)設(shè)計(jì)2.1硬件模塊選擇2.1.1主控芯片的選擇方案一:使用STM32F103微控制處理器。STM32F103微控制處理器芯片由意法半導(dǎo)體和生產(chǎn)設(shè)計(jì)的。STM32F系列是基于ARM的32位微控制處理器芯片,他主打的是中低端微控制處理器市場,而F103是這一系列中的入門級(jí)微控制處理器芯片。方案二:使用MSP430單片機(jī)。MSP430的微控制處理器是德州儀器公司設(shè)計(jì)的芯片。他具有很多優(yōu)點(diǎn),比如超低的功耗,超高的信號(hào)處理能力、而且它還集成了一套精簡的指令集(RISC),這是其他常規(guī)單片機(jī)不具備的,美國的德州儀器公司將這多個(gè)特點(diǎn)的處理芯片集成了MSP430,MSP430是一款具有出色混合信號(hào)處理能力的MCU,和常規(guī)的單片機(jī)相比較,德州儀器(TI)公司在針對(duì)電信號(hào)處理的實(shí)際需求,在MSP430里集成了高精度的模擬、數(shù)字信號(hào)處理電路,將多個(gè)優(yōu)良特點(diǎn)集成為一個(gè)高效的DSP處理器并且將一個(gè)單片機(jī)微處理器集成到MSP430的單個(gè)芯片上,提供單片機(jī)與DSP的優(yōu)秀的綜合設(shè)計(jì)方案。方案三:使用STC89C52RC單片機(jī)。STC89C52RC微控制處理器芯片一款8位的單片機(jī)微控制處理器芯片,他是STC公司設(shè)計(jì)的,STC89C52RC微控制處理器芯片是MCS-51指令架構(gòu)內(nèi)核,擁有51的優(yōu)良傳統(tǒng)特點(diǎn),超低功耗、高性能。STC公司對(duì)MCS-51指令架構(gòu)內(nèi)核做了很多優(yōu)秀的改良和升級(jí),所以STC89C52RC微控制處理器芯片繼承了老牌51單片機(jī)的所有功能和優(yōu)點(diǎn),還有很多51沒有的創(chuàng)新功能。STC89C52RC內(nèi)置了8K的Flash,足夠存儲(chǔ)一般大小的基本數(shù)據(jù)。STC89C52RC在性能上,它擁有不大不小常規(guī)的8位CPU。所以STC89C52在眾多的嵌入式設(shè)計(jì),特別是控制類的應(yīng)用設(shè)計(jì)上頻繁采用。方案分析:首先,stm32f103c8t6是一款32位的微控制處理器芯片。32位的結(jié)構(gòu)也說明了它具有超高的運(yùn)算性能。本設(shè)計(jì)的主控芯片并不需要負(fù)擔(dān)大量的數(shù)字運(yùn)算,所以可以選取更低成本的低數(shù)位的MCU。其次,MSP430單片機(jī)是混合信號(hào)處理的控制芯片。通常MSP430常用于信號(hào)處理DSP居多。并不常用在控制領(lǐng)域,所以不適合作為本設(shè)計(jì)的主控芯片。最后我們選定了stc89c52rc作為主控芯片。因?yàn)閟tc89c52作為老牌的單片機(jī)芯片。具有穩(wěn)定,低功耗,而且8位的性能足以勝任本設(shè)計(jì)的指令處理工作。2.1.2按鍵模塊的選擇方案一:使用矩陣鍵盤。矩陣鍵盤是單片機(jī)設(shè)計(jì)中常用的外部輸入設(shè)備。矩陣結(jié)構(gòu)使得不能它像普通按鍵一樣的中斷檢測方法。常用的的矩陣鍵盤檢測方法一般是掃描法,常用的矩陣鍵盤一般列線識(shí)通過外接電阻再接單片機(jī)芯片的VCC口,然后行線接到單片機(jī)芯片的檢測I/O口上。方案二:使用電容式感應(yīng)觸摸按鍵。觸摸鍵盤具有扁平化,美觀化的特點(diǎn)。但是在按鍵反饋上不及傳統(tǒng)的鍵盤。方案分析:本設(shè)計(jì)我們采用了矩陣鍵盤作為輸入設(shè)備,因?yàn)楸驹O(shè)計(jì)對(duì)穩(wěn)定性和安全性有很高的要求,電容式薄膜鍵盤會(huì)因?yàn)槭种赋龊?,手濕,空氣濕潤等原因?qū)е抡`觸。但是矩陣鍵盤不但能很好地解決這個(gè)問題,而且矩陣鍵盤的按鍵回彈有力,能夠更好地提供用戶的反饋體驗(yàn)。2.1.3IC卡讀寫模塊的選擇方案一:使用的是型號(hào)MFRC522的讀寫模塊。在IC卡的讀寫模塊中,發(fā)射低電壓,低成本,小尺寸的非接觸讀卡器芯片有很多,MFRC522讀寫??焓窃?3.56MHz頻段的非接觸近場通信頻帶的近場通信模塊,這是具有一個(gè)集成了高端dsp處理能力的的IC卡讀卡器。方案二:使用DK25L讀寫模塊。DK25L讀寫模塊是基于13.56MH2的高頻卡讀寫模塊,采用UART通訊接凵,兼容性好,通用性強(qiáng)。用戶通過UART向模塊發(fā)送簡單指令可實(shí)現(xiàn)對(duì)NFC卡片進(jìn)行讀寫操作,簡單易用,用戶可使用該模塊高效快速開發(fā)NFC讀寫功能產(chǎn)品。方案分析:本次設(shè)計(jì)的IC卡模塊,選擇了更加成熟更加安全的MFRC522。因?yàn)樗捏w積更小。2.1.4顯示模塊的選擇方案一:使用的是液晶顯示器,型號(hào)LCD1602。LCD1602是電子設(shè)計(jì)中最常用的顯示器件之一。它是由顯示字符和圖案的液晶顯示屏(LCD)和驅(qū)動(dòng)電路組成,以及驅(qū)動(dòng)電路上一般帶少量電阻和電容器件用作顯示屏穩(wěn)定工作的保障。方案二:使用液晶顯示器,型號(hào)LCD12864。LCD12864也是電子設(shè)計(jì)中最常用的顯示器件之一。它是由顯示字符和圖案的液晶顯示屏(LCD)和驅(qū)動(dòng)電路組成,以及驅(qū)動(dòng)電路上一般帶少量電阻和電容器件用作顯示屏穩(wěn)定工作的保障。LCD12864在設(shè)計(jì)之初就是帶中文字庫的。簡單來說,LCD12864液晶顯示屏是由寬128,高64的LCD液晶單元組成的一個(gè)液晶點(diǎn)陣。通過通入電流點(diǎn)亮對(duì)應(yīng)的lcd液晶單元,可以繪制分辨率128*64的圖像。并且內(nèi)置的字庫可以很靈活的繪制出文字交互界面。方案三:使用led數(shù)碼管。led數(shù)碼管是我們最早接觸的顯示器件。他是7個(gè)LED半導(dǎo)體發(fā)光元器件按照數(shù)字排列組成的“8”字型的器件,它可以顯示數(shù)字1、2、3、4、5、6、7、8、9、0而且還支持顯示部分英文字母,如A,E,C等等。方案四:使用LED有機(jī)半導(dǎo)體顯示器,型號(hào)OLED12864。OLED技術(shù)是近年來科技發(fā)展的新產(chǎn)物。是另一種優(yōu)良的顯示材料。OLED1286是由顯示用的OLED面板和驅(qū)動(dòng)電路組成,以及驅(qū)動(dòng)電路上一般帶少量電阻和電容器件用作顯示屏穩(wěn)定工作的保障。方案分析:我們選定使用LCD12864模塊作為本設(shè)計(jì)的主要顯示反饋窗口。首先,智能門鎖交互所要顯示的字符元素繁多,有數(shù)字,中文,英文等等各種繁雜的字符。由此可見LED數(shù)碼管顯然并不適合本設(shè)計(jì)。我們?cè)賮砜碙CD1602液晶顯示器和LCD12864液晶顯示器怎么選擇,顯然LCD12864液晶顯示器在顯示像素上有更大的優(yōu)勢,對(duì)中文字符有天然的支持。內(nèi)置了中文字庫。反觀LCD1602液晶顯示器,在顯示中文上有諸多不便。而且他最多顯示兩行的字符。而OLED12864顯示屏OLED作為最新的顯示技術(shù),雖然有小巧高密度,高亮度等特點(diǎn),但是他在日光下的可視性并沒有傳統(tǒng)的LCD液晶顯示好,并且oled有燒屏的通病,智能門鎖需要長時(shí)間工作。燒屏影響使用。所以LCD12864液晶顯示器是最好的顯示方案。2.1.5指紋模塊的選擇方案一:使用的是AS608指紋識(shí)別模塊,它主要是指采用了杭州的晟元公司的AS608芯片進(jìn)行指紋識(shí)別的信息處理,集成一個(gè)可供2次開發(fā)的指紋模塊;所以,只要是基于AS608芯片的指紋模塊,其控制電路及控制協(xié)議幾乎是一樣的,只是廠家和性能不同而已。方案二:使用的是正點(diǎn)原子ATK-301電容式指紋模塊。方案分析:正點(diǎn)原子ATK-301電容式指紋模塊,是用于學(xué)習(xí)使用的指紋模塊,在產(chǎn)品應(yīng)用上有著許多限制,并且相對(duì)于成熟的AS608指紋識(shí)別模塊來講,他的穩(wěn)定性和安全性皆不達(dá)標(biāo)。電容式指紋模塊還有一的通病就是濕手,出汗等無法識(shí)別。所以我們選擇AS608指紋識(shí)別模塊。2.1.6數(shù)據(jù)存儲(chǔ)芯片的選擇方案一:通過使用單片機(jī)內(nèi)部的EEPROM進(jìn)行存儲(chǔ)數(shù)據(jù)。STC89C52芯片內(nèi)置4KB大小的EEPROM。方案二:AT24C02數(shù)據(jù)的存儲(chǔ)芯片。方案分析:本次設(shè)計(jì)并不需要儲(chǔ)存大量的數(shù)據(jù)和快速讀寫數(shù)據(jù)。只是作為記錄一些用戶標(biāo)記使用,所以內(nèi)置的EEPROM就足夠了。并不需要外置一個(gè)專用的數(shù)據(jù)儲(chǔ)存芯片。2.2系統(tǒng)整體設(shè)計(jì)通過上面的各模塊選擇論述,我們已經(jīng)有一個(gè)準(zhǔn)確設(shè)計(jì)框架了。本設(shè)計(jì)我們將采用stc89c52微控制器芯片作為本次設(shè)計(jì)的主控芯片。并且使用AS608指紋識(shí)別模塊進(jìn)行門鎖的生物特征采集和識(shí)別。使用IC卡進(jìn)行次身份認(rèn)證手段。然后LCD12864液晶顯示屏進(jìn)行交互內(nèi)容的顯示和信息反饋,信息提醒。通過矩陣鍵盤進(jìn)行用戶信息編輯修改的交互輸入設(shè)備。指紋智能門鎖上電后stc89c52主控芯片便會(huì)對(duì)各個(gè)模塊進(jìn)行初始化,初始化完成后,LCD12864便會(huì)顯示交互頁面。通過矩陣鍵盤可對(duì)交互界面進(jìn)行切換和進(jìn)入不同的模式??梢赃M(jìn)入管理員模式,并且輸入管理員密碼正確后,可以增刪用戶信息,修改管理密碼。當(dāng)指紋模塊檢測到正確用戶指紋后,通過使用電磁繼電器打開和關(guān)閉,模擬開門和關(guān)門的動(dòng)作。圖2.1是本設(shè)計(jì)的系統(tǒng)方案簡圖。圖2.1系統(tǒng)方案
第三章系統(tǒng)硬件電路設(shè)計(jì)3.1stc89c52最小系統(tǒng)設(shè)計(jì)STC89C52RC微控制處理器芯片一款8位的單片機(jī)微控制處理器芯片,他是STC公司設(shè)計(jì)的,STC89C52RC微控制處理器芯片是MCS-51指令架構(gòu)內(nèi)核,擁有51的優(yōu)良傳統(tǒng)特點(diǎn),超低功耗、高性能。STC公司對(duì)MCS-51指令架構(gòu)內(nèi)核做了很多優(yōu)秀的改良和升級(jí),所以STC89C52RC微控制處理器芯片繼承了老牌51單片機(jī)的所有功能和優(yōu)點(diǎn),還有很多51沒有的創(chuàng)新功能。單片機(jī)最小系統(tǒng)就是用最少的電子元器件構(gòu)建芯片外圍電路。使芯片組成一個(gè)最小的并且完整的計(jì)算機(jī)硬件系統(tǒng)。首先對(duì)于任何電子產(chǎn)品來說,電源供電電路是所有電子設(shè)計(jì)的首要任務(wù)。本設(shè)計(jì)是一個(gè)微電子智能產(chǎn)品,所以在電源選擇上5V直流電就足夠了。電源供給完成后,一個(gè)單片機(jī)芯片工作仍需要一個(gè)至關(guān)重要的部件——晶振。晶振是晶體振蕩器的簡稱。單片機(jī)需要依靠晶振產(chǎn)生的規(guī)律的震蕩波形進(jìn)行構(gòu)建統(tǒng)一的系統(tǒng)運(yùn)行機(jī)制。本次選用的晶振為11.0592MHz的,因?yàn)?1.0592MHz的晶振可以產(chǎn)生9600波特率0%誤差。晶振電路如圖3.1圖3.1然后就是單片機(jī)復(fù)位電路設(shè)計(jì),復(fù)位電路可以使單片機(jī)恢復(fù)到初始狀態(tài)。本次設(shè)計(jì)有兩種復(fù)位方式,可以上電復(fù)位,當(dāng)上電的時(shí)候,電容電壓不能突變,因?yàn)殡娙莺蚏ESET相連,所以激活STC89C52芯片。按鍵手動(dòng)復(fù)位,當(dāng)手動(dòng)按下按鍵的時(shí)候電路導(dǎo)通,所以也能激活STC89C52芯片。復(fù)位電路如圖3.2圖3.2到這里STC89C52的單片機(jī)最小系統(tǒng)就搭建完畢了。完整的最小系統(tǒng)電路圖如圖3.3。圖3.3STC89C52最小系統(tǒng)3.2LCD12864液晶顯示器電路設(shè)計(jì)LCD12864是由顯示字符和圖案的液晶顯示屏(LCD)和驅(qū)動(dòng)電路組成,以及驅(qū)動(dòng)電路上一般帶少量電阻和電容器件用作顯示屏穩(wěn)定工作的保障。LCD12864在設(shè)計(jì)之初就是帶中文字庫的。簡單來說,LCD12864液晶顯示屏是由寬128,高64的LCD液晶單元組成的一個(gè)液晶點(diǎn)陣。通過通入電流點(diǎn)亮對(duì)應(yīng)的LCD液晶單元,可以繪制分辨率128*64的圖像。并且內(nèi)置的字庫可以很靈活的繪制出文字交互界面。LCD12864液晶顯示器內(nèi)置了中文字庫。另外通過點(diǎn)陣?yán)L制可以現(xiàn)實(shí)簡圖案。分辨率為128×64,指令操作十分簡單,可快速構(gòu)成全中文人機(jī)交互圖形界面。圖3.4為LCD12864的原理圖。圖3.4LCD12864原理圖LCD12864的引腳相關(guān)說明3~VO就是調(diào)節(jié)對(duì)比度的,相當(dāng)于調(diào)節(jié)每個(gè)點(diǎn)顯示出來的深淺,雖然只有亮與不亮兩種選擇,但亮的模式下相當(dāng)于可以調(diào)節(jié)每個(gè)點(diǎn)到底多亮。4~RS,為1的時(shí)候表示發(fā)送的發(fā)送的數(shù)據(jù),為0表示發(fā)送命令。5~RW,就是控制我們是往LCD12864讀數(shù)據(jù)(1)還是寫數(shù)據(jù)(0),我們要控制LCD,當(dāng)然是往里面寫數(shù)據(jù)(0)。6~E,使能信號(hào)。17~RST復(fù)位腳。DB0~DB7用來傳輸我們的數(shù)據(jù),一個(gè)字節(jié)八個(gè)位8線并行。詳細(xì)可參考下表。圖3.5LCD12864詳細(xì)引腳圖圖3.6LCD12864操作時(shí)序圖3.3AS608指紋識(shí)別模塊電路設(shè)計(jì)AS608指紋識(shí)別模塊主要是指采用了杭州的晟元公司的AS608芯片進(jìn)行指紋識(shí)別的信息處理,集成一個(gè)可供2次開發(fā)的指紋模塊;驅(qū)動(dòng)指紋模塊的按照以下格式發(fā)送指令或數(shù)據(jù)。指令/數(shù)據(jù)包共分為三類:1.包標(biāo)識(shí)=01命令包;2.包標(biāo)識(shí)=02數(shù)據(jù)包,且有后續(xù)包;3.包標(biāo)識(shí)=08最后一個(gè)數(shù)據(jù)包,即結(jié)束包。所有的數(shù)據(jù)包都要加包頭:0xEF0。矩陣鍵盤電路設(shè)計(jì)為了減少i/o口資源浪費(fèi),所以本次矩陣使用掃描的方式進(jìn)行設(shè)計(jì)。如圖3.7123進(jìn)入管理456選擇上一項(xiàng)789選擇下一項(xiàng)退格0確定返回圖3.73.4蜂鳴器電路的設(shè)計(jì)選擇電磁蜂鳴器5V有源蜂鳴器,蜂鳴器大工作電流,所以單片機(jī)無法驅(qū)動(dòng)。這樣的設(shè)計(jì)間接驅(qū)動(dòng)蜂鳴器開關(guān)晶體管。如圖3.8蜂鳴器電路。圖3.83.5電磁繼電器電路設(shè)計(jì)圖3.93.6整體電路設(shè)計(jì)如下圖圖3.10
第四章系統(tǒng)軟件設(shè)計(jì)4.1軟件開發(fā)環(huán)境軟件開發(fā)環(huán)境選擇keil5。Keil和IRA是嵌入式單片機(jī)領(lǐng)域最有名的IDE(集成開發(fā)環(huán)境)。其構(gòu)建的開發(fā)完善度和開發(fā)體驗(yàn)都超越了許多芯片廠商提供官方的開發(fā)工具,因此keil是單片機(jī)開發(fā)必用的開發(fā)軟件。4.2主函數(shù)設(shè)計(jì)主函數(shù)是整個(gè)系統(tǒng)的父級(jí)函數(shù),是所有功能模塊連接的關(guān)系網(wǎng)節(jié)點(diǎn)。本次設(shè)計(jì)的的主系統(tǒng)邏輯是單片機(jī)上電,進(jìn)入運(yùn)行狀態(tài)后首先進(jìn)行顯示界面的初始化,然后打開串口通信,讀取存儲(chǔ)空間中的用戶信息,然后初始化指紋模塊和IC卡模塊。在一切初始化都完成后程序正式進(jìn)入主循環(huán)之中。通過主循環(huán)串聯(lián)各個(gè)功能模塊,通過判斷各個(gè)功能模塊的返回信息進(jìn)行功能調(diào)用串聯(lián)。部分關(guān)鍵代碼如下。詳細(xì)的循環(huán)邏輯結(jié)構(gòu)也可以參考圖4.1。/*********************************************************函數(shù)名稱:voidmain()函數(shù)作用:主函數(shù)參數(shù)說明:*********************************************************/voidmain(){ uchari; a=keycan(); if(a==1) { AT24C02_write_date(200,0); AT24C02_write_date(201,0); AT24C02_write_date(202,0); } LCD12864_init(); //初始化LCD12864 UartInit(); //串口初始化 T2_init(); low_mima=AT24C02_read_date(200); //讀取存儲(chǔ)在AT24C02的密碼 low_mima=low_mima*100+AT24C02_read_date(201); low_mima=low_mima*100+AT24C02_read_date(202); diaplay_mode0();//顯示初始界面 while(1) { i++; a=keycan(); //矩陣鍵盤檢測 chuli(); //矩陣鍵盤處理 if(mode==1) display_guanli(); else if(mode==2) //錄入指紋 { if(zhiwen_f==1) cunchu(); //錄入指紋 } else if(mode==3) //注銷指紋 { if(zhiwen_f==1) shanchu(); //注銷指紋 } else if(mode==0&&in_f==0)//正常解鎖界面 { if(i>=150) { i=0; xunzhiwen();//指紋解鎖 } } }}圖4.1
4.3指紋通信設(shè)計(jì)指紋模塊其實(shí)也是一個(gè)獨(dú)立的單片機(jī)系統(tǒng),只是有一個(gè)廠家提供的固件處理指紋信息。我們需要做的就是按照芯片廠商提供的接口進(jìn)行二次開發(fā)。首先我們將收集到的指紋信息載入到模塊中,然后將新的指紋信息進(jìn)行對(duì)比。最終返回匹配結(jié)果。當(dāng)結(jié)果不匹配是。就警告指紋錯(cuò)誤。匹配正確就進(jìn)行開門動(dòng)作。關(guān)鍵驅(qū)動(dòng)代碼如下。詳細(xì)代碼可見附錄。程序基本邏輯結(jié)構(gòu)可以參考圖4.3./********************************************************函數(shù)名稱:voidxunzhiwen()函數(shù)作用:查找指紋參數(shù)說明:********************************************************/voidxunzhiwen(){ searchnum=search();//搜索指紋 if((searchnum>=1&&searchnum<=MAX)||searchnum==255)//最多MAX個(gè)指紋 { if(searchnum>=1&&searchnum<=MAX)//指紋識(shí)別成功 { temp[0]=searchnum%1000/100+0x30; temp[1]=searchnum%100/10+0x30; temp[2]=searchnum%10+0x30; temp[3]=''; LCD12864_display_string(3,2,temp);//顯示卡號(hào) LCD12864_display_string(3,3,"指紋解鎖"); LCD12864_display_string(1,4,""); in_mima=0; //清除以輸入的密碼 num=0; //清除以輸入的密碼位數(shù) input_f=0; //清除輸入密碼標(biāo)志 jdq=0; //打開電磁鎖 T2_num=0; //開啟重新開始計(jì)時(shí) TR2=1; } else//不正確的指紋 { LCD12864_display_string(3,3,"無效指紋"); didi(3); //報(bào)警三次 } delay1ms(500); //延時(shí)后自動(dòng)清除顯示內(nèi)容 LCD12864_display_string(3,2,""); LCD12864_display_string(3,3,""); } }圖4.3
4.4LCD12864顯示設(shè)計(jì) 交互界面對(duì)于一個(gè)面向大眾化的產(chǎn)品來說是不可或缺的重要組成部分。當(dāng)程序進(jìn)行初始化操作是顯示界面進(jìn)入歡迎界面。之后的界面切換,由組函數(shù)的指令來進(jìn)行控制。主要程序結(jié)構(gòu)就是判斷主程序的指令。具體函數(shù)邏輯結(jié)構(gòu)參考圖4.4.圖4.4
第五章測試測試工具:KEIL5軟件。測試平臺(tái):Windows10,智能指紋門鎖系統(tǒng)硬件智能指紋門鎖系統(tǒng)軟件由KEIL5開發(fā)平臺(tái)軟件進(jìn)行編寫,并且將編譯好的固件通過PL2303下載器下載到51單片機(jī)中。然后我們進(jìn)行智能指紋門鎖系統(tǒng)的白盒測試。驗(yàn)證功能的完整性。觀察智能指紋門鎖運(yùn)行的狀態(tài),然后進(jìn)行反復(fù)的修改調(diào)試程序,最終得到一個(gè)完善的程序。在系統(tǒng)軟件調(diào)試上主要遇到以下幾個(gè)問題:(1)LCD12864顯示出現(xiàn)花屏。解決方法:首先檢查LCD12864液晶顯示屏的接線是否牢固,是否有短路錯(cuò)接等問題。如果沒問題。檢查LCD12864液晶顯示屏的驅(qū)動(dòng)代碼的時(shí)序是否有錯(cuò)誤。是否在初始化是進(jìn)行了顯示數(shù)據(jù)初始化。如果無法排除錯(cuò)誤。嘗試更換一塊新的LCD12864液晶顯示屏。
第六章結(jié)論隨著科技的發(fā)展和人們生活水平的提高,現(xiàn)今中國社會(huì)的家庭物質(zhì)財(cái)產(chǎn)比上一個(gè)十年有了質(zhì)的飛躍。提高防盜意識(shí),提升鎖具的安全系數(shù)成為當(dāng)務(wù)之急。過去沿用至今的傳統(tǒng)的機(jī)械鎖由于其構(gòu)造的簡單,以及已經(jīng)許久沒有技術(shù)更新,導(dǎo)致安全系數(shù)下降。被撬的事件屢見不鮮。反觀電子鎖,它的出現(xiàn)是當(dāng)今智能時(shí)代來臨的大勢所趨,其保密性高,使用靈活性好,安全系數(shù)高。智能門鎖就算被強(qiáng)行破門,在失竊的情況下也能配合其他智能設(shè)備,如監(jiān)控,對(duì)嫌疑人的生物特征進(jìn)行采集。對(duì)后期案件偵破有重大幫助。本設(shè)計(jì)旨在設(shè)計(jì)一款基于stc89c52單片機(jī)并且集成了指紋認(rèn)證和IC卡認(rèn)證的智能密碼鎖。本設(shè)計(jì)用stc89c52微控制處理器芯片作為主控,采用指紋識(shí)別模塊,和IC卡認(rèn)證模塊組成的安全認(rèn)證系統(tǒng),可通過矩陣鍵盤輸入的電子密碼設(shè)置指紋密碼解鎖和IC認(rèn)證兩種解鎖方式。采用LCD12864液晶進(jìn)行顯示和交互反饋。測試結(jié)果表明,本系統(tǒng)各項(xiàng)功能已達(dá)到本設(shè)計(jì)的所有要求。在這次畢業(yè)設(shè)計(jì)的實(shí)踐中我可以說獲益良多。這是我第一次以產(chǎn)品研發(fā)的思維進(jìn)行設(shè)計(jì)和制作電子產(chǎn)品。在最開始拿到題目的時(shí)候。對(duì)這個(gè)智能門鎖還沒有多少概念。在經(jīng)歷了漫長的資料查詢和專業(yè)知識(shí)復(fù)習(xí)。我終于開始進(jìn)行整體產(chǎn)品的框架設(shè)計(jì),進(jìn)行材料的選擇。最后制作出一個(gè)簡單的雛形。在不斷的測試中,慢慢完善整個(gè)智能門鎖。這次設(shè)計(jì)對(duì)我來說是一次機(jī)遇,也是一次挑戰(zhàn)。在這次的設(shè)計(jì)過程中,我學(xué)到了很多東西,對(duì)電子工程師的工作流程工作思維也有了深刻的理解。通過這次的實(shí)踐,我增強(qiáng)了動(dòng)手能力。通過實(shí)際工程的設(shè)計(jì)也使我了解到書本知識(shí)和實(shí)際應(yīng)用的差別。在實(shí)際應(yīng)用中遇到很多的問題,這都需要我對(duì)問題進(jìn)行具體的分析,并一步一步地去解決它。參考文獻(xiàn)[1]石文軒,宋薇.基于單片機(jī)MCS-51的智能密碼鎖設(shè)計(jì)[M].武漢工程職業(yè)技術(shù)學(xué)院學(xué)報(bào),2004,(01).[2]祖龍起,劉仁杰.一種新型可編程密碼鎖[J].大連輕工業(yè)學(xué)院學(xué)報(bào),2002,(01).[3]葉啟明.單片機(jī)制作的新型安全密碼鎖[J].家庭電子,2005,(10).[4]李明喜.新型存儲(chǔ)柜鎖的設(shè)計(jì)[J].機(jī)電產(chǎn)品開發(fā)與創(chuàng)新,2004,(03).[5]董繼成.一種新型安全的單片機(jī)密碼鎖[J].電子技術(shù),2004,(03).[6]楊茂濤.一種存儲(chǔ)柜鎖的實(shí)現(xiàn)[J].福建電腦,2004,(08).[7]瞿貴榮.實(shí)用存儲(chǔ)柜鎖[J].家庭電子,2000,(07).[8]ATmega.ATmega8L-8AC,2006,(01).[9]WirelessWorld,1998,vol、84,No、1509,p69.[10]王千.實(shí)用電子電路大全[M],電子工業(yè)出版社,2001,p101.[11]何立民.單片機(jī)應(yīng)用技術(shù)選編[M],北京:北京航空大學(xué)出版社,1998.[12]李華.MCS-51系列單片機(jī)使用接口技術(shù)[M],北京航空航天大學(xué)出版社,1993.[13]彭為.單片機(jī)典型系統(tǒng)設(shè)計(jì)實(shí)例精講[M],北京:電子工業(yè)出版社,2006.[14]潘永雄.新編單片機(jī)原理與應(yīng)用[M],西安:西安電子科技大學(xué)出版社,2003.[15]童詩白,華成英,模擬電子技術(shù)基礎(chǔ)[M],北京:高等教育出版社,2000.[16]閻石主.數(shù)字電子技術(shù)基礎(chǔ)[M],北京:高等教育出版社,1998.[27]樊昌信,曹麗娜.通信原理[M],北京:國防工業(yè)出版社,2007.[28]李瀚蓀.電路分析基礎(chǔ)[M],北京:高等教育出版社1991.[19]郭海英.基于單片機(jī)的電子安全密碼鎖的設(shè)計(jì)[M].現(xiàn)代電子技術(shù),2005,(13).[20]何希才,杜煜.實(shí)用電子電路設(shè)計(jì)[M].北京:電子工業(yè)出版社,1998.[21]康華光.電子技術(shù)基礎(chǔ)(第四版)[M].北京:高等教育出版社,1998.[22]俞睆卿.智能家居終端的研究與設(shè)計(jì)[D]上海交通大學(xué)2008.[23]林旭東.智能家居系統(tǒng)相關(guān)技術(shù)及發(fā)展趨勢[J].創(chuàng)新科技導(dǎo)報(bào).2008.6.5-6.[24]李方.淺談幾種智能家居系統(tǒng)網(wǎng)絡(luò)技術(shù)[J].計(jì)算機(jī)與網(wǎng)絡(luò).2006年.5(2).98-101.[25]陳文智.嵌入式系統(tǒng)開發(fā)原理與實(shí)踐.清華大學(xué)出版社.2005.[26]賈宗璞,許合利.C語言程序設(shè)計(jì).中國礦業(yè)大學(xué)出版社,2007.[27]譚浩強(qiáng).C程序設(shè)計(jì).清華大學(xué)出版社,2005.[28]余發(fā)山,王福忠.單片機(jī)原理及應(yīng)用技術(shù).中國礦業(yè)大學(xué)出版社,2008.[29]沈星星,叢露微.基于ZigBee的智能家具控制系統(tǒng),論文選粹,2011第3期[30]馮培昌,周曉云,陳孝偉.無線傳感器網(wǎng)絡(luò)探討[J].電氣自動(dòng)化.2005年.27(5).73-75.[31]周健明,江玲.ZigBee網(wǎng)絡(luò)層關(guān)鍵技術(shù)研究與實(shí)現(xiàn).黃石理工學(xué)院學(xué)報(bào).2009.25
致謝在本文的撰寫過程中,李俊杰老師作為我的指導(dǎo)老師,他治學(xué)嚴(yán)謹(jǐn),學(xué)識(shí)淵博,視野廣闊,為我營造了一種良好的學(xué)術(shù)氛圍。置身其間,耳濡目染,潛移默化,使我不僅接受了全新的思想觀念,樹立了明確的學(xué)術(shù)目標(biāo),領(lǐng)會(huì)了基本的思考方式,掌握了通用的研究方法,而且還明白了許多待人接物與為人處世的道理。其嚴(yán)以律己、寬以待人的崇高風(fēng)范,樸實(shí)無華、平易近人的人格魅力,與無微不至、感人至深的人文關(guān)懷,令人如沐春風(fēng),倍感溫馨。正是由于她在百忙之中多次審閱全文,對(duì)細(xì)節(jié)進(jìn)行修改,并為本文的撰寫提供了許多中肯而且寶貴的意見,本文才得以成型。在此特向李俊杰老師致以衷心的謝意!向她無可挑剔的敬業(yè)精神、嚴(yán)謹(jǐn)認(rèn)真的治學(xué)態(tài)度、深厚的專業(yè)修養(yǎng)和平易近人的待人方式表示深深的敬意!
附錄/*************************************************************指紋密碼鎖補(bǔ)充說明:***************************************************************/#include<reg52.h> //頭文件#include<LCD12864.h>#include<AT24C02.h>#include<KEY.h>#include<AS608.h>#include<T2.h>#defineucharunsignedchar //宏定義#defineuintunsignedint#defineulongunsignedlong/************************引腳定義************************/sbitbuzz=P3^7;//蜂鳴器sbitled=P0^0;//LED燈/************************變量定義************************/#defineMAX5//指紋最大數(shù)量#defineID_MAX3//輸入ID最大位數(shù)ucharmode=0;//0正常解鎖,1管理界面,2注冊(cè)模式,3刪除模式,4修改密碼ucharmode_num=0;//管理界面選擇項(xiàng)uintID=0; //存儲(chǔ)輸入編號(hào)IDucharn=0; //輸入的位數(shù)bitzhiwen_f=0; //1=標(biāo)記進(jìn)入指紋采集uchara; //存儲(chǔ)按鍵值ucharnum; //記錄輸入的密碼位數(shù)bitin_f; //輸入密碼的標(biāo)志bitreset_f; //重設(shè)密碼的標(biāo)志bitinput_f; //六位密碼輸完的標(biāo)志ucharreset_num;//標(biāo)記修改密碼階段,=1輸入舊密碼,=2輸入新密碼,=3再次輸入新密碼ulonglow_mima=0;//系統(tǒng)密碼ulongin_mima=0;//暫存輸入的密碼ulongnew_mima=0;//暫存輸入新密碼uchartemp[5]="\0";//存儲(chǔ)顯示內(nèi)容/********************************************************函數(shù)名稱:voiddelayms(uintms)函數(shù)作用:毫秒延時(shí)函數(shù)參數(shù)說明:********************************************************/voiddelayms(uintms){ unsignedchari=100,j; for(;ms;ms--) { while(--i) { j=10; while(--j); } }}/********************************************************函數(shù)名稱:voiddidi(uchari)函數(shù)作用:蜂鳴器鳴叫參數(shù)說明:i為鳴叫次數(shù)********************************************************/voiddidi(uchari){ ucharj; for(j=0;j<i;j++)//循環(huán)i次,LED、蜂鳴器鳴叫幾次 { led=0; //開啟LED、蜂鳴器 buzz=0; delayms(20); led=1; //關(guān)閉LED、蜂鳴器 buzz=1; delayms(15); }}/********************************************************函數(shù)名稱:voiddiaplay_mode0()函數(shù)作用:顯示打卡主界面參數(shù)說明:********************************************************/voiddiaplay_mode0(){ LCD12864_display_string(1,1,"指紋密碼鎖"); LCD12864_display_string(0,2,"編號(hào):"); LCD12864_display_string(0,3,"狀態(tài):");}/********************************************************函數(shù)名稱:voidxunzhiwen()函數(shù)作用:查找指紋參數(shù)說明:********************************************************/voidxunzhiwen(){ searchnum=search();//搜索指紋 if((searchnum>=1&&searchnum<=MAX)||searchnum==255)//最多MAX個(gè)指紋 { if(searchnum>=1&&searchnum<=MAX)//指紋識(shí)別成功 { temp[0]=searchnum%1000/100+0x30; temp[1]=searchnum%100/10+0x30; temp[2]=searchnum%10+0x30; temp[3]=''; LCD12864_display_string(3,2,temp);//顯示卡號(hào) LCD12864_display_string(3,3,"指紋解鎖"); LCD12864_display_string(1,4,""); in_mima=0; //清除以輸入的密碼 num=0; //清除以輸入的密碼位數(shù) input_f=0; //清除輸入密碼標(biāo)志 jdq=0; //打開電磁鎖 T2_num=0; //開啟重新開始計(jì)時(shí) TR2=1; } else//不正確的指紋 { LCD12864_display_string(3,3,"無效指紋"); didi(3); //報(bào)警三次 } delay1ms(500); //延時(shí)后自動(dòng)清除顯示內(nèi)容 LCD12864_display_string(3,2,""); LCD12864_display_string(3,3,""); } }/********************************************************函數(shù)名稱:voidcunchu()函數(shù)作用:存儲(chǔ)指紋參數(shù)說明:********************************************************/voidcunchu(){ LCD12864_display_string(0,3,"狀態(tài):"); if(ID>0&&ID<=MAX)//輸入的存儲(chǔ)指紋位置正確 { if(enroll()==1)//采集兩次,生成1個(gè)指紋模板成功 { if(savefingure(ID)==1)//保存指紋成功 { LCD12864_display_string(3,3,"錄入成功"); } else //保存指紋失敗 LCD12864_display_string(3,3,"存儲(chǔ)失敗"); } else //采集指紋失敗 LCD12864_display_string(3,3,"采集失敗"); } else //輸入指紋編號(hào)錯(cuò)誤 LCD12864_display_string(3,3,"編號(hào)錯(cuò)誤"); n=0; //清除輸入編號(hào)位數(shù) ID=0; //清除輸入編號(hào) zhiwen_f=0;//關(guān)閉指紋采集}/********************************************************函數(shù)名稱:voidshanchu()函數(shù)作用:刪除指紋參數(shù)說明:********************************************************/voidshanchu(){ LCD12864_display_string(0,3,"狀態(tài):"); if(ID>0&&ID<=MAX) //輸入的存儲(chǔ)指紋位置正確 { if(dellfingure(ID)==1)//刪除指紋成功 { LCD12864_display_string(3,3,"刪除成功"); } else //刪除指紋失敗 LCD12864_display_string(3,3,"刪除失敗"); } else { if(ID==999) //如果輸入的是999表示清空指紋 { if(Clear_All()==1)//清空指紋成功 LCD12864_display_string(3,3,"清空指紋"); else //清空指紋失敗 LCD12864_display_string(3,3,"清空失敗"); } else //輸入的是其它錯(cuò)誤編號(hào) LCD12864_display_string(3,3,"編號(hào)錯(cuò)誤"); } n=0; //清除輸入編號(hào)位數(shù) ID=0; //清除輸入編號(hào) zhiwen_f=0;//關(guān)閉指紋采集 }/********************************************************函數(shù)名稱:voiddisplay_guanli()函數(shù)作用:顯示管理界面參數(shù)說明:********************************************************/voiddisplay_guanli(){ LCD12864_display_string(0,1,"管理系統(tǒng)界面"); LCD12864_display_string(0,2,"錄入指紋"); LCD12864_display_string(0,3,"刪除指紋"); LCD12864_display_string(0,4,"修改密碼"); switch(mode_num) { case0:LCD12864_display_string(0,2,">>");break; case1:LCD12864_display_string(0,3,">>");break; case2:LCD12864_display_string(0,4,">>");break; default:break; }}/*********************************************************函數(shù)名稱:voidchuli()函數(shù)作用:對(duì)所按下的按鍵進(jìn)行處理參數(shù)說明:*********************************************************/voidchuli(){ if(key_f==1) //先判斷是否有按鍵按下 { if((mode==2||mode==3)&&a<10)//如果輸入ID狀態(tài),并且按下的是數(shù)字鍵 { if(n<ID_MAX)//判斷是否為輸入狀態(tài),并且輸入未滿最大整數(shù)位數(shù),才可以繼續(xù)輸入 { if(n==0)//判斷為編號(hào)第1位 { LCD12864_display_string(3,2,""); LCD12864_display_string(0,3,""); } LCD12864_display_char(3+n,2,a+0x30);//顯示出輸入的數(shù)字ASCII[a] ID=ID*10+a;//編號(hào)計(jì)算 n++; //編號(hào)輸入位數(shù)+1 } } if((mode==0||mode==4)&&input_f==0&&a<10)//如果在in_f=1(輸入密碼狀態(tài)),并且按下的是數(shù)字鍵 { if(in_f==1||mode==4) { if(num==0)//清除顯示后、顯示輸入新密碼 LCD12864_display_string(1,3,""); if(reset_f==1&&reset_num>1) //在重置密碼時(shí)候輸入新密碼階段 LCD12864_display_char(num+1,2,a+0x30);//顯示輸入的數(shù)字 else //其它情況下輸入密碼顯示* LCD12864_display_char(num+1,2,'*');//顯示“*” } else LCD12864_display_char(num+1,4,'*');//顯示“*” in_mima=in_mima*10+a;//讀入密碼 num++; //密碼輸入次數(shù)加一 if(num==6) //六位密碼輸入完成 input_f=1; //標(biāo)記六位密碼輸入完成 } if(a==10) //進(jìn)入管理界面 { if(mode==0&&in_f==0)//輸入密碼 { num=0; //重置輸入密碼 in_f=1; in_mima=0; input_f=0;//清除密碼輸入完成標(biāo)志 write_com(0x01);//清除顯示 LCD12864_display_string(0,1,"請(qǐng)輸入管理密碼:");//顯示輸入密碼 } } if(a==15)//返回上一級(jí)菜單 { if(mode>1) //在管理操作中 { reset_f=0; reset_num=0; write_com(0x01);//清除顯示 LCD12864_clear12864(); mode=1; //回到管理選擇界面 } else //非管理界面 { if(mode!=0||in_f==1)//如果在輸入密碼階段 { write_com(0x01);//清除顯示 mode=0; diaplay_mode0();//顯示主界面 in_f=0; num=0; input_f=0; //清除密碼輸入完成標(biāo)志 } } if(jdq==0) //如果電磁鎖打開,按下該按鍵,手動(dòng)關(guān)門 { jdq=1; //關(guān)閉繼電器 T2_num=0; //清除計(jì)時(shí) TR2=0; } } if(a==11)//選擇上一項(xiàng) { if(mode==1)//選擇上一項(xiàng)管理 { if(mode_num==0) mode_num=2; else mode_num--; } } if(a==12)//選擇下一項(xiàng) { if(mode==1)//選擇下一項(xiàng)管理 { if(mode_num>=2) mode_num=0; else mode_num++; } } if(a==13)//退格 { if(mode==0||mode==4)//在輸入密碼狀態(tài) { if(num!=0) { num--;//輸入密碼個(gè)數(shù)減1 if(in_f==1||mode==4) LCD12864_display_char(num+1,2,''); else LCD12864_display_char(num+1,4,''); in_mima=in_mima/10; input_f=0; } } if(mode==2||mode==3)//在ID編號(hào)輸入狀態(tài) { if(n!=0) { LCD12864_display_char(2+n,2,''); n--; ID=ID/10; zhiwen_f=0; } } } if(a==14)//確定 { if(mode==1) //確定選擇管理操作 { write_com(0x01);//清除顯示 mode=mode_num+2; n=0; ID=0; zhiwen_f=0; input_f=0;//清除確定標(biāo)志 num=0; in_mima=0; new_mima=0; switch(mode_num) { case0: LCD12864_display_string(0,1,">>錄入指紋"); LCD12864_display_string(0,2,"編號(hào):"); break; case1: LCD12864_display_string(0,1,">>刪除指紋"); LCD12864_display_string(0,2,"編號(hào):"); break; case2: reset_f=1; reset_num=1; LCD12864_display_string(0,1,"請(qǐng)輸入舊密碼:"); break; default:break; } } else { if(input_f==1)//密碼輸入完成確定 { if(reset_f==1)//修改密碼區(qū)間 { if(reset_num==3)//再次輸入新密碼 { if(new_mima==in_mima)//兩次輸入的新密碼一致 { low_mima=new_mima; AT24C02_write_date(200,low_mima/10000); AT24C02_write_date(201,low_mima%10000/100); AT24C02_write_date(202,low_mima%100); write_com(0x01); LCD12864_display_string(1,1,"密碼修改成功"); LCD12864_display_string(1,3,"請(qǐng)妥善保管好"); } else { LCD12864_display_string(1,3,"密碼修改失敗"); } reset_num=0; reset_f=0; } if(reset_num==2)//輸入新密碼 { write_com(0x01); LCD12864_display_string(0,1,"請(qǐng)?jiān)俅屋斎胄旅艽a"); new_mima=in_mima; reset_num++; } if(reset_num==1)//輸入舊密碼 { if(low_mima==in_mima)//輸入的密碼和舊密碼一致 { write_com(0x01); reset_num++; LCD12864_display_string(0,1,"請(qǐng)輸入新密碼:");//顯示輸入新密碼 } else { LCD12864_display_string(2,3,"密碼錯(cuò)誤"); //顯示密碼錯(cuò)誤 reset_num=1; LCD12864_display_string(1,2,""); } } } if(in_f==1) //進(jìn)入管理輸入密碼時(shí)候 { if(low_mima==in_mima)//輸入的密碼正確 { mode=1; write_com(0x01); in_f=0; } else { LCD12864_display_string(2,3,"密碼錯(cuò)誤"); //顯示密碼錯(cuò)誤 LCD12864_display_string(1,2,""); } } if(mode==0&&in_f==0) { if(low_mima==in_mima)//輸入的密碼正確 { LCD12864_display_string(3,3,"解鎖成功"); jdq=0; T2_num=0; TR2=1; } else { LCD12864_display_string(3,3,"密碼錯(cuò)誤"); //顯示密碼錯(cuò)誤 didi(3); } LCD12864_display_string(1,4,""); delay1ms(500); LCD12864_display_string(3,3,""); } in_mima=0; num=0; //清除密碼計(jì)數(shù)。重新計(jì)算輸入的密碼個(gè)數(shù) input_f=0;//清除確定標(biāo)志 } if((mode==2||mode==3)&&n==ID_MAX)//注冊(cè)或刪除指紋時(shí)編號(hào)輸入完成后開啟指紋檢測 { zhiwen_f=1; } } } key_f=0;//清除按鍵標(biāo)志 }}/*********************************************************函數(shù)名稱:voidmain()函數(shù)作用:主函數(shù)參數(shù)說明:*********************************************************/voidmain(){ uchari; a=keycan(); if(a==1) { AT24C02_write_date(200,0); AT24C02_write_date(201,0); AT24C02_write_date(202,0); } LCD12864_init(); //初始化LCD12864 UartInit(); //串口初始化 T2_init(); low_mima=AT24C02_read_date(200); //讀取存儲(chǔ)在AT24C02的密碼 low_mima=low_mima*100+AT24C02_read_date(201); low_mima=low_mima*100+AT24C02_read_date(202); diaplay_mode0();//顯示初始界面 while(1) { i++; a=keycan(); //矩陣鍵盤檢測 chuli(); //矩陣鍵盤處理 if(mode==1) display_guanli(); else if(mode==2) //錄入指紋 { if(zhiwen_f==1) cunchu(); //錄入指紋 } else if(mode==3) //注銷指紋 { if(zhiwen_f==1) shanchu(); //注銷指紋 } else if(mode==0&&in_f==0)//正常解鎖界面 { if(i>=150) { i=0; xunzhiwen();//指紋解鎖 } } }}
HYPERLINK電腦文件整理懶招從來都是不會(huì)經(jīng)常整理文件的,不過時(shí)間一長,眾多的文檔分布在硬盤的各個(gè)角落,用目錄進(jìn)行整理保存,工作量大、查看起來也不方便且還會(huì)浪費(fèi)不少的磁盤空聞;用壓縮工具打包,盡管可以節(jié)約空間但是卻無法直接編輯修改或查看壓縮包中的文件。這些招,懶人怎么會(huì)用,他們自有妙招!再多再亂的文件也能整理得井井有條,關(guān)鍵是不費(fèi)力哦!
懶招1,自動(dòng)提取亂中取勝
小張起初將照片、Office文檔、電影、音樂等文件一股腦地存放在某一個(gè)磁盤分區(qū),剛開始文件少使用起來倒也方便,但隨著時(shí)間的推移,文件數(shù)量劇增,每次找所需的文件都要瞪大眼睛,不過有了MY文檔管理器(下載地址:)就不用擔(dān)心了。
第一步,下載MY文檔管理器,解壓到任意目錄,直接雙擊其中的可執(zhí)行性文件即可使用。依次單擊“節(jié)點(diǎn)操作→添加節(jié)點(diǎn)”,分別添加多個(gè)節(jié)點(diǎn),如“辦公文檔”、“電影”等分類,這樣做的目的是方便歸類。
第二步,在小張的F盤中的TEST目錄下有眾多的RM、MP3、JPG、DOC、TXT格式的文件,現(xiàn)在他要把JPG格式的文件提取到“照片”類別中。依次單擊“系統(tǒng)配置→文件過濾”選項(xiàng),打開Dialog對(duì)話框,輸入“*.doc”,單擊“添加”按鈕,意思是過濾掉所有類型為“.DOC”的文件。然后按照同樣的方法,將“*.txt”、“*.rm”、“*.MP3”一一添加進(jìn)來。
第三步,雙擊左側(cè)窗格中的“照片”節(jié)點(diǎn),然后依次單擊“記錄操作→導(dǎo)入記錄樹”命令,在打開的對(duì)話框中單擊瀏覽按鈕,打開“F:\test”目錄,單擊“確定”按鈕之后就可以將格式為JPG的文件提取出來并添加到“照片”節(jié)點(diǎn)中了。
懶招2,不同的電腦統(tǒng)一的管理
小張是電愛的Fans,工作之余常常為雜志寫稿,他寫完的和正在處理的稿件一般都存在一個(gè)稿件文件夾里。不過時(shí)間一長,家里的電腦(PC1)和單位的電腦(PC2)上都有這個(gè)文件夾。時(shí)常需要通過移動(dòng)硬盤(U盤)在兩臺(tái)電腦之間傳遞,使用和管理都很不方便。不過他現(xiàn)在用優(yōu)盤就可以統(tǒng)一管理了。
第一步,將上文提到的那個(gè)MY文檔管理器解壓后直接拷貝到優(yōu)盤上。把優(yōu)盤插到PC1上,并運(yùn)行軟件,依次單擊“記錄操作→導(dǎo)入記錄樹”命令,在隨后彈出的對(duì)話框中設(shè)置好“稿件”文件夾的根目錄,將“導(dǎo)入深度”設(shè)置為“5”,單擊“確定”后,稍等片刻,軟件就把PC1上的“稿件”導(dǎo)入到MY文檔管理器中。
小提示:通過這種方式導(dǎo)入到程序中的僅僅是文件的路徑、文件名等屬性信息,并不是文件本身。
第二步,把優(yōu)盤插到PC2上,按照同樣的方法導(dǎo)入PC2上的“稿件”文件。以后要編輯“稿件”里的文件,你自己根本不用記住哪臺(tái)電腦的哪個(gè)路徑,只要把優(yōu)盤插入到電腦,運(yùn)行MY文檔管理器,就可以直接編輯了。
第三步,為方便在異地使用,小張決定為當(dāng)前正在處理的稿件增加一個(gè)副本。在需要異地處理的稿件上右鍵單擊,選擇“復(fù)制文件到(自動(dòng)添加副本)”命令,在彈出的對(duì)話框中將保存目錄設(shè)置為優(yōu)盤上的某個(gè)目錄即可。這樣,就可以在優(yōu)盤上編輯PC1或PC2的稿件了。
小提示:對(duì)于PC1、PC2上的同名文件,MY文檔管理器以不同的磁盤號(hào)+文件路徑來標(biāo)識(shí)文件記錄,因此,對(duì)于不同電腦上的同名文件,甚至是路徑和文件名完全相同的文件,程序也可以準(zhǔn)確識(shí)別哪個(gè)是哪個(gè)。
懶招3多種文件批量移動(dòng)
要將文件管理得井然有序,就免不了要進(jìn)行復(fù)制、刪除、移動(dòng)等等操作,如果一個(gè)個(gè)進(jìn)行操作,工作量是非常巨大的。這時(shí)我們就需要借助于BelvedereAutomated(下載地址:.com/assets/resources/2008/03/Belvedere%200.3.exe)進(jìn)行批量操作了。例如我們想把“F:\test”目錄中的所有照片移動(dòng)到F盤中的“北京游照片”目錄中,可以按以下方法進(jìn)行。
第一步,建立“F:\test”目
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 部門個(gè)人工作計(jì)劃
- 2024年汽車電子設(shè)備銷售及維修合同3篇
- 2024年版魚塘租賃經(jīng)營協(xié)議模板
- 2024年版離婚雙方權(quán)益保障合同模板版B版
- 小學(xué)教學(xué)計(jì)劃二年級(jí)
- 居住建筑及公共建筑建設(shè)項(xiàng)目節(jié)能評(píng)估報(bào)告書
- 2025年中國大黃提取物行業(yè)市場調(diào)研及未來發(fā)展趨勢預(yù)測報(bào)告
- 銷售客服工作計(jì)劃
- 2022初二語文教學(xué)工作計(jì)劃
- 行政文員個(gè)人工作報(bào)告
- 2023年軟件主管年終業(yè)務(wù)工作總結(jié)
- 2019疏浚工程預(yù)算定額
- 笙的演奏技術(shù)與教學(xué)
- 大學(xué)生預(yù)征對(duì)象登記表模板
- 《明辨是非》課件
- 重癥監(jiān)護(hù)專科護(hù)理質(zhì)控考核標(biāo)準(zhǔn)
- 高標(biāo)準(zhǔn)農(nóng)田輸配電工程施工方案與技術(shù)措施
- 外來人員車輛入廠安全須知
- 小學(xué)校本課程-尋覓沉睡的寶船教學(xué)課件設(shè)計(jì)
- 2022-2024學(xué)年校方責(zé)任保險(xiǎn)統(tǒng)保方案
- 食材供應(yīng)鏈行業(yè)市場分析ppt
評(píng)論
0/150
提交評(píng)論