姜旭東 遲耀丹 田海龍
【摘要】隨著當(dāng)今社會(huì)的不斷發(fā)展,人們愈發(fā)追求生活便利的同時(shí),還對信息的保密有著越來越高的要求。指紋識別技術(shù)涉及圖像處理、模式識別、計(jì)算機(jī)視覺、數(shù)學(xué)形態(tài)學(xué)、小波分析等眾多學(xué)科。由于每個(gè)人的指紋不同,就是同一人的十指之間,指紋也有明顯區(qū)別,因此指紋可用于身份鑒定??梢杂米魅藗兊奈ㄒ粯?biāo)識。本文提出的便是一種對于指紋識別的后端支持技術(shù)。
【關(guān)鍵詞】指紋識別系統(tǒng) STM8 2生物識別
一、簡介
指紋識別即指通過比較不同指紋的細(xì)節(jié)特征點(diǎn)來進(jìn)行鑒別。其優(yōu)勢在于:指紋是人體獨(dú)一無二的特征,并且它們的復(fù)雜度足以提供用于鑒別的足夠特征;如果要增加可靠性,只需登記更多的指紋、鑒別更多的手指,最多可以多達(dá)十個(gè),而每一個(gè)指紋都是獨(dú)一無二的;掃描指紋的速度很快,使用非常方便;讀取指紋時(shí),用戶只需將手指與指紋采集頭相互接觸。接觸是讀取人體生物特征最可靠的方法;指紋采集頭可以更加小型化,并且價(jià)格會(huì)更加的低廉
由于指紋采集的眾多優(yōu)勢,便需要后端設(shè)備對指紋采集模塊采集到的信息進(jìn)行加工處理。本設(shè)計(jì)中,我們采用的是stm32處理器進(jìn)行指紋采集的相關(guān)運(yùn)算。
STM32系列基于專為要求高性能、低成本、低功耗的嵌入式應(yīng)用專門設(shè)計(jì)的ARM內(nèi)核,除最為突出的與制程有關(guān)的節(jié)能特色外,STM32系列還提供更多其它的功能,開發(fā)人員能夠優(yōu)化應(yīng)用設(shè)計(jì)的功耗特性。
二、硬件電路設(shè)計(jì)
(一)MCU
后備區(qū)域供電腳VBAT腳的供電采用CR1220紐扣電池和VCC3.3混合供電的方式,在有外部電源(VCC3.3)的時(shí)候,CR1220不給VBAT供電,而在外部電源斷開的時(shí)候,則由CR1220給其供電。這樣,VBAT總是有電的,以保證RTC的走時(shí)以及后備寄存器的內(nèi)容不丟失。圖中的R31和R32用隔離MCU部分和外部的電源,這樣的設(shè)計(jì)主要是考慮了后期維護(hù),如果3.3V電源短路,可以斷開這兩個(gè)電阻,來確定是MCU部分短路,還是外部短路,有助于生產(chǎn)和維修。當(dāng)然大家在自己的設(shè)計(jì)上,這兩個(gè)電阻是完全可以去掉的。
(二)復(fù)位電路
因?yàn)镾TM32是低電平復(fù)位的,所以我們設(shè)計(jì)的電路也是低電平復(fù)位的,這里的R24和C48構(gòu)成了上電復(fù)位電路。
(三)電源
圖3電源
圖中,總共有3個(gè)穩(wěn)壓芯片:U15/U16/U18,DC_IN用于外部直流電源輸入,經(jīng)過U15 DC-DC芯片轉(zhuǎn)換為5V電源輸出,其中D4是防反接二極管,避免外部直流電源極性搞錯(cuò)的時(shí)候,燒壞開發(fā)板。K1為開發(fā)板的總電源開關(guān),F(xiàn)1為1000ma自恢復(fù)保險(xiǎn)絲,用于保護(hù)USB。U16和U18均為3.3V穩(wěn)壓芯片,給開發(fā)板提供3.3V電源,其中U16輸出的3.3V給數(shù)字部分用。
三、代碼設(shè)計(jì)
(一)代碼功能簡介
(1)刪指紋——與模塊握手通過之后,屏幕將虛擬一個(gè)鍵盤,按‘刪指紋進(jìn)入刪除界面。在此界面可以按照提示輸出一個(gè)數(shù)值按‘Enter刪除單個(gè)指紋,也可按‘清空指紋清空指紋庫。如果是誤操作也可以按‘返回主界面。
(2)錄指紋——按‘錄指紋進(jìn)入此項(xiàng)。錄指紋流程:按第一次手指→按第二次手指→自動(dòng)生成模板→輸入存儲(chǔ)ID→存儲(chǔ)指紋成功。其中兩次按指紋操作,如果超過10次無手指按下則退回主界面。模塊感應(yīng)到手指按下0.3S(最少停留0.3S)后,蜂鳴器會(huì)“滴”一聲!
(3)刷指紋 與模塊握手成功之后,主函數(shù)中判斷指紋模塊的感應(yīng)引腳(touch→PA6)模塊感應(yīng)到手指輸出高電平,程序判斷后進(jìn)入刷指紋流程→讀指紋圖像→搜索匹配指紋庫→成功或沒有搜到指紋。
(二)部分源碼展示
這段代碼的功能是:刪除模板Ps_DeletChar以及刪除flash數(shù)據(jù)庫中指定ID號開始的N個(gè)指紋模板。其參數(shù)描述為:PagelD(指紋庫模板號),N刪除的模板個(gè)數(shù)。返回值是:模塊返回確認(rèn)字
功能:以CharBuffer1或CharBuffer2中的特征文件高速搜索整個(gè)或部分指紋庫。若搜索到,則返回頁碼,該指令對于的確存在于指紋庫中,且登錄時(shí)質(zhì)量很好的指紋,會(huì)很快給出搜索結(jié)果。參數(shù):BufferID,StartPage(起始頁),PageNum(頁數(shù))。返回值:模塊返回確認(rèn)字+頁碼(相配指紋模板)。
其主函數(shù)代碼過長,在這里便不再展示。