国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

指紋識別系統(tǒng)的一種低功耗實現(xiàn)方法與應(yīng)用

2011-06-07 05:53張金剛林喜榮戴曉清李建榮
電視技術(shù) 2011年17期
關(guān)鍵詞:指紋識別低功耗按鍵

張金剛,林喜榮,戴曉清,李建榮

(1.清華大學(xué) 深圳研究生院,廣東 深圳 518055;2.廣東省陽江市納安科技有限公司,廣東 陽江 529500)

0 引言

隨著半導(dǎo)體工藝的進步,指紋圖像的采集變得越來越容易,這就加快了指紋識別系統(tǒng)的應(yīng)用和推廣。目前指紋識別系統(tǒng)主要采用具有高速數(shù)據(jù)運算能力的DSP或者基于ARM核的處理器芯片來完成算法處理和識別,高性能芯片的應(yīng)用不可避免地將系統(tǒng)的整體功耗限制在了一定的水平上,影響了系統(tǒng)在需要電池供電的便攜式設(shè)備中的應(yīng)用。因此,在保證指紋識別系統(tǒng)高效、準(zhǔn)確的基礎(chǔ)上,大幅降低系統(tǒng)功耗將會大大增加系統(tǒng)的應(yīng)用范圍及在電池供電下的連續(xù)使用時間,解決指紋識別系統(tǒng)推廣和普及的一個技術(shù)瓶頸[1-4]。

本文提出一種雙控制核心的系統(tǒng)架構(gòu)來實現(xiàn)指紋識別系統(tǒng)的高性能和低功耗之間的矛盾,以基于ARM核的ML67Q5250實現(xiàn)指紋采集、圖像處理以及識別算法,以超低功耗的MSP430F149的單片機[5-6]控制外圍設(shè)備,保證系統(tǒng)在待機狀態(tài)下的低功耗。

1 系統(tǒng)硬件結(jié)構(gòu)設(shè)計

1.1 指紋處理與認(rèn)證芯片ML67Q5250

ML67Q5250是日本沖電氣(OKI)公司開發(fā)的一款指紋處理與認(rèn)證專用芯片。該芯片采用ARM7TDMI核心,既具有強大的運算能力,也具備ARM系列豐富的控制功能。它的主要性能特點及優(yōu)勢如下:

1)32位RISC CPU(ARM7TDMI),時鐘頻率可編程為1 MHz,6 MHz,16 MHz,32 MHz。

2)具有16 kbyte片內(nèi)RAM供CPU運行使用,內(nèi)部集成64 kbyte程序ROM。

3)內(nèi)部集成指紋識別加速器,在32 MHz時鐘下,1∶1認(rèn)證時間小于0.8 s。

4)內(nèi)置JTAG接口,方便在線調(diào)試。

5)供電電壓3.3 V,內(nèi)核工作電壓2.5 V,工作電流100 mA,待機電流30 μA。

6)支持多種接口,具有2個全速SPI通道,1個全雙工通用異步收發(fā)器SIO(UART),一個8位同步串行接口SSIO,1個USB2.0全速設(shè)備控制器,可以連接多種劃擦式和面接觸式指紋傳感器。

1.2 外設(shè)主控芯片MSP430F149

MSP430F149[5]是TI公司開發(fā)的一款具備超低功耗的16位微控制器,具有5級節(jié)能模式。它的主要性能特點及優(yōu)勢如下:

1)強大的處理能力。16位RISC單片機,在8 MHz晶體驅(qū)動下,實現(xiàn)125 ns的指令周期。

2)靈活的時鐘系統(tǒng)。I/O和CPU采用不用的時鐘系統(tǒng),高速時鐘(MCLK)滿足CPU高速運行,低速時鐘(ACLK,SMCLK)滿足低速外設(shè)及低功耗需求。

3)超低功耗。供電范圍1.8~3.6 V,在活動模式下功耗為200 μA@1 MHz,2.2 V,待機模式下功耗為0.6 μA。

4)豐富的片上外圍模塊。包括看門狗(WDT)、定時器A、定時器B、基本定時器、2個通用異步串口收發(fā)器、1個12位A/D、16個可實現(xiàn)方向控制及中斷功能的并行輸入輸出端口等,可以滿足對多種外設(shè)的支持。

1.3 系統(tǒng)結(jié)構(gòu)設(shè)計

