新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM9處理器的嵌入式指紋識別系統(tǒng)設(shè)計(jì)

基于ARM9處理器的嵌入式指紋識別系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2011-01-20 來源:網(wǎng)絡(luò) 收藏


2 指紋與處理器的接口設(shè)計(jì)

2.1 指紋器件的選擇

考慮到產(chǎn)品價(jià)格的因素和所需精度的要求,本系統(tǒng)選擇了FPS200 指紋。FPS200 是Veridicom公司推出的第三代半導(dǎo)體指紋,是一款專為嵌入式系統(tǒng)設(shè)計(jì)的高性能、低功耗、低價(jià)格指紋傳感器。FPS200可以輕易地集成到各種設(shè)備中, 如便攜式電腦、個(gè)人數(shù)字助理(PDA)、移動電話等。FPS200基于電容器充放電原理, 它由300行和256列電容陣列組成, 傳感陣列的每一點(diǎn)都是一個(gè)金屬電極, 可充當(dāng)電容器的一極, 手指按在傳感接觸面上的對應(yīng)點(diǎn)則作為另一極, 傳感面形成兩極之間的介電層。由于指紋的脊和谷會導(dǎo)致各點(diǎn)的電容值不同, 因此, 這個(gè)電容值陣列就形成了一幅指紋圖像。FPS200是面向行的器件, 即每次可獲得一行圖像, 每列接有兩個(gè)采樣保持電路, 當(dāng)選定一行后, 對此行的所有電容充電至VDD, 而在充電結(jié)束時(shí), 第一組采樣保持電路將保存該電壓值。然后, 該行電容將被放電, 經(jīng)過一定的放電時(shí)間后, 另一組采樣保持電路將保存剩余電壓值。兩組采樣保持電路的電壓值之差正比于電容值, 這樣, 將其數(shù)字化即可表示該行的指紋圖像。FPS200的放電電流和放電時(shí)間可分別由寄存器DCR、DTR的值來設(shè)定。

FPS200在待命模式下的操作電流小于20μA, 故可在移動設(shè)備的應(yīng)用中節(jié)約電池的消耗, 延長電池壽命。此外, FPS200還有手指自動檢測電路(AFD), 當(dāng)有手指按在傳感器表面時(shí), 系統(tǒng)將向主機(jī)發(fā)送一個(gè)中斷信號。自動檢測電路允許主機(jī)在沒有指紋時(shí)處在低功耗待命模式, 只有當(dāng)有手指時(shí)才喚醒主機(jī)進(jìn)行處理, 從而節(jié)省了整個(gè)系統(tǒng)的功耗。FPS200的圖像搜索功能則可通過改變電容陣列的參數(shù)值來在1秒種內(nèi)掃描多幅指紋圖像并自動選擇最好的一幅。

2.2 指紋圖像的方式

FPS200有三種總線接口: USB接口、微處理器總線(MCU) 接口和串行外設(shè)接口(SPI)。使用時(shí)可由模式選擇管腳MODE [1:0] 確定其所處的工作模式。

在MCU接口模式, 通過自動增加行列地址寄存器的值以及模數(shù)轉(zhuǎn)換的路徑優(yōu)化功能, 可使FPS200內(nèi)置的標(biāo)準(zhǔn)8位微處理器總線的性能大大加強(qiáng), 其圖像傳輸速度可達(dá)到30幀/秒, 故可以滿足連續(xù)指紋圖像的和比對。

在SPI接口模式, FPS200傳感器可通過其內(nèi)置的SPI接口來減小FPS200對硬件的依賴, 這樣,系統(tǒng)只需6條線就可以與帶SPI接口的微處理器相連接。在SPI模式下, FPS200的圖像傳輸速度為10幀/秒。

而在USB接口模式下, 由于FPS200內(nèi)置有高速USB核電路, 其外部不再需要其它USB控制器,因而可作為標(biāo)準(zhǔn)的USB設(shè)備來使用。在USB模式下, FPS200的圖像傳輸速度為13幀/秒。

本設(shè)計(jì)選用SPI接口, 其FPS200與處理器的連線圖如圖2所示。

FPS200與的連線圖
 FPS200與ARM的連線圖
圖2 FPS200與的連線圖。

FPS200的一些狀態(tài)寄存器(如DTR、DCR、PGC、THR等) 需要在進(jìn)行指紋采集之前被初始化。FPS200共有19個(gè)寄存器, 其中控制寄存器C(CTRLC) 主要負(fù)責(zé)時(shí)鐘輸出, 端口P0和Pl在使用中無需考慮。

3 系統(tǒng)軟件設(shè)計(jì)

本系統(tǒng)的軟件主程序流程圖如圖3所示。

系統(tǒng)軟件主程序流程圖
系統(tǒng)軟件主程序流程圖
圖3 系統(tǒng)軟件主程序流程圖。

一般情況下, 系統(tǒng)上電后, 都要對整個(gè)采集系統(tǒng)進(jìn)行初始化操作, 包括微處理器系統(tǒng)的初始化以及目標(biāo)板上外設(shè)的初始化, 以對它們的參數(shù)進(jìn)行配置。初始化完成后, 就可以開始檢測傳感器上是否有手指, 如果有, 則進(jìn)行指紋圖像的采集, 采集完成后, 再對這枚指紋圖像進(jìn)行預(yù)處理。若這枚指紋圖像采集的質(zhì)量比較好, 則將數(shù)據(jù)上傳; 如果采集的圖像質(zhì)量很差, 則重新采集指紋數(shù)據(jù)。

指紋圖像的采集是在中斷程序中開始的, 當(dāng)指紋傳感器上沒有手指時(shí), 系統(tǒng)將進(jìn)入省電模式。通過指紋傳感器FPS200的手指自動檢測中斷可喚醒系統(tǒng), 并進(jìn)行一次指紋圖像的采集、預(yù)處理和數(shù)據(jù)上傳。完成后再將進(jìn)入省電模式, 并等待下一次的手指中斷采集。ARM中的主程序很簡潔, 因?yàn)橹饕牟僮鞫加芍袛嗤瓿?。手指檢測由指紋傳感器FPS200的自動手指檢測中斷來完成,當(dāng)檢測到有手指后, 即可開始對這枚指紋的處理工作。

系統(tǒng)初始化完成后, 系統(tǒng)將對手指是否安放在指紋傳感器上進(jìn)行檢測, 若傳感器上有手指,則進(jìn)行一次指紋采集及相應(yīng)的處理, 然后等待下一次指紋數(shù)據(jù)的采集。實(shí)際上, 指紋的采集和指紋數(shù)據(jù)的上傳都是由中斷過程完成的, 所以, 整個(gè)系統(tǒng)的主程序流程比較簡潔。


關(guān)鍵詞: ARM 采集 傳感器

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