基于8051單片機的指紋鎖的設計_第1頁
基于8051單片機的指紋鎖的設計_第2頁
基于8051單片機的指紋鎖的設計_第3頁
基于8051單片機的指紋鎖的設計_第4頁
基于8051單片機的指紋鎖的設計_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Abstract摘要III指紋鎖摘要隨著經(jīng)濟與科技的快速發(fā)展,傳統(tǒng)的身份識別方式已經(jīng)不能夠滿足日益增加的安全需求。而近幾年來指紋識別技術的快速發(fā)展,使指紋鎖的廣泛應用成為可能。本論文是設計一種指紋鎖,它能很好的完成指紋開鎖,并具有指紋錄入、指紋刪除和應急機械開鎖等功能。根據(jù)初始條件,選擇好電磁鐵、指紋開鎖方式和機械開鎖方式,以設計出相應的鎖體殼、鎖舌和機械開鎖傳動機構(gòu),進而確定電磁鐵的安裝位置,以完成機械系統(tǒng)的設計。根據(jù)MBF200固態(tài)指紋傳感器的特點和8051單片機的特性設計出指紋采集模塊、外部擴展存儲器模塊、開鎖電路、鍵盤模塊、LED顯示模塊和電源電路,從而完成電路系統(tǒng)的設計。根據(jù)任務書的要求和所設計的硬件電路來設計軟件流程圖,進而根據(jù)流程圖來編輯程序。通過軟件程序就可以使機械部分和電路部分聯(lián)系在一起,進而實現(xiàn)對指紋鎖的智能控制。本指紋鎖利用AutoCAD2010設計出的機械部分的工程圖,利用Protel99se設計出電路部分的電路圖。諸多軟件工具的使用為指紋鎖的完整設計提供了幫助。本指紋鎖設計所涉及的技術成熟,操作簡單方便,實用性強,具有廣泛的使用價值和應用前景。關鍵詞:指紋鎖;8051;MBF200;機械開鎖AbstractabstractFingerprintlockAbstractWiththerapiddevelopmentofeconomyandtechnology,thetraditionalidentificationmethodshasbeenunabletomeettheincreasingsecurityneeds.therapiddevelopmentoffingerprintrecognitiontechnologyInrecentyears,makeitpossibleforfingerprintlockwiderangeofapplications.Thispaperistodesignafingerprintlock.Ithasthefunctionoffingerprintlock,fingerprintInput,fingerprintdeletionandemergencymechanicallock.Accordingtotheinitialconditions,chooseaproperelectromagnet,fingerprintlockmode,modeandmechanicallockmode,tothedesignofthelockshelllatchandmechanicallockmodedrivemechanism,todeterminetheinstallationlocationoftheelectromagnet,inordertocompletethedesignofmechanicalsystems.BasedonthecharacteristicsofMBF200solid-statefingerprintsensorandthecharacteristicsof8051todesignthefingerprintacquisitionmodule、externalexpansionmemorymodules,lockmodecircuit,keyboardmodule,LEDdisplaymodulesandpowersupplycircuits,inordertocompletethecircuitdesign.Accordingtotherequirementsofthemissionstatementandthedesignofhardwarecircuittodesignsoftwareflowchart,andthenaccordingtotheflowcharttoeditprograms.Thesoftwareprogramcanmakethemechanicalpartsandcircuitpartstogether,soastorealizetheintelligentcontrolofthefingerprintlock.ThisfingerprintlockuseAutoCAD2010todesignthemechanicalpartofthedrawings,anduseProtel99setodesignpartofthecircuitschematic.Theuseofmanysoftwaretoolsprovidehelpforthecompletedesignoffingerprintlock.Thetechnologyinvolvedinthedesignofthefingerprintlockismature.Ithasthecharacteristicsofsimpleoperation,practical,theextensiveuseofvalueandapplicationprospect.Keyword:fingerprintlock;8051;MBF200;Mechanicallock目錄目錄TOC\o"1-2"摘要 IAbstract II第一章緒論 11.1課題研究目的及意義 11.2國內(nèi)外研究現(xiàn)狀和發(fā)展趨勢 11.3指紋鎖的指紋識別的基本原理 21.4指紋鎖設計的意義和特點 2第二章鎖的機械結(jié)構(gòu)設計 42.1鎖機械結(jié)構(gòu)設計 42.2電磁鐵的選擇 52.3螺管式電磁鐵的設計與校核 5第三章鎖的硬件電路部分設計 103.1系統(tǒng)功能組成 103.2指紋采集模塊電路設計 103.3單片機控制模塊的設計 153.4外部擴展存儲器設計 183.5開鎖電路設計 213.6鍵盤及顯示模塊設計 21第四章軟件程序的設計 254.1程序設計語言的選擇 254.2程序及程序流程圖設計 25目錄結(jié)論 30參考文獻 31致謝 32附錄一:程序附錄二:中英文翻譯附錄三:鎖的機械結(jié)構(gòu)裝配圖附錄四:鎖的硬件電路圖李紅偉:指紋鎖華東交通大學畢業(yè)設計(論文)第一章緒論1.1課題研究目的及意義門鎖,作為人類安全衛(wèi)士,從以前的簡單機械門鎖發(fā)展到今天的種類和功能都趨于多樣化的智能門鎖。機械門鎖是使用機械鑰匙開門,而機械鑰匙容易丟失和復制;電子密碼鎖的密碼也會因為別人的偷盜而被非法打開。隨著人們生活水平的不斷提高,對安全性和私密性的要求也越來越高,傳統(tǒng)的機械鎖、密碼鎖等因其自身的局限已不能滿足人們的要求。近年來,指紋識別技術發(fā)展迅速,它利用人類指紋的惟一性和不變性這一生理特征對個人身份進行認證,具有極高的安全性和易用性。而指紋鎖,就是利用這一生物特征--指紋識別來進行開鎖的。由于信息化技術和微電子技術的發(fā)展再加上指紋鎖的強大優(yōu)勢,毫無疑問它將成為鎖具的新主角。1.2國內(nèi)外研究現(xiàn)狀和發(fā)展趨勢指紋鎖的關鍵在于指紋識別技術的發(fā)展,機械部分以相對成熟。下面介紹指紋識別的技術現(xiàn)狀和發(fā)展趨勢:自動指紋識別系統(tǒng)(AFIS—AutomaticFingerprintIdentificationSystem)技術的進步和指紋傳感器技術的發(fā)展密切相關。過去指紋傳感器都是基于光學技術的傳感器,這種傳感器結(jié)構(gòu)復雜,價格昂貴,體積龐大。因此造成實際系統(tǒng)價格非常昂貴,這導致了過去指紋識別系統(tǒng)僅僅限于公安、銀行等少數(shù)特殊部門內(nèi)應用。隨著集成技術的發(fā)展,高性能、高速率的數(shù)字處理器的價格和體積也開始大幅度下降,相關技術日趨成熟,這為嵌入式應用研究帶來了極大的方便。90年代中期開始出現(xiàn)半導體的指紋傳感器。最初的這類傳感器采集的圖像質(zhì)量和光學傳感器有較大的差距,但是隨著半導體技術的進步,它采集的圖像質(zhì)量也越來越高,現(xiàn)在這兩種傳感器采集的圖像質(zhì)量差距已經(jīng)很小了。半導體傳感器具有價格低、體積小的優(yōu)點,特別適合集成在普通的消費電子產(chǎn)品中,大有后來居上、取代光學傳感器的趨勢?,F(xiàn)在這兩類指紋傳感器在市場上基本是平分天下。傳統(tǒng)的光學傳感器,國內(nèi)的長春光機所等也有自己的產(chǎn)品,但是無論是價格還是性能都和國外差距很大,現(xiàn)在已經(jīng)被逐步淘汰了。半導體傳感器芯片技術被國外所壟斷,現(xiàn)在完全依賴進口,國內(nèi)主要是做代理、二次開發(fā)和系統(tǒng)集成等,因此指紋采集技術也相對落后。早期的研究都是在高性能計算機上完成的,針對脫機的指紋圖像采集技術進行的研究相對較少。90年代末到現(xiàn)在,由于半導體指紋傳感器的出現(xiàn),使得指紋識別的應用領域迅速擴大,在個人電腦上、個人數(shù)字助理、掌上電腦、手機、門禁等很多領域都開始使用AFIS技術,所以指紋采集的研究重點從光學傳感器轉(zhuǎn)移到了半導體傳感器。作為生物特征的指紋雖然穩(wěn)定性很好,但是仍然存在脫皮、外傷等問題,這個時候往往對高質(zhì)量的指紋采集技術產(chǎn)生極大的挑戰(zhàn),也是AFIS研究者需要努力克服的問題。國內(nèi)對于AFIS主要側(cè)重于研究角度,很長一段時間沒有在實際應用中實踐,所以這些技術和實際的市場需求間還有不少差距。而實際從事指紋應用的公司沒有自己的技術,絕大多數(shù)都是使用國外的指紋識別算法。綜上所述,對于應用前景更為廣泛的嵌入式自動指紋識別系統(tǒng)(AFIS)來說,指紋的原始圖像數(shù)據(jù)采集顯得尤為重要。隨著計算機技術,特別是圖象處理技術和模式識別技術的飛速發(fā)以及大規(guī)模集成電路的出現(xiàn)展及其性能的提高,使得用高速并高效的自動指紋識別系統(tǒng)來替代人工識別成為可能。自二十世紀六十年代開始,為了解決人工鑒別指紋工作量大而且效率低的難題,美國FBI、英國家庭辦公室以及法國巴黎警察局開始研發(fā)自動指紋識別系統(tǒng)(AFIS),并取得了非常好的效果。目前,指紋識別已被全球大部分國家接受與認可,并廣泛地應用到政府、軍隊、銀行、社會福利保障、電子商務和安全防衛(wèi)等領域。在國外由于其開發(fā)指紋識別系統(tǒng)比較早,而且主要是利用計算機進行指紋識別,所以技術也比較成熟。許多大公司均成立了專門機構(gòu)從事該項技術的研究、開發(fā)及應用。其中最具有代表性的是AFIS(AutomaticFingerprintIdentificationSystem)系統(tǒng),該系統(tǒng)是利用計算機技術實現(xiàn)的,其具有靈活的系統(tǒng)結(jié)構(gòu),可以構(gòu)建大型的數(shù)據(jù)庫,但是該系統(tǒng)價格昂貴,而且由于需要連接計算機,限制了系統(tǒng)在很多其他方面的應用。當然,目前國外也有一些相對較小的指紋識別系統(tǒng),比如數(shù)碼人(Digitalor)公司的U-are-U系統(tǒng)。但他們的產(chǎn)品都存在價格昂貴、應用靈活性差、多使用光學傳感器體積較大等問題。自1998年以來,國內(nèi)指紋識別技術也得到了長足發(fā)展。目前,國內(nèi)的生物識別技術市場正處于諸侯割據(jù)的萌芽階段。國內(nèi)上百家從事指紋識別技術應用的企業(yè)除了北大高科、中科院自動化所和西安青松等幾家科研機構(gòu)擁有自主產(chǎn)權外,其他的多以代理國外產(chǎn)品為主,擁有自主知識產(chǎn)權核心技術不多。在性能上無論從精度還是從效率上來看,均不如國際領先水平的同類產(chǎn)品。所使用的方法復雜,使用環(huán)境要求高,而且硬件平臺的實時性差,接口能力也比較弱??v觀國內(nèi)外現(xiàn)有的指紋采集識別技術和設備,或多或少地存在以下幾個問題:(1)成熟的采集識別算法均依賴于計算機平臺,成本高,靈活性差。(2)嵌入式應用不成熟,多受環(huán)境限制。(3)指紋采集器件落后,體積較大等?,F(xiàn)在,隨著高集成的指紋傳感器的引入及其飛速發(fā)展,指紋數(shù)據(jù)的優(yōu)質(zhì)采集將達到一個更高的水平,研究指紋采集的通用方法及相應軟件是一件十分有意義的工作。利用新型傳感器采集高質(zhì)量的指紋圖像,指紋識別技術的逐漸成熟,可靠的比對算法的發(fā)現(xiàn)都將為指紋識別技術提供更廣闊的舞臺。國內(nèi)嵌入式指紋識別技術之所以得不到快速的發(fā)展,原因就在指紋采集技術的落后。獲取高質(zhì)量的指紋數(shù)據(jù)是降低指紋識別算法復雜性一個最主要途徑。因此,在我國研究和開發(fā)擁有自主產(chǎn)權的指紋采集終端是緊迫的也是必須的。1.3指紋鎖的指紋識別的基本原理首先,通過指紋采集儀器采集到人體指紋的圖像,并對原始圖像進行初步的處理,這樣使指紋圖像中蘊涵的特征信息更明顯。然后,運用指紋特征提取算法建立指紋的數(shù)字表示特征數(shù)據(jù)。這種轉(zhuǎn)換是單向進行的,只能從指紋圖像轉(zhuǎn)換成特征數(shù)據(jù)但不能從特征數(shù)據(jù)轉(zhuǎn)換成為指紋圖像,而且兩枚不同的指紋絕對不會產(chǎn)生相同的特征數(shù)據(jù)。指紋紋路的分叉、終止或轉(zhuǎn)彎處的坐標位置,也就是通常被專家稱為“細節(jié)點”(minutiae)的數(shù)據(jù)點,同時擁有7種以上的唯一特征。有的算法把節(jié)點和方向信息組合產(chǎn)生了更多的數(shù)據(jù),這些方向信息能夠表明各個節(jié)點之間的關系,有的算法還可以處理整幅指紋圖像。最后,我們通過計算機模糊比較的方法,把兩個指紋的模板進行比較,計算出它們之間的相似程度,最終得到兩個指紋的匹配結(jié)果。1.4指紋鎖設計的意義和特點單片機,亦稱單片微電腦或單片微型計算機。它是把中央處理器(CPU)、隨機存取存儲器(RAM)、只讀存儲器(ROM)、輸入/輸出端口(I/0)等主要計算機功能部件都集成在一塊集成電路芯片上的微型計算機。在單片機沒有出現(xiàn)之前我們只能使用復雜的模擬電路來進行線路的連接,這樣不僅體積巨大,成本較高給我的生產(chǎn)生活帶來的極大的不便。而單片機給我們的各領域都帶來的巨大的變化,現(xiàn)在從飛機大炮到電子產(chǎn)品都離不開單片機,這是因為單片機是靠程序運行的,并且可以修改。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是一些特殊的功能,這是別的器件需要費很大力氣才能做到的,有些則是花大力氣也很難做到的。同樣本次設計同樣要采用單片機進行設計。本設計采用8051單片機為主控芯片,結(jié)合外圍器件,組成電子控制系統(tǒng),用戶想要打開鎖,必先通過指紋識別模塊中的MBF200固態(tài)指紋傳感器對指紋進行采集,然后8051將采集到的指紋跟已存儲的指紋進行比對,若指紋比對正確則開鎖,否則不予開啟。由于門鎖的開啟是由指紋信息來確定,而個人的指紋信息是獨一無二的,一般難以被盜與仿制,因此我相信我們所設計的指紋防盜鎖的安全性是有保證的。為防止因指紋鎖內(nèi)的電池沒電或其他故障而無法進行指紋開鎖,還設計了應急開鎖孔--即傳統(tǒng)的機械開鎖功能。我所設計的指紋鎖擁有兩種開鎖方式,因而對于我們生活工作中的正常使用有更大的適用性。第二章鎖的機械結(jié)構(gòu)設計2.1鎖機械結(jié)構(gòu)設計2.1.1鎖的基本工作原理鎖的結(jié)構(gòu)圖如下圖所示,在本設計中該鎖由鎖體殼、鎖舌體、滑塊、電磁鐵、曲柄滑塊機構(gòu)、彈簧、圓柱銷等構(gòu)成。首先,將滑塊套在鎖舌體上再用將曲柄滑塊機構(gòu)沿鎖舌體導桿運動的那一端套在鎖舌體上。然后,將圓柱銷安裝在鎖舌體上的銷孔內(nèi),以使滑塊或者曲柄滑塊機構(gòu)能夠驅(qū)動鎖舌體移動。接著將彈簧套在鎖舌體的推桿上。做完上述工作之后即可將鎖舌體安裝在鎖體殼內(nèi),鎖體殼的兩個側(cè)面留有與之相匹配的孔。之后再將電磁鐵裝入對應位置即可完成鎖的裝配。螺旋壓縮彈簧的作用是通過與鎖體殼的相對運動產(chǎn)生的彈力來使鎖舌來回伸縮,以實現(xiàn)對門的開啟和關閉。指紋開鎖功能的實現(xiàn):當輸入者輸入的指紋與存儲在數(shù)據(jù)存儲器中的指紋相匹配時,控制電磁鐵的電路閉合使電磁鐵得電,電磁鐵產(chǎn)生吸力將限制滑塊運動的行程擋鐵吸上去,然后用手推動滑塊,滑塊運動到圓柱銷處時,再接著向前移動即可帶動導桿鎖舌體一起運動壓縮彈簧使鎖舌縮進鎖體,鎖也就打開了。當松開滑塊后,鎖舌體在彈簧彈力的作用下返回。機械開鎖功能的實現(xiàn):就像傳統(tǒng)的機械鎖一樣,當插入的鑰匙正確時,鎖芯內(nèi)的彈子就不會再阻止鎖芯的轉(zhuǎn)動。將正確的鑰匙插入鎖芯,然后旋轉(zhuǎn)鑰匙使曲柄滑塊機構(gòu)的一端轉(zhuǎn)動,則另一端即可向壓縮彈簧的方向移動,帶動鎖舌體向壓縮彈簧的方向移動,鎖就可以被打開了。因為銅比較耐磨且容易加工,故在設計中鎖芯材質(zhì)采用銅。2.1.2指紋鎖各個零件的設計根據(jù)指紋鎖要實現(xiàn)的功能來設計鎖的機械結(jié)構(gòu)。首先設計鎖舌體,鎖舌體由鎖舌和導桿構(gòu)成,為一個整體零件。鎖舌上下兩側(cè)均為半圓形凹槽,以便具有更好的導向功能,其次還能節(jié)省材料。導桿采用圓柱體但上端削平的形狀,這樣做的原因是可防止安裝在其上的滑塊轉(zhuǎn)動,并且可以更方便加工限制曲柄滑塊機構(gòu)中的滑塊運動的圓柱銷孔。在設計好鎖舌體后,接著設計滑塊?;瑝K的一側(cè)做成一細長推桿用以在指紋匹配成功后帶動滑塊移動以實現(xiàn)開鎖動作?;瑝K開有一內(nèi)孔,其形狀和鎖舌體導桿一樣以實現(xiàn)和導桿的匹配?;瑝K的左端采取比右端高5mm的設計方式,以實現(xiàn)用電磁鐵來限制滑塊向右端移動。機械開鎖部分設計,在曲柄滑塊機構(gòu)中的滑塊設計成U形中空形式以便裝入導桿上。再者也是為了讓圓柱銷卡在中間,一起到固定作用。曲柄滑塊機構(gòu)的一端固定在鎖舌體的導桿上,另一端與鎖體殼相連接,但可以旋轉(zhuǎn)。接著設計鎖體殼,根據(jù)所用彈簧的長度和鎖舌的行程來確定鎖體殼的長度尺寸,根據(jù)電磁鐵的外形尺寸和行程擋鐵的長度以來確定鎖體殼的高度。在鎖體殼的適當位置設計電磁鐵的安裝螺釘孔和電磁鐵的支撐板。拉手設計,當鎖舌體、滑塊、曲柄滑塊機構(gòu)的滑塊、圓柱銷和彈簧裝入鎖體殼內(nèi)后在伸出的導桿部分用一拉手通過一螺釘將二者連接起來。電磁鐵與鎖體殼之間也用螺釘連接。所有裝在鎖體殼內(nèi)的零件安裝完后用螺釘將鎖體殼和鎖體蓋連接在一起。鎖的結(jié)構(gòu)裝配圖如下圖2-1所示:圖2-1鎖的結(jié)構(gòu)裝配圖2.2電磁鐵的選擇電磁鐵分為吸盤式、拍合式、螺管式、轉(zhuǎn)動式、E型等。不同型式的電磁鐵有不同的吸力特性,盤式吸力大,適用于起重電磁鐵、電磁吸盤和電磁離合器;拍合式特性比較陡,廣泛用于接觸器和繼電器;螺管式,吸力特性比較平坦,用于長行程牽引和和制動電磁鐵;機床電器如接觸器、中間繼電器電器基本上都是E型。因制動滑塊質(zhì)量不大故在此選用螺管式電磁鐵。2.3螺管式電磁鐵的設計與校核1.原始數(shù)據(jù)電磁鐵為直流電磁鐵,工作制式為短期,根據(jù)產(chǎn)品技術條件已知電磁鐵的工作參數(shù)如下:額定工作電壓UH=額定工作電壓時的工作電流IH≤2.測試數(shù)據(jù)測試參數(shù)工作行程δ吸力取F=螺線管式電磁鐵草圖如下圖2-2所示:圖2-2電磁鐵草圖3.確定銜鐵(即鎖的行程擋鐵)直徑d電磁鐵銜鐵的工作行程比較小因此電磁吸力計算時只需考慮表面力的作用已知工作行程δ=5mm時的吸合力電磁鐵的結(jié)構(gòu)因數(shù)K=Fδ=0.13δ單位為cm電磁鐵的結(jié)構(gòu)形式應為平面柱擋板中心管式根據(jù)結(jié)構(gòu)因數(shù)查參考資料,可得磁感應強度BP當線圈長度比銜鐵行程大的多時,可以不考慮螺管力的作用,認為全部吸力都由表面力產(chǎn)生由吸力公式F=(Bp/5000)2式中Bp磁感應強度(高斯),dc活動鐵心直徑(可以求得銜鐵直徑為:dc=5800×FBp=4.確定外殼內(nèi)徑D在螺管式電磁鐵產(chǎn)品中它的內(nèi)徑D2與鐵心直徑dc之比值n約為2~3D2=n×dc式中D2為外殼內(nèi)徑,單位為5.確定線圈厚度bk=D2-dc式中bk線圈厚度毫米Δ線圈骨架及絕緣厚度毫米今取Δ=1.bk=2.5毫米6,確定線圈長度線圈的高度lk與厚度bk比值為β,lk=β×bklk線圈長度毫米β值根據(jù)參考資料選取經(jīng)驗數(shù)據(jù)為β=3.4則線圈高度lk=β×7.確定導線直徑導線直徑d=4×ρ×Dcp×IWU式中平均直徑DcpIW線圈磁勢(安匝)IW=式中(IW)z消耗在氣隙中的磁勢(IW)(IW)cm和(IW)k消耗在鐵心中和非工作氣隙中磁勢的安匝數(shù)約為總磁勢的即:

(IW)式中α=0.15由此可得線圈的磁勢為(IW)=Bp×δμ0式中Bp單位為高斯,δ單位為厘米空氣導磁系數(shù)μ0=1.25×電磁鐵在實際應用時電壓可能降低至85%UH為了保證在電壓降低后電磁鐵仍然能夠可靠地工作上式計算所得安匝數(shù)應該是指電壓降低至0.85UH時的磁勢用(IW)(IW)1=顯然,電源電壓為額定值時的磁勢為IW=(IW)1電磁鐵容許最高工作溫度240℃,由參考資料選取電阻系數(shù)d=查線規(guī)表,線規(guī)表如下表2-1所示:表2-1漆包線線規(guī)表其最鄰近的直徑為d=0.173毫米帶絕緣后的直徑d=0.188毫米8.確定線圈匝數(shù)WW=1.28(IW)jd2式中j容許電流密度(安毫米2j=Iq=4UπRdW=9.確定電阻線圈平均匝長lcp=π(DH+D1)2DH=D1+2D1=dc+2Δ式中DH線圈外直徑D1D1DHlcp=π(線圈電阻R=ρ40*lcp經(jīng)過以上設計與校核知所設計的電磁鐵所產(chǎn)生的吸力能滿足工作要求,設計合理。第三章鎖的硬件電路部分設計電路的設計是整個設計的實質(zhì)部分。將每一部分按照總體框圖的要求設計好,才能保證整體電路的質(zhì)量。為我們下面的程序設計,打下堅實的基礎。單元電路的設計步驟分為以下三步:第一步,根據(jù)總體方案對單元電路的要求,明確單元電路的功能、性能指標。注意各單元電路之間的輸入輸出信號的邏輯關系和時序關系,盡量避免使用電平轉(zhuǎn)換電路。第二步,選擇設計單元電路的結(jié)構(gòu)形式。通常選擇學過的熟悉的電路,或者通過查閱資料選擇更合適的、更先進的電路,在此基礎上高度改進,使電路的結(jié)構(gòu)形式最佳。在選擇電路時充分考慮經(jīng)下幾個問題:(1)電路的功能滿足要求;(2)電路的結(jié)構(gòu)簡單、成本低;(3)電路的性能穩(wěn)定、通用性強;第三步,畫出單元電路電路圖。3.1系統(tǒng)功能組成系統(tǒng)組成原理框圖如下圖3-1所示:8051單片機8051單片機控制模塊MBF200指紋采集識別模塊鍵盤及顯示電路模塊鍵盤及顯示電路模塊開鎖電路模塊FlashMemory開鎖電路模塊FlashMemory存儲模塊圖3-1系統(tǒng)總設計結(jié)構(gòu)圖該系統(tǒng)的控制核心是8051單片機,主要選取原則是8051單片機結(jié)構(gòu)簡單、功耗的、價格便宜并且能滿足使用要求。他的工作原理是通過串口向指紋模塊發(fā)送命令或接收相應的操作信息。當用戶輸入的指紋比對成功后,8051將接收到指紋模塊發(fā)來的身份確認消息,然后執(zhí)行開鎖動作,即可將鎖打開。本系統(tǒng)設計分為單片機控制模塊、指紋采集模塊、單片機控制模塊、FlashMemory存儲模塊、鍵盤和執(zhí)行開鎖模塊等五部分。其中單片機控制部分是其核心組成部分。3.2指紋采集模塊電路設計指紋采集采用富士通公司推出的一款先進的固態(tài)指紋傳感器芯片MBF200。3.2.1MBF200芯片介紹(1)主要特點MBF200具有高性能、低功耗和低成本等特點,屬于電容性傳感器。其電容性傳感器陣列由二維金屬電極組成,所有金屬電極充當一個電容板,接觸的手指充當?shù)诙€電容板,器件表面的鈍化層作為兩板的絕緣層。當手指觸摸傳感器表面時,指紋的高低不平就會在傳感器陣列上產(chǎn)生變化的電容,從而引起二維陣列上電壓的變化,并形成指紋傳感圖像?!袷遣捎脴藴蔆OMS技術的電容性固態(tài)器件;

●具有500dpi的分辨率;

●傳感器面積為1.28cm×1.50cm;

●傳感器陣列為256×300點;

●具有自動指紋檢測能力;

●內(nèi)含8位模數(shù)轉(zhuǎn)換器;

●可提供三種總線接口形式;

●帶有8位微處理器總線接口;

●帶有全速USB接口和SPI接口;

●可提供3.3V~5V的工作電壓;

●5V工作電壓下的功耗小于70MW。MBF200的內(nèi)部結(jié)構(gòu)如下圖3-2所示:圖3-2MBF200內(nèi)部結(jié)構(gòu)圖其中256×300點傳感陣列用于產(chǎn)生感應電壓;功能寄存器用于對芯片進行操作控制;控制電路用于傳感器與外部接口電路的控制,主要負責數(shù)據(jù)的讀出與寫入;地址索引寄存器與數(shù)據(jù)寄存器分別用于對功能寄存器的地址選擇及數(shù)據(jù)的讀寫;采樣保持及AD轉(zhuǎn)換電路用于對傳感陣列所產(chǎn)生的電壓進行采樣。另外,多頻振蕩電路用于為芯片提供時鐘信號。(2).器件功能①功能寄存器MBF200是可編程的傳感器芯片,它所具有的強大功能是通過內(nèi)部寄存器設置完成的。下表所列是這些功能寄存器的地址和功能。在對這些寄存器進行操作時,先向地址寄存器內(nèi)寫入所要訪問寄存器的地址,然后讀寫數(shù)據(jù)寄存器即可。MBF200功能寄存器表如下表3-1所示:表3-1MBF200功能寄存器表地址標識功能0X00RAH行地址高位0X01RAL行地址低位0X02CAL列地址低位0X03REH行末地址高位0X04REL行末地址低位0X05CEL列末地址低位0X06DTR放電時間寄存器0X07DCR放電電流寄存器0X08CTRLA控制寄存器A0X09LTRLB控制寄存器B0X0ACTRLC控制寄存器C0X0BSRA狀態(tài)寄存器0X0CPGC可編程增益寄存器0X0DICR中斷控制寄存器0X0EISR中斷狀態(tài)寄存器0X0FTHR門限寄存器0X10CIDH芯片標識高0X11CIDL芯片標識低0X12TET測試模擬寄存器由于列地址最大為256,所以,MBF200只有一個列開始寄存器CAL和一個列結(jié)束寄存器CEL。另外,THR用于在自動檢測指紋時設置門限電壓。PGC用于在A/D轉(zhuǎn)換時設置放大器的增益。②MBF200的工作過程MBF200的傳感器陣列由256列300行的傳感器單元組成。每一列有兩個采樣保持電路,每次捕獲一行指紋圖像數(shù)據(jù)。行捕獲分為兩個階段,第一階段,將電容板的被選行充電到3.3V或5V,在充電的同時,一個內(nèi)部信號使能一個采樣保持電路以采樣被選行的電容單元電壓;第二階段是傳感器板放電階段,放電快慢由放電電流寄存器決定。放電階段結(jié)束后,可由一個內(nèi)部信號使能另一個采樣保持電路去采樣電容單元的最后電壓,充電電壓與放電電壓之差就是所要測量的有用傳感信號電壓。行捕獲結(jié)束之后,接著對該信號進行數(shù)字化,從而完成一次采樣。實際上,該芯片的靈敏度是由放電電流和放電時間寄存器來調(diào)節(jié)的。③MBF200的接口模式MBF200支持三種接口形式和四種操作模式,這四種操作模式相互獨立,不能同時工作。其功能如下表3-2所示:表3-2MBF200的操作模式MODE[1,0]描述00微處理器接口模式01SPI接口模式10USB模式,用內(nèi)部ROM11USB模式,用外部ROM在微處理器接口模式中,可將MFB200與51系列8位單片機相連,且其接口形式非常簡單。需要說明的是,在該芯片中,地址選擇與數(shù)據(jù)寫入是分兩步完成的,先通過A0置0來寫地址索引寄存器,然后再對A0置1來讀寫對應地址的數(shù)據(jù)寄存器。其操作真值表如下表所列。SPI是工業(yè)標準的同步串行接口,它允許8位數(shù)據(jù)同時、同步地被發(fā)送和接收,而且只用到如下信號:SCLK、SCS、MOSI、MISO、EXINT??蓪⑾到y(tǒng)配置為SPI主操作(Master)與從操作(Slave),其接口形式與一般的串行外圍接口方式一致,故此不再贅述。MBF200的微處理接口讀寫真值表如下表3-3所示:表3-3微處理器接口讀寫真值表CSOCSIA0RDWR方式數(shù)據(jù)線HXXXX無效高阻XLXXX無效高阻LHXHH任意高阻LHLLH讀地址寄存器輸出LHLHL寫地址寄存器輸入LHHLH讀數(shù)據(jù)寄存器輸出LHHHL寫數(shù)據(jù)寄存器輸入3.2.2MBF200的應用已知MBF200支持三種接口形式和四種操作模式,且這四種操作模式相互獨立,不能同時工作。由于采用8051單片機作為主控芯片,故選用8位微處理總線模式比較簡單。MBF200固態(tài)指紋傳感器的D0-D7位直接與8051單片機的P00-P07相連。MBF200的硬件電路連接說明如下:VDDA1,VDDA2(引腳1和7)為傳感器模擬部分提供電源,接一個上拉電阻后再與電源相連。VSSA1,VSSA2(引腳2和6)為傳感器模擬部分的接地端,將這兩個引腳接數(shù)字地。VDD1、VDD2、VDD3(引腳25,16和39)是數(shù)字邏輯器和I/O驅(qū)動器的電源輸入端,將這三個引腳直接與電源相連。VSS1、VSS2、VSS3(引腳24,15和40)是數(shù)字邏輯器和I/O驅(qū)動器的接地端,將這三個引腳接地。ISET(引腳3)在ISET和模擬接地端VSSA1之間連接一個200KΩ的電阻以設置內(nèi)部參考電流。放電電流是內(nèi)部參考電流的一個標量函數(shù)。AIN(引腳4)用一個電阻將此引腳引出接地。FSET(引腳5)在FSET和接地端之間連接一個電阻以設置內(nèi)部的多諧振蕩器和自動手指檢測頻率。為了標準的12MHz(±20%)的多諧振蕩器的操作和120KHz(±20%)的自動手指檢測采樣率,應使用56kΩ的電阻。在此采用標準的12MHz(±20%)的多諧振蕩器,故使用56KΩ的電阻。振蕩器的選擇:XTAL1(27腳)內(nèi)部振蕩器的輸入端,為了使用內(nèi)部振蕩器,應將晶體電路連接到該引腳。如果使用外部振蕩器,應將其輸出端連接到這個引腳。XTAL2(引腳26)內(nèi)部振蕩器的輸出端。為了使用內(nèi)部振蕩器,應將晶體電路連接到該引腳。如果使用外部振蕩器,應將此引腳懸空。在此設計中,選用內(nèi)部振蕩器,故將晶體電路連接到這兩個引腳上。D[7:0](引腳11-14,17-20)為雙向數(shù)據(jù)總線,因采用微處理接口模式,故將這七個引腳與8051的P0口相連。A0(引腳21)地址輸入端。當A0處于低電平時,選擇地址索引寄存器;當A0處于高電平時,選擇數(shù)據(jù)緩沖區(qū)。將此引腳與8051的P17相連。RD(腳22)讀使能端,低電平有效,WR(引腳23)寫使能端,低電平有效。將這兩引腳分別與8051的/RD和/WR相連。CS0/SCS(引腳32)片選信號,低電平有效。將此引腳與8051的P16相連。MODE[1:0]為模式選擇引腳,因采用微處理器總線接口模式,故將這兩個引腳接地。其他引腳連接如下面的電路圖3-3所示:圖3-3MBF與8051的連接圖3.3單片機控制模塊的設計3.3.1主控芯片的選擇主控芯片采用8051單片機,因為8051單片機價格便宜、結(jié)構(gòu)簡單、性能穩(wěn)定且能滿足功能要求。3.3.28051單片機芯片介紹8051是美國Intel公司生產(chǎn)的低電壓,高性能的CMOS8位單片機,它采用了CHMOS工藝,其特點是功耗低。片內(nèi)含4KB的只讀程序存儲器(ROM)和128B的數(shù)據(jù)存儲器(RAM),器件采用標準MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)。8051主要特點:?一個8位中央處理機CPU。?128個字節(jié)的片內(nèi)數(shù)據(jù)存儲器RAM,可擴展為64KB。?4KB的片內(nèi)程序只讀存儲器ROM或EPROM,可擴展為64KB。?18個特殊功能寄存器SFR。?4個8位并行輸入輸出I/O接口。?一個串行I/O接口。?兩個16位定時/計數(shù)器。?5個中斷源,2個中斷優(yōu)先級的中斷機構(gòu)。?一個片內(nèi)時鐘振蕩器和時鐘電路。引腳功能如下:VCC(40腳):接+5V電源正端。Vss(20腳):接+5V電源地端。XTAL1(19腳):接外部石英晶體的一端。在單片機內(nèi)部,它是一個反相放大器的輸入端,這個放大器構(gòu)成了片內(nèi)振蕩器。當采用外部時鐘時對于HMOS單片機,該引腳接地;對于CHMOS單片機,該引腳作為外部振蕩信號的輸入端。XTAL2(18腳):接外部石英晶體的另一端。在單片機的內(nèi)部,它是片內(nèi)振蕩器的反相放大器的輸出端。當采用外部時鐘時,對于HMOS單片機,該引腳作為外部振蕩信號的輸入端:對于CHMOS單片機,該引腳懸空不接。P0口(39~32腳):P0.0~P0.7統(tǒng)稱為P0口。在不接片外存儲器或擴展I/O接口時,可作為準雙向輸入輸出口。在接有片外存儲器或擴展I/O接口時,P0口分時復用為底8位地址總線和雙向數(shù)據(jù)總線。P1口(1~8腳):P1.0~P1.7統(tǒng)稱為P1口,可作為準雙向I/O接口使用。對于52子系列,P1.0與P1.1還有第二功能,P1.0可作為定時器/計數(shù)器2的計數(shù)脈沖輸入端T2,P1.1可用作定時器/計數(shù)器2的外部控制端T2EX。P2口(21~28腳):P2.0~P2.7統(tǒng)稱為P2口,一般可作為準雙向I/O接口使用。在外接有外存儲器或擴展I/O接口且尋址范圍超過256KB時,P2口用作高8位地址總線。P3口(10~17腳):P3.0~P3.7統(tǒng)稱為P3口。除作為準雙向I/O接口使用外,P3口還可以將每一位用于第二功能,且P3口的每一條引腳均可獨立定義為第一功能的輸入/輸出或第二功能的輸入/輸出。P3口第二功能如下:P3.0RXD串行輸入口P3.1TXD串行輸出口P3.2INT0外部中斷0(低電平有效)P3.3INT1外部中斷1(低電平有效)P3.4T0定時計數(shù)器0P3.5T1定時計數(shù)器1P3.6WR外部數(shù)據(jù)存儲器寫選通(低電平有效)P3.7RD外部數(shù)據(jù)存儲器讀選通(低電平有效)RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。PSEN:程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當8051由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖。當訪問外部數(shù)據(jù)存儲器,高有兩次有效的PSEN信號。EA/VPP:外部訪問允許。欲使CPU訪問外部程序存儲器(地址0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接VCC端),CPU則執(zhí)行內(nèi)部程序存儲器中的指令。對于片內(nèi)含有EPROM的單片機,在EPROM編程期間,該引腳用于接21V的編程電源Vpp。8051單片機引腳圖如圖3-4所示:圖3-48051單片機引腳圖3.3.38051的晶振電路和復位電路設計(1)振蕩器設計本設計采用內(nèi)部振蕩器方式,片內(nèi)的高增益反相放大器通過XTAL1、XTAL2外接作為反饋元件的片外晶體振蕩器與電容組成的并聯(lián)諧振回路構(gòu)成一個自激振蕩器,向內(nèi)部時鐘電路提供時鐘。振蕩器的頻率主要取決于晶體的振蕩頻率,一般晶體可在1.2-12MHZ之間任選,電容C1、C2可在5-30pF之間選擇。(2)復位電路設計通過某種方式,是單片機內(nèi)各寄存器的值變?yōu)槌跏紶顟B(tài)的操作稱為復位。MCS-51單片機在時鐘電路工作以后,在RST端持續(xù)給出2個機器周期的高電平就可以完成復位操作。復位分為上電復位和外部復位兩種方式。本設計采用外部復位方式。下圖為即可進行上電自動復位,也可外部手動復位的電路連接圖,R1可取200Ω左右。當需要外部復位時,按下復位按鈕即可達到復位目的。內(nèi)部振蕩器和復位電路連接圖如下:圖3-5內(nèi)部振蕩器和復位電路連接圖3.4外部擴展存儲器設計3.4.1數(shù)據(jù)存儲器的選擇因為指紋鎖要采集各個家庭成員的指紋,考慮到家庭成員不一定是固定不變的,故要能進行刪除和重新輸入,并能夠做到讓存儲的數(shù)據(jù)在掉電后不丟失。故應選擇非易失性數(shù)據(jù)存儲器。故在本設計中選擇Flashmemory芯片。又因為MBF200固態(tài)指紋傳感器采集的指紋大小為75KB,為了保證能存儲各個家庭成員的指紋選擇應內(nèi)存較大的Flash芯片。在本設計中選取AT49BV008A(T)芯片作為外接數(shù)據(jù)存儲器,其內(nèi)存大小為1M。(1)AT49BV008A(T)芯片介紹特點:?2.7V至3.6V讀/寫操作?快速讀取訪問時間120納秒?內(nèi)部擦除/編程控制?芯片構(gòu)成:——一個16K的編程鎖定引導塊——兩個8K的參數(shù)塊——一個992K的主內(nèi)存陣列塊?快速扇區(qū)擦除時間10秒