系統(tǒng)結(jié)構(gòu)如圖1所示,分成指紋識別模塊和外設(shè)主控系統(tǒng)這2個獨立的模塊。指紋識別模塊以ML67Q5250為主控中心可以實現(xiàn)指紋圖像的采集、預(yù)處理、特征提取和匹配等指紋識別的全部功能;MSP430F149作為外設(shè)主控中心負(fù)責(zé)系統(tǒng)的輸入、輸出、存儲及執(zhí)行機構(gòu)。2個功能模塊通過改進的SPI協(xié)議進行通信,ML67Q5250將指紋識別的結(jié)果發(fā)送給MSP430F149,MSP430F149再將指紋識別結(jié)果轉(zhuǎn)化為對執(zhí)行機構(gòu)的控制,不同的執(zhí)行機構(gòu)接口可以實現(xiàn)多種應(yīng)用。如果將電機作為執(zhí)行機構(gòu)可以實現(xiàn)指紋鎖、指紋保險箱等,如果將指紋識別結(jié)果作為加密密鑰,則可以實現(xiàn)指紋文檔加密的功能等。

2 系統(tǒng)主要功能模塊設(shè)計

2.1 指紋識別模塊

ML67Q5250具有多種接口,可以兼容多種指紋傳感器,在程序設(shè)計上,針對不同類型的傳感器,需要開發(fā)相應(yīng)的不同驅(qū)動程序。驅(qū)動程序的主要工作包括初始化傳感器、控制傳感器采集指紋圖像、將圖像轉(zhuǎn)化為ML67Q5250要求的標(biāo)準(zhǔn)格式,最后將數(shù)據(jù)傳送給ML67Q5250。

實驗中,為了兼容多種傳感器,系統(tǒng)設(shè)計了一個集成接口,如圖2所示,可以在不更改硬件結(jié)構(gòu)的基礎(chǔ)上同時兼容4種傳感器,分別是美國AuthenTec公司生產(chǎn)的劃擦式電容傳感器AES2510,面接觸式電容傳感器AES3400和AFS8600,以及瑞典FingerPrints公司推出的面接觸式電容傳感器FPC1011C。

為了方便開發(fā)不同傳感器驅(qū)動及系統(tǒng)擴展的需求,指紋識別模塊硬件結(jié)構(gòu)及程序架構(gòu)采用了分層及模組化設(shè)計,如圖3所示。

圖3中,傳感器驅(qū)動是指紋圖像傳感器的驅(qū)動,需要根據(jù)不同的傳感器編寫;指紋硬件加速驅(qū)動主要實現(xiàn)從指紋圖像生成模板及指紋特征模板匹配的功能;指紋認(rèn)證引擎提供了指紋認(rèn)證的方案,實現(xiàn)指紋的注冊、認(rèn)證和刪除等功能。具體實現(xiàn)功能包括:

1)初始化必要的硬件設(shè)備、初始化指紋模塊驅(qū)動庫。

2)進入主狀態(tài)機循環(huán),如圖4所示。

3)響應(yīng)MSP430的控制信號,完成主狀態(tài)機循環(huán)的狀態(tài)切換。

4)輸出指示狀態(tài)及結(jié)果給MSP430。

2.2 顯示功能模塊

2.2.1 液晶基礎(chǔ)驅(qū)動程序

顯示功能的實現(xiàn)采用一塊128×64的點陣液晶屏(LCD)與MSP430F149通過6800總線連接。液晶的驅(qū)動及顯示控制采用分層設(shè)計思想,如圖5所示。

LCD基礎(chǔ)驅(qū)動程序由3個功能層組成,其中驅(qū)動層的任務(wù)在于根據(jù)實際的硬件連接對使用到的端口進行定義及配置,并負(fù)責(zé)MSP430F149與液晶模塊進行數(shù)據(jù)傳輸?shù)娜蝿?wù),包括初始化模塊、讀寫控制指令、寫數(shù)據(jù)、讀數(shù)據(jù)、LCD復(fù)位等子函數(shù)功能;功能函數(shù)層提供了供用戶應(yīng)用程序中調(diào)用的液晶顯示驅(qū)動的API接口函數(shù),如寫ASCII字符、寫漢字字符、刪除字符、畫特殊符號等功能函數(shù);應(yīng)用層可以根據(jù)具體的應(yīng)用環(huán)境調(diào)用API接口函數(shù)編寫相應(yīng)的用戶程序,如本系統(tǒng)的人機交互多級菜單界面就在該層中編寫。

2.2.2 人機交互多級菜單界面

人機交互設(shè)計的重點在于界面的多級顯示、滾屏、光標(biāo)的管理以及參數(shù)的交互設(shè)置及保存等,這些功能主要通過3個控制按鍵(向上、向下、確定)來實現(xiàn)。

滾屏功能的實現(xiàn)采用了一種“序標(biāo)設(shè)計法”,設(shè)置了3 個序號標(biāo)志量 First_Index,Active_Index,Temp_Index,其中First_Index指示當(dāng)前處在顯示屏中最前面的菜單項序號,Active_Index指示當(dāng)前指向的菜單項,即當(dāng)前活動的菜單項序號,Temp_Index是一個中間變量,作用在于當(dāng)菜單項過多,超出一屏能顯示的范圍時,能滾動顯示多出菜單項。

