基于ARM和滑動指紋傳感器的c計
1、前言
指紋因其唯一性,終身不變性等特點,在安全性要求較高的行業(yè),如海關(guān)、金融和刑偵領(lǐng)域得到廣泛應(yīng)用。隨著人們安全意識和隱私覺悟的提高,手機、筆記本、PDA等日常電子消費品中也逐漸開始使用指紋識別技術(shù)。此類電子消費品因為便攜、手持等特點,在體積、重量、功耗方面都有很高的要求,而傳統(tǒng)的指紋傳感器面積較大,不適合此類產(chǎn)品的使用。
隨之產(chǎn)生的滑動指紋傳感器(sweep fingerprint sensor),因為它更小的體積、更低的價格和極低功耗,已經(jīng)逐漸開始應(yīng)用于電子消費領(lǐng)域和其他安全系統(tǒng)中。以ATMEL公司的AT77C104A FingerChip為例[1],與傳統(tǒng)的指紋傳感器相比,它具有以下優(yōu)點:(1)體積小,僅為1.5×15mm;(2)強魯棒性,采集到的相鄰的指紋幀沒有旋轉(zhuǎn)形變等;(3)低功耗,圖像采集時為4.5mA,導(dǎo)航時為1.5mA,睡眠模式小于10uA。然而手指滑過滑動指紋傳感器時,采集到的一個指紋幀序列而并非完整的指紋圖像。
為了解決這個難題,本文實現(xiàn)了基于ARM9芯片AT91RM9200[4]和滑動指紋傳感器AT77104A FingerChip的指紋采集系統(tǒng),并在該系統(tǒng)中完成指紋有效拼接。
簡單點講,指紋傳感器目前主要分為兩類,光學(xué)指紋傳感器和半導(dǎo)體指紋傳感器;
光學(xué)指紋傳感器:主是利用光的折攝和反射原理,光從底部射向三棱鏡,并經(jīng)棱鏡射出,射出的光線在手指表面指紋凹凸不平的線紋上折射的角度及反射回去的光線明暗就會不一樣。CMOS或者CCD的光學(xué)器件就會收集到不同明暗程度的圖片信息,就完成指紋的采集。
半導(dǎo)體指紋傳感器:這類傳感器,無論是電容式或是電感式,其原理類似,在一塊集成有成千上萬半導(dǎo)體器件的“平板”上,手指貼在其上與其構(gòu)成了電容(電感)的另一面,由于手指平面凸凹不平,凸點處和凹點處接觸平板的實際距離大小就不一樣,形成的電容/電感數(shù)值也就不一樣,設(shè)備根據(jù)這個原理將采集到的不同的數(shù)值匯總,也就完成了指紋的采集。
2、指紋采集和拼接系統(tǒng)的硬件設(shè)計
AT91RM9200是ATMEL推出的ARM9 32位處理器,具有一下優(yōu)點:運算速度快(在工作頻率為180MHz的情況下它的運算速度為200MIPS)、低功耗、可提供片上或片外存儲器以及一系列外圍控制、通信和數(shù)據(jù)存儲的靈活配置。這些特征使得這款芯片適合嵌入式指紋采集系統(tǒng)的開發(fā)。
在本系統(tǒng)中,包括的通信過程為:
(1)主機和ARM板之間的通信包括:首先PC主機在超級終端中使用Xmodem協(xié)議發(fā)送文件RomBoot.bin到AT91RM9200內(nèi)置的ROM中,下載完畢后,自動運行;其次分別將RomBoot.bin和U-Boot.bin程序下載存儲到DataFlash,復(fù)位后自動啟動U-Boot;最后通過以太網(wǎng)口將Linux鏡像文件和應(yīng)用程序下載到DataFlash中。再次復(fù)位后,開發(fā)板進入Linux系統(tǒng)。
(2)AT77C104A和控制芯片之間的通信:通過SPI接口完成??刂菩酒ㄟ^寫寄存器,設(shè)置AT77C104A的工作模式;AT77C104A將采集到的數(shù)據(jù)傳遞到SDRAM中。
圖1 指紋采集和拼接系統(tǒng)框圖
評論