?一個字節(jié)一個字節(jié)或字的編程30毫秒(一般)

?硬件數(shù)據(jù)保護

?低功耗——25mA的工作電流

——CMOS待機電流50毫安說明:AT49BV008A(T)是美國Atmel(愛特梅爾)公司生產(chǎn)的閃存芯片。其容量為1M*8位或512KB*16位。采用Atmel先進的非易失性CMOS工藝制造,器件在2.7V讀操作時功耗只有67mW,訪問時間為120ns。當取消時,CMOS的待機電流小于50mA。該器件包含一個用戶啟用的“引導塊”保護功能。兩種類型是可供選擇的:AT49BV008A/8192A限定引導塊在最低地址的情況下;AT49BV008AT/8192AT限定在最高地址的情況下。允許在系統(tǒng)內(nèi)進行簡單的可編程,AT49BV008A(T)/8192A(T)不需要高輸入電壓來進行編程。讀取設備的數(shù)據(jù)類似于從EPROM中讀?。凰袠藴实牡腃E,OE和WE輸入的以避免爭用總線。重新編輯AT49BV008A(T)/8192A(T)從第一個被擦除的數(shù)據(jù)塊開始,然后在一個字節(jié)一個字節(jié)或一個字一個字的基礎上編程。表3-4AT49BV008A(T)引腳功能表引腳名稱功能/CE片選信號/OE輸出允許信號/WE寫允許信號/RESET復位端RDY//BUSY就緒/忙輸出VPP為快速編程/擦除操作提供可選電源I/O0—I/O14數(shù)據(jù)輸入/輸出線I/O15(A-1)I/O15(數(shù)據(jù)輸入/輸出線,子模式)A-1(LSB地址輸入,字節(jié)模式)/BYTE選擇字節(jié)或字模式NC未連接A0—A18地址線如果/Byte引腳被設置為邏輯“0”,該器件是在字節(jié)模式,只有數(shù)據(jù)I/O口的引腳I/O0-I/O7是有效的并通過片選信號CE和輸出允許端OE控制。數(shù)據(jù)I/O的引腳I/O8-I/O14為高阻態(tài)I/O15引腳作為輸入LSB(1)地址功能使用。AT49BV008A(T)的管腳圖如下圖所示:圖3-6AT49BV008A(T)的管腳圖3.4.2AT49BV008A(T)芯片與8051的連接因為8051單片機可擴展的最大的外設數(shù)據(jù)存儲器的內(nèi)存為64KB,為了與內(nèi)存為1M的AT49BV008A(T)閃存芯片相連,必須占用8051單片機其他I/O的引腳作為高四位地址線才可實現(xiàn)。在本設計中將8051的P1口的引腳P10-P13作為高四位地址線。AT49BV008A(T)的8根數(shù)據(jù)線與8051的P0口的8根I/O口線相連。8051的P0口經(jīng)過74LS373鎖存器鎖存后的8個輸出引腳與AT49BV008A(T)的低8位地址線相連,P20-P27和P10-P13與其高12位地址線相連。其引腳/OE、/WE分別與8051的引腳/RD、/WR相連。電路連接圖見附錄中的電路圖。3.5開鎖電路設計當用戶輸入的指紋與預先存儲的指紋比對成功后就給一個高電平的開鎖信號,再通過電流使繼電器內(nèi)線圈產(chǎn)生磁場,將控制開鎖電路的開關閉合,便能使電磁鐵通電以實現(xiàn)開鎖功能。本設計通過P3.0接一個三極管驅(qū)動繼電器控制電磁鐵電路的開閉,以實現(xiàn)開鎖功能。開鎖模塊電路如下圖所示:圖3-7開鎖模塊電路3.6鍵盤及顯示模塊設計3.6.1鍵盤部分設計因為要對指紋進行刪除和存儲操作,在本設計中采用鍵盤輸入來進行這些操作。鍵盤是計算機不可或缺的輸入設備,是實現(xiàn)人機對話的紐帶。按鍵盤功能分類分為編碼鍵盤和非編碼鍵盤兩類。編碼鍵盤:鍵盤本身帶有硬件電路,能夠由硬件邏輯自動檢測被按下的鍵,然后自動產(chǎn)生與被按鍵對應的鍵編碼(ASCII碼、BCD碼等),并以并行或串行通信方式送往主機。它使用方便、接口電路簡單,但自身電路復雜、成本較高。非編碼鍵盤:這種鍵盤由簡單的鍵開關行列矩陣組成,只能提供鍵開關的行列位置(位置碼或掃描碼),按鍵的識別、鍵值的確定和輸入到主機等工作全靠軟件完成。這類鍵盤的硬件電路簡單、成本低,被廣泛地應用于計算機中。故在本設計中采用非編碼鍵盤。按鍵盤空間維數(shù)分類分為兩類:獨立鍵盤:就是各按鍵相互獨立,每個按鍵各接一根輸入線,每根輸入線上的按鍵工作狀態(tài)不會影響其他輸入線上的工作狀態(tài)。因此通過檢測輸入線的電平狀態(tài)可以很容易的判斷哪個按鍵按下。每一個鍵連接到I/O端口的一位,無鍵閉合時各位均處于高電平。當有一個鍵按下時,就使對應位接地而成為低電平,其他位則仍為高電位。這樣,CPU只要通過讀I/O端口,檢測端口中哪一位為低電平,便可識別出所按下的鍵。這種鍵盤結(jié)構(gòu)簡單,但當鍵盤上的鍵較多時,需使用的I/O端口太多,因此只能用于僅有幾個鍵的小鍵盤中。圖3-8獨立鍵盤示意圖矩陣鍵盤:是指將所有按鍵按行和列排列成矩陣形式,對于m×n個鍵的鍵盤,如果采用獨立鍵盤形式,則需要m×n位I/O端口,而采用矩陣鍵盤形式只需要m+n位。在下圖中,如果K7號鍵按下,則第0行線和第7列線接通而形成通路,如果第0行線為低電平,則由于鍵K7的閉合,會使第7列線也輸出低電平。矩陣式鍵盤工作時,就是按照行線和列線交叉點上的電平值來識別按鍵的。圖3-9矩陣鍵盤示意圖因為本設計所用到的按鍵數(shù)不多,考慮到成本因素在本設計中選用非編碼式獨立鍵盤。更加重要的是獨立式非編碼鍵盤接線較為簡單,對于程序的設計又有簡化的作用。因8051的各個I/O接口都被占用,故需擴展接口芯片,在本設計中擴展一個8155。其與8051的連接電路如下圖所示:圖3-10鍵盤及顯示部分電路圖鍵盤共有五個按鍵,分別為存儲、刪除、選擇鍵上、選擇鍵下和確定。3.6.2顯示部分設計在單片機系統(tǒng)中,常用LED數(shù)碼管顯示器來顯示各種數(shù)字或符號。由于它具有顯示清晰、亮度高、使用電壓低、壽命長等特點,因此使用非常廣泛。七段碼顯示器由8個發(fā)光二極管組成。其中7個長條形的發(fā)光管排列成“日”字形,另一個圓點形的發(fā)光管在數(shù)碼管顯示器的右下角作為顯示小數(shù)點用,它能顯示各種數(shù)字及部份英文字母。LED數(shù)碼管顯示器有兩種不一樣的形式:一種是8個發(fā)光二極管的陽極都連在一起的,稱之為共陽極LED數(shù)碼管顯示器;另一種是8個發(fā)光二極管的陰極都連在一起的,稱之為共陰極LED數(shù)碼管顯示器。如下圖所示。`圖3-11七段碼顯示器原理及外形引腳圖七段字型碼如表3-5所示,由于只有8個段,多以字型碼為一個字節(jié)表3-5七段字型碼表字型共陽極段碼共陰極段碼字型共陽極段碼共陰極段碼0C0H3FH990H6FH1F9H06HA88H77H2A4H5BHb83H7CH3B0H4FHCC6H39H499H66HdA1H5EH592H6DHE86H79H682H7DHF84H71H7F8H07H空白FFH00H880H7FHP8CH73H考慮到本此設計的成品是指紋防盜鎖,而LED顯示屏僅僅起到提示的作用,并不直接參與解鎖的行動,所以在設計中對LED顯示屏并不做過多的設計和要求。只是采用單片的8段LED顯示屏,只用單位的數(shù)字提示操作已能滿足操作的要求。這樣一來減少顯示屏的數(shù)量,降低了成本,同樣也減少了線路的連接,降低了線路的復雜程度,為加工制造和程序的編寫提供了極大的便利。第四章軟件程序的設計4.1程序設計語言的選擇程序設計語言有三種:機器語言、匯編語言和高級語言。機器語言是機器唯一能“懂”的語言,用匯編語言或高級語言編寫的程序(稱為源程序)最終都必須翻譯成機器語言的程序(成為目標程序),計算機才能“看懂”,然后逐一執(zhí)行。高級語言是面向問題和計算過程的語言,它可通過于各種不同的計算機,用戶編程時不必仔細了解所用的計算機的具體性能與指令系統(tǒng),而且語句的功能強,常常一個語句已相當于很多條計算機指令,于是用高級語言編制程序的速度比較快,也便于學習和交流,但是本系統(tǒng)卻選用了匯編語言。匯編語言有如下特點:助記符指令和機器指令一一對應,所以用匯編語言編寫的程序效率高,占用存儲空間小,運行速度快,因此匯編語言能編寫出最優(yōu)化的程序;使用匯編語言編程比使用高級語言困難。因為匯編語言是面向計算機的,匯編語言的程序設計人員必須對計算機硬件有相當深入的了解;匯編語言能直接訪問存儲器及接口電路,也能處理中斷。因此匯編語言程序能直接管理和控制硬件設備;匯編語言缺乏通用性,程序不易移植,各種計算機都有自己的匯編語言,不同計算機的匯編語言之間不能通用。我們選擇匯編語言的原因在于,本系統(tǒng)是編制程序工作量不大、規(guī)模較小的單片機微控制系統(tǒng),使用匯編語言可以不用像高級語言那樣占用較多的存儲空間,適合于存儲容量較小的系統(tǒng)。要想使計算機完成某一具體的工作任務,必須按順序執(zhí)行一條條的指令。這種按工作的要求編排指令序列的過程稱為程序設計。使用匯編語言作為程序設計語言,其程序設計步驟大致可分為以下幾步:分析問題,熟悉和明確問題的要求,明確已知條件及對運算與控制的要求,準確地規(guī)定程序?qū)⒁瓿傻娜蝿眨?shù)學模型。確定算法,根據(jù)實際問題的要求及指令系統(tǒng)的特點,選擇解決問題的方法。算法是進行程序設計的依據(jù),它決定了程序的正確性和程序質(zhì)量。設計程序流程圖,所謂程序流程圖就是用各種規(guī)定的圖形,流向線及必要的文字符號來表達解題步驟,算法及程序結(jié)構(gòu)。它直觀,清晰地體現(xiàn)了程序設計思路,是程序設計的一種常用工具。畫流程圖的過程就是進行程序邏輯設計的過程。正確的畫法是先粗后細,一步一個腳印,只考慮邏輯結(jié)構(gòu)和算法,不考慮或較少的考慮具體指令。這樣,畫流程圖時就可以集中精力考慮程序的結(jié)構(gòu)和算法,從根本上保證程序的合理性和可靠性。然后,剩下的任務就是進行指令代換,這時只要消除語法錯誤,一般就能順利編出源程序,并很少進行返工。分配內(nèi)存單元,分配內(nèi)存工作單元,確定程序和數(shù)據(jù)區(qū)的起始地址。因為在本文的前幾章中我們已經(jīng)完成的設備的選擇與電路的連接,因此在下面的工作我們將直接進行設計程序流程圖的步驟。4.2程序及程序流程圖設計在本電路設計中,單片機是作為控制器嵌入到系統(tǒng)中。應用程序的開發(fā)主要分為兩大部分,即對MBF200指紋識別模塊的應用程序開發(fā)和對七段碼顯示、按鍵程序的開發(fā)。程序開發(fā)就是要建立主程序和一系列的匯編語言子程序,子程序供主程序隨時調(diào)用。對MBF200指紋識別模塊、七段碼顯示、按鍵分別編寫的匯編語言程序均為子程序。4.2.1主程序流程圖設計主程序流程圖如圖4-1所示:系統(tǒng)上電系統(tǒng)上電系統(tǒng)和各模塊初始化系統(tǒng)和各模塊初始化檢測是否有鍵按下檢測是否有指紋輸入檢測是否有鍵按下檢測是否有指紋輸入NNY判斷鍵值輸入的指紋是否正確Y判斷鍵值輸入的指紋是否正確N“存儲”鍵?“存儲”鍵?“刪除”鍵?Y“刪除”鍵?開鎖開鎖選擇要刪除的指紋選擇要刪除的指紋采集輸入的指紋采集輸入的指紋刪除選定的指紋?刪除選定的指紋?存儲采集到的指紋?存儲采集到的指紋?確定確定YNYN確定確定圖4-1主程序流程圖首先使系統(tǒng)上電,然后初始化系統(tǒng)的各個模塊,接著檢測是否有鍵按下,若有鍵按下選判斷鍵值以確定是“存儲”鍵還是“刪除”鍵。若為“存儲”鍵,則下一步就是采集輸入的指紋,然后再確定是否存儲采集到的指紋,若存儲則按“確定”鍵,若不按則視為返回到主程序。若為“刪除”鍵,則下一步就是選擇要刪除的指紋,然后再確定是否刪除選定的指紋,若刪除則按“確定”鍵,若不按則視為返回到主程序。若未檢測到有鍵按下,則檢測是否有指紋輸入,若有則比較輸入的指紋是否正確,若正確執(zhí)行開鎖命令,之后返回主程序。若輸入的指紋不正確,則直接返回主程序。若既沒有鍵按下,又沒有指紋輸入,則直接返回主程序。4.2.2各子程序流程圖設計鍵盤模塊程序流程圖如圖4-2所示:有鍵被按下有鍵被按下延時消除抖動延時消除抖動是否有按鍵是否有按鍵認為是干擾信號N認為是干擾信號進行按鍵分析Y進行按鍵分析轉(zhuǎn)入該鍵值定義的執(zhí)行指令轉(zhuǎn)入該鍵

溫馨提示

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

最新文檔

評論

0/150

提交評論