多級菜單的實現(xiàn)采用了一種層標(biāo)設(shè)計法,設(shè)置了層標(biāo)志量Floor,初始值為0,根據(jù)菜單的級數(shù)加1或減1,再結(jié)合Active_Index標(biāo)志量便可以準(zhǔn)確進入相應(yīng)的子菜單項,從而能夠?qū)崿F(xiàn)多級顯示。

參數(shù)的交互設(shè)置及保存方法是系統(tǒng)在內(nèi)存中的特定區(qū)域開辟了一塊緩沖區(qū),用來存放參量數(shù)據(jù)。當(dāng)更改參量值時,LCD從此緩沖區(qū)讀取數(shù)據(jù)到LCD的顯示RAM中,同時MCU將參量值保存到存儲系統(tǒng)E2PROM對應(yīng)的地址中去;當(dāng)需要顯示參量值時,MCU將E2PROM中的數(shù)據(jù)讀出到緩沖區(qū)中,再被LCD讀取并顯示出來。

2.2.3 小結(jié)

基于分層設(shè)計思想的液晶基礎(chǔ)驅(qū)動架構(gòu)只須更改底層驅(qū)動的配置文件,功能函數(shù)層和應(yīng)用層不用任何改動,就可以移植到不同的LCD上;基于序標(biāo)和層標(biāo)設(shè)計法的多級菜單可以輕松擴展到任意級,便可滿足不同實際應(yīng)用系統(tǒng)的使用。

2.3 鍵盤輸入模塊

為滿足不同應(yīng)用場合的需求及系統(tǒng)擴展的要求,鍵盤輸入系統(tǒng)要求能輸入阿拉伯?dāng)?shù)字、26個英文字母及簡單符號等功能,為節(jié)省按鍵數(shù)量,系統(tǒng)模擬手機鍵盤的輸入方式,采用數(shù)字和字母復(fù)合輸入,如圖6所示,右下角的“*”號鍵為輸入法切換鍵,可以切換數(shù)字或字母輸入方式。

數(shù)字輸入方式下每個按鍵代表一個數(shù)字。字母輸入方式下,每個按鍵代表3~4個字母,需要切換顯示,具體的功能分析如下:

1)首次按下按鍵,顯示該按鍵對應(yīng)的第1個字母。

2)在一定時間內(nèi)連續(xù)第2次按下按鍵,切換成該按鍵對應(yīng)的第2個字母。

3)在一定時間內(nèi)連續(xù)第3次按下按鍵,切換成該按鍵對應(yīng)的第3個字母,直到該按鍵對應(yīng)字母全部切換完,然后從頭開始。

4)超出一定的時間間隔再按下相同按鍵,則保持當(dāng)前字母顯示,光標(biāo)切換到下一個位置開始新一個字母顯示。

圖6 復(fù)合鍵盤結(jié)構(gòu)

5)2次分別按下不同按鍵,則保持第1次按鍵字母顯示,光標(biāo)切換到下一個位置,開始第2次按鍵所代表字母的顯示。

6)長按功能,當(dāng)一個按鍵按住不放超過一定時間則顯示該按鍵對應(yīng)的數(shù)字。

通過分析按鍵按下所產(chǎn)生的電平圖如圖7所示,設(shè)置相應(yīng)的標(biāo)志量及定時器可以實現(xiàn)上述功能。完成一次按鍵操作的電平變化是由高到低,再由低到高,可設(shè)置標(biāo)志量KEYEVENT標(biāo)志此事件,完成上述的第1項功能;在按鍵按下的瞬間,電平由高變低,此時啟動定時器TIM?ER0,并設(shè)置標(biāo)志量Key_Down記錄此事件,定時器TIM?ER0每隔20 ms監(jiān)測一次按鍵值。若超過1 s(TIMER?OUT0)按鍵還處于按下狀態(tài),則判斷按鍵為“長按”,完成上述的第6項功能;若1 s的時間內(nèi)按鍵抬起,則此時停止定時器TIMER0,開啟定時器TIMER1,等待下一次按鍵的按下。若超過0.75 s(TIMEROUT1)無按鍵按下,則按上述第4項功能實現(xiàn)輸入及顯示;若在0.75 s內(nèi)監(jiān)測到有第2次按鍵按下,若2次按鍵值不同,則按上述第5項功能實現(xiàn)輸入及顯示,若2次按鍵值相同,則按上述第2、第3項功能實現(xiàn)輸入及顯示。至此完成按鍵字母輸入方式的全部功能,且TIMEROUT0和TIMEROUT1值可以根據(jù)具體應(yīng)用情況具體設(shè)置,滿足實際應(yīng)用情況,實驗測試該方法實現(xiàn)的按鍵輸入穩(wěn)定準(zhǔn)確,符合多數(shù)用戶的使用習(xí)慣。

