【基于射頻指紋模塊的單片機密碼鎖設計】11000字(論文)_第1頁
【基于射頻指紋模塊的單片機密碼鎖設計】11000字(論文)_第2頁
【基于射頻指紋模塊的單片機密碼鎖設計】11000字(論文)_第3頁
【基于射頻指紋模塊的單片機密碼鎖設計】11000字(論文)_第4頁
【基于射頻指紋模塊的單片機密碼鎖設計】11000字(論文)_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

基于射頻指紋模塊的單片機密碼鎖設計中文摘要 -10-摘要:基于單片機設計的電子密碼鎖的思路來自于生活中的門鎖,當下農(nóng)村等部分地區(qū)所用的門多是防盜門,安全性很高,但對于老年人或幼童來說操作不易,也有由于丟鑰匙而導致無法出入的隱患。本設計采用以STC89C54單片機作為主控核心,RFID射頻模塊采集IC卡信息,AS608指紋模塊實現(xiàn)指紋識別矩陣,輔助的硬件有矩陣按鍵模塊,可以準確的發(fā)送錄入及識別信號,繼電器及小燈用來提示是否已經(jīng)完成指令。管理員可以通過按鍵輸入,指紋識別,IC卡識別打開繼電器,如果輸入的信息錯誤液晶上就會進行提示,同時密碼鎖打不開、蜂鳴器會發(fā)出警報。另外管理員輸入正確的密碼后可進入管理界面,進行增加、刪除IC卡信息、指紋管理、修改密碼的操作。本密碼鎖優(yōu)勢在于功耗低于傳統(tǒng)密碼鎖,操作更為簡單,可運用于農(nóng)村、工廠等地方。關鍵詞:密碼鎖;射頻模塊;指紋模塊;矩陣按鍵模塊1引言1.1研究的背景和意義科技的日新月異,不斷的進步,使人們對門鎖的安全問題也看得越來越重要,那么該如何實現(xiàn)門鎖的安全問題,也是重中之重。傳統(tǒng)的門鎖裝置需要鑰匙開鎖,被盜的事情經(jīng)常發(fā)生,且鑰匙攜帶麻煩,一旦丟失或鑰匙被盜,就要對門鎖進行全部更換,這給人們帶來了極大的不便和安全問題,目前,在我國的絕大部分密碼鎖中,使用最多的是機械鎖,其次就是一些磁卡、1C卡或者密碼鎖等,這些門禁系統(tǒng)存在著易遺失或被偽造等問題,而密碼則容易被遺忘。這些問題的存在使得門禁系統(tǒng)存在的極大的安全隱患,而且有如機械鎖鑰匙笨重攜帶不便等缺陷。21世紀是個信息大爆發(fā)的世紀,在生活中人們都會遇到各種身份識別認證,如:門禁系統(tǒng)、網(wǎng)絡支付、各種網(wǎng)站賬戶登錄等。因此,人們?yōu)榱烁酶鼫蚀_的識別身份,嘗試利用計算機技術和傳感器技術解決這一問題。射頻和指紋裝置是對進出通道路口進行規(guī)范的管理,是解決政府,企業(yè),家庭個人出入安全的重要方法。任何操作簡單,可靠耐用的電子密碼鎖,都反映了高質(zhì)素的人機界面的組成。本設計為一款指紋射頻密碼鎖,兼具指紋、射頻與密碼識別。本設計的重心是個人的具體身份認證。而與傳統(tǒng)的個人身份認證相比,其傳統(tǒng)的方法(如鑰匙等)更具有可偽造、假冒,而且不易攜帶等問題,對安全產(chǎn)生嚴重的隱患,已經(jīng)不能夠滿足當今社會的需求。本設計采用的生物識別技術不容易被其它替代,也不容易仿造,不能被轉(zhuǎn)讓,很好的消除了這些問題。本設計的硬件采用了低功耗的設計,并且具備三種方式開鎖,更加靈活便捷,適用于工廠,農(nóng)村等多地,且對于老人孩童更為容易操作。1.2國內(nèi)外研究現(xiàn)狀隨著教育信息化的發(fā)展,西方的電子鎖的種類已經(jīng)是相當廣泛及技術上相對領先的局面,不僅在各個領域得到廣泛應用,同時也推向全世界發(fā)展。我國明確提出了加快信息基礎建設、推進數(shù)字化校園建設等戰(zhàn)略。因此“智慧門鎖”也將成為“數(shù)字化”發(fā)展的必然趨勢。當前我國在電子密碼鎖上技術和西方發(fā)達國家相比是落后。西方的電子鎖的種類已經(jīng)是相當廣泛及技術上相對領先的局面,不僅在各個領域得到廣泛應用,同時也推向全世界發(fā)展。從指紋鎖出現(xiàn)到現(xiàn)在,經(jīng)歷過20多年的發(fā)展,目前在國內(nèi)民用市場上占比仍很低,不足10%,有著大量的發(fā)展空間。有行業(yè)人士分析:“到2019年,全球智能鎖具市場總值將從目前的2.61億美元增長至36億美元。中國有著巨大的市場空間分攤這個市場總值,如今開發(fā)的市場份額只是總市場需求的冰山一角?!爆F(xiàn)階段國內(nèi)指紋鎖市場仍處于發(fā)展階段,市場前景廣闊。在未來幾年內(nèi),隨著消費者逐漸了解認識指紋鎖,市場對于指紋鎖的認可,指紋鎖必將走入千家萬戶。我國現(xiàn)下的電子鎖技術相當之前二十世紀中期的西方國家的技術水平,二十世紀后期,我國開始出現(xiàn)大量的電子集成電路,尤其是單片機的出現(xiàn),為電子密碼鎖的提升很高的水平。通過網(wǎng)頁和圖書館資料的翻閱電子密碼鎖的相關技術,設計的初步方案是矩陣按鍵密碼輸入、射頻IC卡采集模塊、12864液晶顯示模塊等結合。盡管電子密碼鎖的設計上還是有一些不足之處,但是整體的設計上安全性好,適用人群大,易操作,并且能夠智能報警,這都是在不斷研制的新成果。目前電子器件價格在不斷減低,電子技術的不斷更新,電子密碼鎖的成本降低了很多,多功能的電子密碼鎖能開發(fā)的市場會更大。1.3論文的主要內(nèi)容和研究思路密碼鎖中采集模塊有:指紋模塊、矩陣按鍵模塊和射頻模塊。指紋模塊采用AS608指紋傳感器,負責指紋的錄入和比對。矩陣按鍵模塊采用4*4矩陣按鍵,負責密碼的輸入。射頻模塊采用RFID射頻技術,使用RC522芯片。三種模塊對應密碼鎖的三種解鎖方式:指紋、密碼和IC卡識別。密碼鎖采用AT89C54單片機為主控核心。應用模塊為:供電模塊、報警模塊、液晶顯示模塊和繼電器模塊。報警模塊由蜂鳴器進行報警;液晶顯示模塊采用12864液晶,可顯示管理模式以及密碼輸入的結果等等。供電模塊可選用電腦USB、充電寶、手機充電器等對系統(tǒng)進行供電。繼電器采用5V電源控制,對電磁鎖進行控制。在密碼解鎖、IC卡解鎖或指紋解鎖時,如果密碼不符合、非注冊IC卡刷卡或非主人指紋時系統(tǒng)將蜂鳴器將報警提示;如果密碼正確、注冊IC卡刷卡或主人指紋時系統(tǒng)將繼電器將吸合,LED燈亮起。進入到管理系統(tǒng)可進行添加編號指紋、刪除編號指紋、注冊IC卡、刪除IC卡、修改密碼的操作。論文的研究思路如下:(1)查閱資料階段:查閱文獻,設計系統(tǒng)的整體構架。(2)準備階段:了解模塊的運作原理,單片機的開發(fā)方式,進行軟件和硬件的準備。(3)硬件設計:確定以54單片機為中央的處理器,對各模塊電路進行設計。(4)軟件設計:進行系統(tǒng)的流程設計和軟件編制。(5)測試:測試密碼鎖的三種解鎖方式以及管理模式。2基于單片機的密碼鎖整體設計2.1總體框架本文設計的主要模塊有,采集模塊:指紋模塊、矩陣按鍵模塊、射頻模塊。主控核心:AT89C54單片機。應用模塊:供電模塊、報警模塊、液晶顯示模塊,繼電器模塊。系統(tǒng)的框架圖如圖2-1所示的打的阿達無法AT89C54AT89C54的打的阿達無法AT89C54AT89C54圖2-1系統(tǒng)框架結構2.2主要硬件介紹2.2.1單片機的確定STC89C54RC單片機是宏晶科技推出的新一代高速、低功耗、超強抗干擾的單片機,指令代碼完全兼容傳統(tǒng)8051單片機,12時鐘/機器周期和6時鐘/機器周期可以任意選擇。主要特性如下:增強型8051單片機,6時鐘/機器周期和12時鐘/機器周期可以任意選擇,指令代碼完全兼容傳統(tǒng)8051。工作電壓:5.5V~3.3V(5V單片機)/3.8V~2.0V(3V單片機)工作頻率范圍:0~40MHz,相當于普通8051的0~80MHz,實際工作頻率可達48MHz用戶應用程序空間為8K字節(jié)片上集成512字節(jié)RAM通用I/O口(32個),復位后為:P1/P2/P3/P4是準雙向口/弱上拉,P0口是漏極開路輸出,作為總線擴展用時,不用加上拉電阻,作為I/O口用時,需加上拉電阻。ISP(在系統(tǒng)可編程)/IAP(在應用可編程),無需專用編程器,無需專用仿真器,可通過串口(RXD/P3.0,TXD/P3.1)直接下載用戶程序,數(shù)秒即可完成一片具有EEPROM功能具有看門狗功能共3個16位定時器/計數(shù)器。即定時器T0、T1、T2外部中斷4路,下降沿中斷或低電平觸發(fā)電路,PowerDown模式可由外部中斷低電平觸發(fā)中斷方式喚醒通用異步串行口(UART),還可用定時器軟件實現(xiàn)多個UART工作溫度范圍:-40~+85℃(工業(yè)級)/0~75℃(商業(yè)級)PDIP封裝STC89C54RC單片機的工作模式掉電模式:典型功耗<0.1μA,可由外部中斷喚醒,中斷返回后,繼續(xù)執(zhí)行原程序空閑模式:典型功耗2mA正常工作模式:典型功耗4mA~7mA掉電模式可由外部中斷喚醒,適用于水表、氣表等電池供電系統(tǒng)及便攜設備。2.2.2指紋模塊的確定指紋模塊里面主要是DSP芯片,型號為AS608,加上外面的CMOS芯片,CMOS芯片主要是對指紋進行“照相”,生成指紋特征,如下圖所示就是一個指紋模板,錄入兩次這樣的指紋特征就能生成一個指紋模板。具體的工作過程是:掃描指紋(錄入圖像)、生成特征、合成模板(建立一個指紋庫文件,成功錄入一個指紋)。具體指紋模塊介紹如下:此指紋模塊型號是:AS608,此模塊上里面包含了:1、光學頭2、通信連接線3、DSP芯片4、穩(wěn)壓芯片5、FLASH芯片6、CMSO傳感器等部件組成。主要技術指標:供電電壓:DC3.8~7.0V背光顏色:綠色亮燈方式:長亮/閃爍供電電流:工作電流:<65mA峰值電流:<95mA指紋圖像錄入時間:<0.5秒窗口面積:14.5×19.4mm匹配方式:比對方式(1:1)搜索方式(1:N)特征文件:256字節(jié)模板文件:512字節(jié)存儲容量:1000枚安全等級:3級(從低到高:1、2、3、4、5)認假率(FAR):<0.001%(安全等級為3時)拒真率(FRR):<1.0%(安全等級為3時)搜索時間:<1.0秒(1:500時,均值)上位機接口:UART(TTL邏輯電平)通訊波特率(UART):(9600×N)bps其中N=1~12(默認值N=6,即57600bps)2.2.3液晶的確定液晶是一種高分子材料,因為其特殊的物理、化學、光學特性,20世紀中葉開始廣泛應用在輕薄型顯示器上。液晶顯示器的主要原理是以電流刺激液晶分子產(chǎn)生點、線、面并配合背部燈管構成畫面。為敘述簡便,通常把各種液晶顯示器都直接叫做液晶。液晶體積小、功耗低、現(xiàn)實操作簡單,但是它有一個致命的弱點,其使用溫度范圍很窄,通用型液晶正常工作溫度范圍為0°C~+55°C,存儲溫度范圍為-20°C~+60°C,因此在設計相應產(chǎn)品時,務必要考慮周全,選取合適的液晶。12864系列液晶的引腳功能12864共有20個引腳,各引腳說明如下面表格所示。表2-2接口信號說明編號符號引腳說明編號符號引腳說明1VSS電源地11D4DataI/O2VDD電源正極12D5DataI/O3VO液晶顯示對比度調(diào)節(jié)端13D6DataI/O4RS數(shù)據(jù)/命令選擇端(H/L)14D7DataI/O5R/W讀/寫選擇端(H/L)15PSB并/串選擇H并行L串行6E使能信號16NC空腳7D0DataI/O17RST復位,低電平有效8D1DataI/O18NC空腳9D2DataI/O19A背光電源正極10D3DataI/O20K背光電源負極12864漢字圖形點陣液晶顯示模塊,可顯示漢字及圖形,內(nèi)置8192個中文漢字(16X16點陣)、128個字符(8X16點陣)及64X256點陣顯示RAM(GDRAM)。2.2.4按鍵控制按鍵的閉合與否反應在電壓上就是呈現(xiàn)出高電平或低電平,如果高電平表示斷開,那么低電平則表示閉合,通過電平的高低狀態(tài)的檢測可確認鍵按下與否。為了確保CPU對一次按鍵動作只確認一次,并且防止干擾信號的影響,必需加入消除電平抖動的措施,下圖2-5為按鍵抖動示意。消除抖動通常有硬、軟硬兩種方法,硬件消除抖動可采取雙穩(wěn)態(tài)電路或濾波消抖電路;軟件消抖是在第一次檢測到有鍵按下時,執(zhí)行一段延時程序再確認該鍵是否仍閉合,如果還是閉合狀態(tài)則確認該鍵按下,從而消除抖動和干擾影響。按鍵接口設計有兩種方法,獨立式按鍵和矩陣式鍵盤。獨立式按鍵各鍵相獨立,每個按鍵各接入一根輸入線,只要檢測輸入線的電平就可以識別按鍵狀態(tài)。這種方法電路配置靈活,軟件結構簡單,但每個按鍵需占用一根輸入口。由于該設計方案IO資源浪費大。故此方法只適用于按鍵少或其他控制功能很簡單的場合。由于本設計中的按鍵較多,考慮系統(tǒng)可靠性和鍵盤設計的簡單所以采用矩陣按鍵。3硬件設計3.1STC89C54圖3-1STC89C54引腳圖VCC(40引腳):電源電壓VSS(20引腳):接地P0口:為8位準雙向I/O接口,它的每一位都可以分別定義為輸入線或輸出線(作為輸入時,口鎖存器必須置1),可啟動4個TTL負載。P1口:為8位準雙向I/O接口,它的每一位都可以分別定義為輸入線或輸出線(作為輸入時,口鎖存器必須置1),可啟動4個TTL負載。P2口:為8位準雙向I/O接口,當它作為I/O接口使用時,可直接連接外部I/O設備;在接有片外存儲器或擴展I/O且尋址范圍超過256字節(jié)時,P2口可用做高8位的地址總線。P3口:為8位準雙向I/O接口,還可以將每一位用于第二功能,第二功能的定義見表3-1。端口功能第二功能P3.0RXD(串行輸入口)P3.1TXD(串行輸入口)P3.2INT/0(外中斷0)P3.3INT/1(外中斷1)P3.4T0(定時/計數(shù)器0)P3.5T0(定時/計數(shù)器1)P3.6外部數(shù)據(jù)存儲器寫選通P3.7外部數(shù)據(jù)存儲器讀選通表3-1STC89C54P3口的第二功能XTAL1:振蕩器反相放大器的及內(nèi)部時鐘發(fā)生器的輸入端。XTAL2:振蕩器反相放大器的輸出端。本設計的主程序主要由液晶顯示、通訊子按鍵程序組成。主程序的工作流程描述如下:首先初始化各種硬件功能模塊進行初始化。包括開機液晶顯示、鍵盤掃描、指紋模塊建立通信。3.1.1外部晶振的設計單片機系統(tǒng)里都有晶振,在單片機系統(tǒng)里晶振作用非常大,全程叫晶體振蕩器,它結合單片機內(nèi)部電路產(chǎn)生單片機所需的時鐘頻率,單片機晶振提供的時鐘頻率越高,那么單片機運行速度就越快,單片接的一切指令的執(zhí)行都是建立在單片機晶振提供的時鐘頻率。在通常工作條件下,普通的晶振頻率絕對精度可達百萬分之五十,高級的精度更高。有些晶振還可以由外加電壓在一定范圍內(nèi)調(diào)整頻率,稱為壓控振蕩器(VCO)。晶振用一種能把電能和機械能相互轉(zhuǎn)化的晶體在共振的狀態(tài)下工作,以提供穩(wěn)定,精確的單頻振蕩。單片機晶振的作用是為系統(tǒng)提供基本的時鐘信號。通常一個系統(tǒng)共用一個晶振,便于各部分保持同步。有些通訊系統(tǒng)的基頻和射頻使用不同的晶振,而通過電子調(diào)整頻率的方法保持同步。晶振通常與鎖相環(huán)電路配合使用,以提供系統(tǒng)所需的時鐘頻率。如果不同子系統(tǒng)需要不同頻率的時鐘信號,可以用與同一個晶振相連的不同鎖相環(huán)來提供。STC89C54使用11.0592MHz的晶體振蕩器作為振蕩源,由于單片機內(nèi)部帶有振蕩電路,所以外部只要連接一個晶振和兩個電容即可,電容容量一般在15pF至50pF之間。STC89C54的內(nèi)部有一個用于構成振蕩器的高增益反相放大器,通過XTAL1,XTAL2外部接上一片作為反饋元件的晶體,與C1和C2構成了并聯(lián)諧振電路,使其構成自激振蕩器,電容的值具有微調(diào)的作用,我們?nèi)?0PF,具體的接法如圖3-2外部晶振電路。圖3-2外部晶振電路STC89C54的工作頻率范圍在0~24MHZ。我們選用的是11.0592MHZ的晶振,振蕩周期約為1us機器周期約為0.1us,所以這個晶振可以滿足這個系統(tǒng)的要求。并且晶振不能離單片機太遠,不然使用外部晶振進行軟件調(diào)試時就會發(fā)現(xiàn)找不到信號。3.1.2復位電路的設計單片機的置位和復位,都是為了把電路初始化到一個確定的狀態(tài),一般來說,單片機復位電路作用是把一個例如狀態(tài)機初始化到空狀態(tài),而在單片機內(nèi)部,復位的時候單片機是把一些寄存器以及存儲設備裝入廠商預設的一個值。單片機復位電路原理是在單片機的復位引腳RST上外接電阻和電容,實現(xiàn)上電復位,當復位電平持續(xù)兩個機器周期以上時復位有效。復位電平的持續(xù)時間必須大于單片機的兩個機器周期。具體數(shù)值可以由RC電路計算出時間常數(shù)。復位電路由按鍵復位和上電復位兩部分組成。(1)上電復位:STC89系列單片及為高電平復位,通常在復位引腳RST上連接一個電容到VCC,再連接一個電阻到GND,由此形成一個RC充放電回路保證單片機在上電時RST腳上有足夠時間的高電平進行復位,隨后回歸到低電平進入正常工作狀態(tài),這個電阻和電容的典型值為10K和10uF。(2)按鍵復位:按鍵復位就是在復位電容上并聯(lián)一個開關,當開關按下時電容被放電、RST也被拉到高電平,而且由于電容的充電,會保持一段時間的高電平來使單片機復位。本系統(tǒng)采用的復位電路如圖3-3所示。單片機在上電瞬間,RC電路充電,RST引腳端出現(xiàn)正脈沖,只要RST端保持兩個機器周期以上的高電平,就能使單片機有效復位。其中電容選10uF、電阻選10K。圖3-3復位電路3.2采集電路3.2.1射頻模塊射頻模塊采用RFID模塊,在RFID模塊檢測到有IC卡讀入時,IC卡將和射頻模塊產(chǎn)生共振,使其內(nèi)部在電磁波的激勵下,并且不斷給內(nèi)部的電容不斷充電,使電容產(chǎn)生2V左右的電壓,再將電壓給單片機進行識別,使單片機讀出IC卡卡號。如圖3-4所示。圖3-4RFID射頻工作原理圖3.2.2指紋模塊本設計選擇的指紋模塊型號是AS608,指紋模塊電路如下所示:圖3-5指紋模塊接口圖指紋模塊的操作是通過單片機的串口發(fā)送與接收命令完成的。我們先通過串口給指紋模塊發(fā)送命令,然后等待指紋模塊傳回數(shù)據(jù)。再通過單片機進行數(shù)據(jù)的處理,從而判斷命令有沒有執(zhí)行。主要為以下幾條命令。1)開機的時候進行模塊握手,從而判斷模塊是不是連接正常。命令如下:驗證口令:指令包格式:2bytes4bytes1byte2bytes1byte4bytes2bytes包頭模塊地址包標識包長度指令碼口令校驗和0xEF01Xxxx01H07H13HPasswordSUM應答包格式:2bytes4bytes1byte2bytes1byte2bytes包頭模塊地址包標識包長度確認碼校驗和0xEF01Xxxx07H03HxxHSUM注:確認碼=00H表示口令驗證正確;確認碼=01H表示收包有錯;確認碼=13H表示口令不正確;2)生成指紋模板需要進行如下四個個命令:錄入圖像、生成特征、合成指紋模板、存儲指紋模板。錄入指紋圖像指令:指令包格式:2bytes4bytes1byte2bytes1byte2bytes包頭模塊地址包標識包長度指令碼校驗和0xEF01Xxxx01H03H01HSUM應答包格式:2bytes4bytes1byte2bytes1byte2bytes包頭模塊地址包標識包長度確認碼校驗和0xEF01Xxxx07H03HxxHSUM注:確認碼=00H表示錄入成功;確認碼=01H表示收包有錯;確認碼=02H表示傳感器上無手指;確認碼=03H表示錄入不成功;圖像生成特征Img2Tz指令:指令包格式:2bytes4bytes1byte2bytes1byte1byte2bytes包頭模塊地址包標識包長度指令碼緩沖區(qū)號校驗和0xEF01Xxxx01H04H02HBufferIDSUM應答包格式:2bytes4bytes1byte2bytes1byte2bytes包頭模塊地址包標識包長度確認碼校驗和0xEF01Xxxx07H03HxxHSUM注:確認碼=00H表示生成特征成功;確認碼=01H表示收包有錯;確認碼=06H表示指紋圖像太亂而生不成特征;確認碼=07H表示指紋圖像正常,但特征點太少而生不成特征;確認碼=15H表示圖像緩沖區(qū)內(nèi)沒有有效原始圖而生不成圖像;特征合成模板RegMode1指令:功能說明:將CharBuffer1與CharBuffer2中的特征文件合成特征模板。指令包格式:2bytes4bytes1byte2bytes1byte2bytes包頭模塊地址包標識包長度指令碼校驗和0xEF01Xxxx01H03H05HSUM應答包格式:2bytes4bytes1byte2bytes1byte2bytes包頭模塊地址包標識包長度確認碼校驗和0xEF01Xxxx07H03HxxHSUM注:確認碼=00H表示合并成功;確認碼=01H表示收包有錯;確認碼=0aH表示合并失敗(兩枚指紋不屬于同一手指);存儲模板Store指令:指令包格式:2bytes4bytes1byte2bytes1byte1byte2bytes2bytes包頭模塊地址包標識包長度指令碼緩沖區(qū)號位置號校驗和0xEF01XXXX01H06H06HBufferIDPageIDSUM應答包格式:2bytes4bytes1byte2bytes1byte2bytes包頭模塊地址包標識包長度確認碼校驗和0xEF01Xxxx07H03HxxHSUM注:確認碼=00H表示儲存成功;確認碼=01H表示收包有錯;經(jīng)過以上四個步驟與命令,我們就錄入了一個指紋,重復以上步驟,我們可以再錄入其它指紋。3)指紋識別是先轉(zhuǎn)換到識別模式,然后不斷的探測是不是有指紋出現(xiàn)在光學采集頭上。如果有則掃描指紋,與庫里面的指紋進行比對,如果是就讀出是幾號指紋。模塊會自動探測是不是有指紋,如果有則發(fā)送下面的命令:搜索指紋Search指令:指令包格式:2bytes4bytes1byte2bytes1byte1byte2bytes2bytes2bytes包頭模塊地址包標識包長度指令碼緩沖區(qū)號參數(shù)參數(shù)校驗和0xEF01Xxxx01H08H04HIDStarPagePageNumSUM應答包格式:2bytes4bytes1byte2bytes1byte2bytes2bytes2bytes包頭模塊地址包標識包長度確認碼頁碼得分校驗和0xEF01Xxxx07H07HxxHSUM注:確認碼=00H表示搜索到;確認碼=09H表示沒有搜索;如果搜索到就返回相應的指紋號,如果沒有就會返回0。3.3按鍵控制部分電路矩陣式鍵盤由行線和列線組成,按鍵位于行、列的交叉點上。當鍵被按下時,其交點的行線和列線接通,相應的行線或列線上的電平發(fā)生變化,單片機通過檢測行或列線上的電平變化可以確定哪個按鍵被按下。矩陣鍵盤的檢測方法有多種,常見的有:逐點掃描法、逐行掃描法、全局掃描法。在本實例中我們采用逐行掃描法來實現(xiàn)按鍵檢測,其中P1.4-P1.7作為列線,P1.0-P1.3作為行線。識別過程如下:1、判斷鍵盤中是否有鍵按下。設置所有行線為輸出口,并輸出低電平;設置列線為輸入口,讀取列線上的電平狀態(tài),只要有一列的電平為低,就表示有按鍵按下,并且被按下的鍵位于電平為低的列線與4跟行線相交叉的4個按鍵中,若所有列線都為高電平,表示沒有按鍵按下;2、判斷被按下按鍵所在的位置。在確認有鍵按下后(進行按鍵消抖處理后),接下來就是確定具體哪個案件被按下,方法是:依次將每根行線設置為輸出口,并輸出低電平(同時剩余行線輸出高電平),然后逐列檢查每根列線的電平狀態(tài),若某列為低電平,則該列線與設置為輸出低電平的行線交叉處的按鍵就是被按下的按鍵。3、按鍵位置確定后,接下來就要給矩陣鍵盤中的每個按鍵進行編號,也就是進行按鍵編碼,程序設計中常用計算法和查表法兩種方式對按鍵進行編碼,本實例采用計算法編碼。圖3-6按鍵電路3.4電磁鎖的控制電磁鎖利用繼電器進行控制,繼電器采用的是5V電源控制,注冊過的的指紋和輸入正確的管理員密碼時才能驅(qū)動繼電器控制電磁鎖的開關。控制芯片通過I/O控制三極管驅(qū)動繼電器的開關,同時用三極管將接受到電流放大,在大電流的作用下繼電器的內(nèi)部會會產(chǎn)生磁性吸合公共端,原來的連接處會與公共端斷開,并且與另一處連接,吸合后會打開電磁鎖,在門禁系統(tǒng)斷電或者單片機輸出高電平時,三極管也會同時斷開,繼電器公共端將原來連接,讓電磁鎖的鎖舌處于彈出狀態(tài)。圖3-7繼電器控制3.5電源模塊電子密碼鎖工作需要的5V工作電源,供電的電壓過高容易導致系統(tǒng)功能模塊被燒壞,供電的電壓過低會導致系統(tǒng)無法正常工作。如圖所示的電源插頭中2和3引腳是負極端接口,1引腳是正極端口,使用過程中為了穩(wěn)定電壓在電源正負極焊接個電容,提高電源電壓穩(wěn)定保證系統(tǒng)更加穩(wěn)定于5V電源工作中,確保指紋模塊、液晶模塊、芯片等模塊能在穩(wěn)定電源中工作。如圖3-8所示。圖3-8電源電路3.6蜂鳴報警器智能門禁系統(tǒng)的報警提示功能選擇用蜂鳴器,蜂鳴器在焊接電路的過程中需要連接三極管,需要由三極管進行電路的放大后,電流才夠驅(qū)動蜂鳴器工作,三極管的焊接過程中要分清基極、集電極和發(fā)射極,當單片機通過發(fā)出高低電平去驅(qū)動三極管的工作,三極管才能放大電流去驅(qū)動蜂鳴器工作,如下電路所示,蜂鳴器與單片機的IO口通信。圖3-9蜂鳴器的連接電路4軟件設計4.1主程序流程及工作分析主程序流程圖:圖4-1主程序流程圖4.2串口初始化由于使用串口和模塊通訊,所以必須先約定好單片機和模塊的串口工作速度和數(shù)據(jù)包格式。SCON是一個特殊功能寄存器,用以設定串行口的工作方式、接收/發(fā)送控制以及設置狀態(tài)標志:表4-1SCON寄存器地址位位76543210字節(jié)地址:98HSM0SM1SM2SM3SM4SM5SM6SM7SCONSM0和SM1為工作方式選擇位,可選擇四種工作方式:表4-2串行口工作方式SM0SM1方式說明波特率000移位寄存器fosc/1201110位異步收發(fā)器(8位數(shù)據(jù))可變10211位異步收發(fā)器(9位數(shù)據(jù))fosc/64或fosc/3211311位異步收發(fā)器(9位數(shù)據(jù))可變PCON中只有一位SMOD與串行口工作有關:表4-3PCON寄存器位76543210字節(jié)地址:97HSMODPCONSMOD(PCON.7)波特率倍增位。在串行口方式1、方式2、方式3時,波特率與SMOD有關,當SMOD=1時,波特率提高一倍。復位時,SMOD=0。發(fā)送數(shù)據(jù)共11-14個字節(jié),前6個字節(jié)是模塊的包頭和模塊地址為固定值,后5-8個字節(jié)是傳輸?shù)哪K的命令。同時根據(jù)外部晶振和系統(tǒng)默認的傳輸速率算出控制串口的各寄存器的初始值。指紋模塊的通訊波特率(UART)的要求為9600bps,所以如果單片機要與指紋模塊進行通信是,必須波特率一致,此時需要在編程時設置單片機的波特率為9600bps。串行口工作之前,應對其進行初始化,主要是設置產(chǎn)生波特率的定時器1、串行口控制和中斷控制。具體步驟如下:1、確定T1的工作方式(編程TMOD寄存器);2、計算T1的初值,裝載TH1、TL1;3、啟動T1(編程TCON中的TR1位);4、確定串行口控制(編程SCON寄存器);5、串行口在中斷方式工作時,要進行中斷設置(編程IE、IP寄存器)。下面是串口初始化程序:SCON=0x50;//UART方式1:8位UART;REN=1:允許接收PCON=0x00;//SMOD=0:波特率不加倍TMOD=0x21;//T1方式2,用于UART波特率,T0方式1TH1=0xFD;TL1=0xFD;//UART波特率設置:96004.3.1鍵盤管理程序設計流程鍵盤模塊的工作流程圖如圖4-2所示:圖4-2鍵盤程序流程圖4.3.2LCD顯示模塊程序設計流程顯示模塊主要完成數(shù)據(jù)的顯示功能,然后根據(jù)接受到指令顯示相關的內(nèi)容在屏幕上。圖4-3顯示程序流程圖4.3.3指紋模塊的通信程序設計流程串口通信數(shù)據(jù)發(fā)送、接收流程圖如圖4-4。圖4-4串口通信數(shù)據(jù)發(fā)送、接收流程圖4.4程序配置所需要的各種硬件已經(jīng)選擇好,單片機是電路中主控制器,由單片機對指紋模塊及液晶、按鍵進行開發(fā)。首先應建立一系列的C語言子程序供主程序進行調(diào)用。本設計采用KeiluVision2對單片機編程。Keil可以編譯C源碼,匯編源程序,生成代碼效率非常高,多數(shù)語句生成的匯編代碼緊湊容易理解。Keil軟件可以提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,能夠連接和重定位目標文件和庫文件,創(chuàng)建HEX文件,調(diào)試目標程序。使用Keil軟件的主要工作流程為:1、創(chuàng)建一個新工程,命名為“Fingerprint”,然后從器件庫中選擇單片機型號,因為其中沒有STC89C54,所以選擇與它完全兼容的Atmel89c52代替。2、新建text文件,命名為main.c,然后在Target1的子文件SourceGroup1中添加main.c文件。3、點擊下圖中箭頭所指的圖標,彈出如下對話框,在Xtal后輸入9600,即單片機的工作頻率為9600MHz。圖4-5設置波特率4、點擊Output標簽,在CreateHEX前的方框內(nèi)勾選,這樣可以生成hex文件以便輸入單片機中。5、用C語言創(chuàng)建源程序。6、修改源程序中的錯誤。7、測試,鏈接應用。5測試5.1實物圖及測試方案在完成系統(tǒng)各模塊設計后,需要對設計的功能進行逐一測試。因此以下是系統(tǒng)測試的具體內(nèi)容。當給系統(tǒng)通電后,如圖5-1所示。圖5-1初始圖測試方案:測試密碼鎖的三種解鎖方式及報警系統(tǒng)測試密碼鎖的管理模塊5.2按鍵設置如圖所示,最上一排從左到右依次是*,0號,#,管理。第二排是7號,8號,9號,卡片1。第三排是4號,5號,6號,卡片2。第四排是1號,2號,3號,卡片3。圖5-2按鍵圖5.3管理模塊按下管理按鍵,并輸入正確密碼后可進入管理界面,可以進行添加指紋,刪去指紋,卡片管理,修改密碼操作,如圖所示圖5-3管理界面5.4密碼輸入當輸入正確密碼,已錄入卡片或指紋時,亮紅燈,界面分別如圖所示圖5-4密碼輸入當輸入錯誤密碼,未錄入指紋或卡片時,蜂鳴器報警,界面如圖所示圖5-4密碼錯誤5.5測試結果分析經(jīng)過測試,該密碼鎖可以穩(wěn)定的、正常的運行。可以進行密碼,指紋,射頻三種方式的識別,以及進行密碼修改,指紋的增刪,卡片管理,并在輸入錯誤時及時的報警。密碼鎖硬件與軟件相互結合,達到了設計預期的效果???/p>

溫馨提示

  • 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

提交評論