1 引言
指紋識(shí)別是一項(xiàng)高新技術(shù),而指紋識(shí)別的前期工作就是指紋圖像采集,。采集的圖像質(zhì)量對(duì)指紋識(shí)別丁作有重要影響,。S3C2410是為手持設(shè)備設(shè)汁的一款低功耗、高度集成,、內(nèi)含一個(gè)ARM920T核的微處理器,。該處理器擁有獨(dú)立的16 KB指令Cache和16 KB數(shù)據(jù)Cache、MMU,、支持TFT的LCD控制器,、NAND閃存控制器、4路DMA,、4路帶PWM的Timer,、I/O端口、RTC,、Touch Screen接口,、2個(gè)USB主機(jī)接中,、1個(gè)USB設(shè)備接口、SD主機(jī)接口和MMC接口,、2路SPI端口,、最高運(yùn)行頻率為203 MHz。指紋傳感器MBF200具有體積小,、低功耗和低成本等特點(diǎn),,屬于電容性傳感器,其傳感器陣列由二維金屬電極組成,,所有金屬電極充當(dāng)一個(gè)電容板,,接觸的手指充當(dāng)另一個(gè)電容板,器件表面的鈍化層作為兩板的絕緣層,,指紋紋理的凹凸會(huì)在傳感器陣列上產(chǎn)生變化的電容,。進(jìn)而引起二維陣列上電壓的變化,形成指紋圖像,。結(jié)合兩器件上述特點(diǎn),,這里選用S3C2410和MBF200構(gòu)成指紋采集系統(tǒng)。
2 系統(tǒng)硬件設(shè)計(jì)
S3C2410與MBF200通訊支持MCU通訊方式,、USB通訊方式和SPI通訊3種數(shù)據(jù)傳輸方式,。此系統(tǒng)采用MCU和USB通訊方式。由于MCU通訊方式具有操作簡(jiǎn)單,、數(shù)據(jù)傳輸速度快等優(yōu)點(diǎn),,這里討論基于MCU通訊的指紋采集系統(tǒng)。MBF200與S3C2410通訊的硬件框圖與指紋采集系統(tǒng)原理圖分別如圖1,、圖2所示,。
D[7:0]實(shí)現(xiàn)與S3C2410的通訊,索引寄存器對(duì)應(yīng)存儲(chǔ)空間的最低位為0,,功能寄存器對(duì)應(yīng)最低位為1,;當(dāng)跳針JP1,JP2,,JP3跳到右邊時(shí)為MCU通訊方式,;nGCS2與選通信號(hào)CSO連接,用于選通MBF200,;S3C2410引腳nOE與MBF200的RD引腳連接,,產(chǎn)生讀信號(hào);S3C2410引腳nWE與MBF200的WR引腳連接,,產(chǎn)生寫(xiě)信號(hào),;電路中接2個(gè)LED,與MBF200引腳P1、P0相連,,低電平亮,,用于測(cè)試硬件電路;JP4連接EINT與MBF200的INTR中斷引腳,;WAIT引腳用于在指紋采集時(shí)查看A/D轉(zhuǎn)換是否完成,,防止在A/D轉(zhuǎn)換未完成時(shí)讀出隨機(jī)數(shù)據(jù),導(dǎo)致數(shù)據(jù)采集失??;MBF200供電電源選擇S3C2410引腳49提供的VDD33 V。
硬件平臺(tái)搭建好后通過(guò)向MBF200的CTRLC寫(xiě)數(shù)據(jù)驗(yàn)證是否能控制兩個(gè)LED燈的點(diǎn)亮和熄滅,。通過(guò)向索引寄存器寫(xiě)MBF200功能寄存器的索引號(hào)來(lái)鎖定該寄存器,,當(dāng)功能寄存器被鎖定時(shí),才可以對(duì)該寄存器進(jìn)行讀寫(xiě)操作,。MBF200進(jìn)行數(shù)據(jù)采集必須正確配置幾個(gè)功能寄存器,,它們配合使用才能完成指紋采集工作,下面對(duì)MCU工作模式下幾個(gè)重要寄存器進(jìn)行說(shuō)明,。
中斷控制寄存器ICR主要控制指紋傳感器的兩個(gè)中斷源:內(nèi)部中斷與外部中斷,。其IT[1:0]位與IP[1:0]位需配合使用,通過(guò)產(chǎn)生中斷喚醒傳感器,,當(dāng)IT[1:O]被設(shè)置成電平觸發(fā)時(shí),,IP [1:0]位要設(shè)置為上升沿或高電平有效;控制寄存器CTRLA寫(xiě)非“0”值開(kāi)始A/D轉(zhuǎn)換,,讀該寄存器獲取指紋圖像數(shù)據(jù),,當(dāng)A/D轉(zhuǎn)換正在進(jìn)行時(shí),不能對(duì)該寄存器進(jìn)行寫(xiě)操作,,否則A/D)轉(zhuǎn)換不能繼續(xù)進(jìn)行,,要等到上一個(gè)A/D轉(zhuǎn)換完成才能可讀該寄存器,否則會(huì)讀出錯(cuò)誤的數(shù)據(jù),;控制寄存器CTRLB在初始化時(shí)要將AFDEN置位,以使能器件的自動(dòng)檢測(cè)功能,,AUTOINCEN置位以實(shí)現(xiàn)圖像采集時(shí)自動(dòng)進(jìn)行A/D轉(zhuǎn)換,。
3 軟件接口設(shè)計(jì)
3.1 主程序設(shè)計(jì)
軟件設(shè)計(jì)主要實(shí)現(xiàn)S3C2410控制MBF200驅(qū)動(dòng)程序的編寫(xiě)。在ADS 1.2開(kāi)發(fā)環(huán)境下采用移植性強(qiáng)的C語(yǔ)言編寫(xiě)程序,,目標(biāo)板上電后初始化整個(gè)采集系統(tǒng),,包括ARM系統(tǒng)的初始化和MBF200的初始化。
MBF200器件采集圖像通過(guò)檢測(cè)中斷開(kāi)始,,首先使能中斷,,中斷寄存器清零。本程序采用電平觸發(fā)方式,,在無(wú)指紋時(shí)引腳INTR是高電平,,當(dāng)有指紋時(shí)變?yōu)榈碗娖?。因此,檢測(cè)中斷信號(hào)就是檢測(cè)引腳INTR的信號(hào),。程序向CTRLA寄存器寫(xiě)0x02,,采集整個(gè)區(qū)域的指紋圖像,圖像數(shù)據(jù)存儲(chǔ)在CTRLA寄存器,。注意要等到上一個(gè)A/D轉(zhuǎn)換完成才能讀該寄存器,,否則會(huì)讀出錯(cuò)誤的數(shù)據(jù)。主程序流程如圖3所示,。
MBF200的功能寄存器中除SRA,、CIDH、CIDL外,,在指紋采集前必須對(duì)其初始化,。指紋采集主程序源代碼如下:
3.2 寄存器參數(shù)選擇
(1)門(mén)限值THR的選擇門(mén)限值THR和周圍環(huán)境的溫度、濕度等有關(guān),,周圍環(huán)境不同,,門(mén)限值也不同。當(dāng)門(mén)限值不合適時(shí),,器件在空閑狀態(tài)會(huì)被認(rèn)為是有手指按下,,中斷信號(hào)為低電平。因此,,在采集時(shí)必須選擇門(mén)限值,。門(mén)限值選擇流程如圖4所示。
(2)DTR,、DCR,、PGC寄存器參數(shù)選擇DTR、DCR,、PGC 3個(gè)寄存器參數(shù)選擇直接決定采集圖片的質(zhì)量,。DTR寄存器控制電容放電時(shí)間,它對(duì)圖片的背景有很大影響,,如果過(guò)小,,則背景區(qū)域較暗,不利于后續(xù)處理,,經(jīng)實(shí)驗(yàn)驗(yàn)證其值最好不小于0x2e,;DCR寄存器控制電容放電電流,它對(duì)圖片的前景區(qū)和背景區(qū)都有很大影響,,如果過(guò)小,,則背景區(qū)域較暗,不利于后續(xù)處理,如果該值過(guò)大,,則圖片很淡,,亦不利于后續(xù)處理,經(jīng)實(shí)驗(yàn)驗(yàn)證其值最好為0x01,;PGC寄存器是可編程增益寄存器,,它對(duì)圖片的前景背景都有很大影響,如果過(guò)小,,則前景區(qū)域較淺,,不利于后續(xù)處理,經(jīng)實(shí)驗(yàn)驗(yàn)證其值最好不小于0x0c,。圖5為凋整好參數(shù)后所采集的圖片,。其中,DTR=0x32,,DCR=0x01.PGC=0x0e,。
4 結(jié)束語(yǔ)
隨著社會(huì)發(fā)展,信息安全被提到更高的位置,,指紋自動(dòng)識(shí)別系統(tǒng)會(huì)有更廣闊的應(yīng)用前景,。指紋采集模塊對(duì)識(shí)別工作有很大影響。結(jié)合S3C2410與MBF200的特點(diǎn),,設(shè)計(jì)由S3C2410控制的基于MCU通信方式的指紋采集系統(tǒng),,該指紋采集系統(tǒng)結(jié)構(gòu)簡(jiǎn)單、操作方便,、采集速度快,,適合于嵌入式系統(tǒng)應(yīng)用。