圖7 按鍵電平分析圖

3 系統(tǒng)實例應(yīng)用及測試總結(jié)

采用分層及分模塊設(shè)計的程序結(jié)構(gòu)使得本系統(tǒng)方便針對不同應(yīng)用環(huán)境擴展相應(yīng)功能,在實例中,寫入指紋門鎖控制程序,執(zhí)行機構(gòu)配備為微型減速直流電機,即可模擬指紋門鎖的工作狀況,并可進行相應(yīng)的功耗測試。

在用戶注冊的過程中,在不開啟液晶屏背光的情況下,根據(jù)耗電量的不同,將注冊過程分成系統(tǒng)休眠環(huán)節(jié)、啟動等待注冊環(huán)節(jié)、采集指紋環(huán)節(jié)和注冊成功環(huán)節(jié),分別用HI,WI,CI,SI代表各環(huán)節(jié)的電流值,測試數(shù)據(jù)如表1所示。

在用戶驗證過程中,在不開啟液晶屏背光的情況下,根據(jù)耗電量的不同,將驗證環(huán)節(jié)分成系統(tǒng)休眠環(huán)節(jié)、啟動等待驗證環(huán)節(jié)、采集指紋環(huán)節(jié)、驗證成功電機轉(zhuǎn)動環(huán)節(jié),分別用HI2,WI2,CI2,SI2代表各環(huán)節(jié)的電流值,測試數(shù)據(jù)如表2所示。

表1 用戶注冊各環(huán)節(jié)電流值

表2 用戶驗證各環(huán)節(jié)電流值

在上述過程中若開啟液晶屏背光,則電流值會增加55~60 mA。

在不開啟液晶背光的情況下,以每次開鎖耗時6 s,每天開鎖6次計算,該指紋識別門鎖系統(tǒng)一天的耗電量約為1.669 mA·h。用普通5號干電池供電,1節(jié)電量以1 500 mA·h計算,1節(jié)干電池可支持指紋系統(tǒng)運行898天,近兩年半的時間。

若開鎖時開啟液晶背光,還是以每次開鎖耗時6 s,每天開鎖6次計算,該指紋識別門鎖系統(tǒng)一天的耗電量約為2.244 mA·h。用普通5號干電池供電,1節(jié)電量以1 500 mA·h計算,1節(jié)干電池可支持指紋系統(tǒng)運行668天,近22個月的時間。

從實驗結(jié)果可以看出,雙控制核心的系統(tǒng)架構(gòu)極大降低了系統(tǒng)在待機狀態(tài)下的電流消耗,同時在指紋采集、處理和識別的過程中,減少了ML67Q5250對外設(shè)的控制,而將控制功能轉(zhuǎn)移到功耗更低的MSP430中,使得指紋認(rèn)證處理的電流消耗進一步降低,從而極大延長了電池供電指紋識別系統(tǒng)的使用時間。

[1]KUCHEN M.Models for fingerprint pattern formation[J].Forensic Science International,2007(171):85-96.

[2]林喜榮,潘鵬,于政濤,等.一種基于DSP技術(shù)的指紋鑒別系統(tǒng)的實驗研究[EB/OL].[2010-01-15].http://cacp.ilib.cn/p-h044085~263549~1.html.

[3]祝軍生.基于ARM的自動指紋識別系統(tǒng)的設(shè)計[J].電子設(shè)計應(yīng)用,2008(10):81-84.

[4]王新升,林喜榮,戴曉清,等.新型指紋識別芯片的原理及應(yīng)用[J].電視技術(shù),2009,33(S2):217-219.

[5]費文坤,陶維青.基于MSP430F149單片機的人機界面設(shè)計[J].微計算機信息,2009,25(1-2):116-118.

[6]沈建華,楊艷琴.MSP430系列超低功耗單片機原理與系統(tǒng)設(shè)計[M].北京:北京航空航天大學(xué)出版社,2008.

猜你喜歡
指紋識別低功耗按鍵
一種高速低功耗比較器設(shè)計
基于有限狀態(tài)機的按鍵檢測程序設(shè)計
基于單片機指紋識別電子寄存柜設(shè)計
一種用于6LoWPAN的低功耗路由協(xié)議
指紋識別技術(shù)綜述
一種多方向?qū)Ч獍存I結(jié)構(gòu)設(shè)計
基于大容量指紋識別的實時身份認(rèn)證系統(tǒng)
基于線陣CCD的指紋識別實驗
ADI推出三款超低功耗多通道ADC
IDT針對下一代無線通信推出低功耗IQ調(diào)制器