隨著(zhù)計算機技術(shù)的進(jìn)步,圖像處理與模式識別方法的發(fā)展,指紋處理技術(shù)日臻成熟,在眾多領(lǐng)域得到了廣泛的應用。而指紋采集是指紋處理的第一步,本文介紹了一種基于MC68HC908JB8的便攜式USB指紋采集方案,該方案能方便靈活的采集高質(zhì)量的指紋圖像,文中具體討論了系統硬件以及相關(guān)驅動(dòng)和應用程序的設計。 指紋是指人類(lèi)手指上出現的條狀紋路,他們的形成依賴(lài)于胚胎發(fā)育時(shí)的環(huán)境和遺傳。世界上幾乎沒(méi)有兩個(gè)完全相同的指紋。由于指紋具有穩定性、唯一性以及易于采集的特性,一直以來(lái)被認為是最可靠的利用生物特征進(jìn)行身份鑒定的依據之一。 隨著(zhù)計算機技術(shù)的進(jìn)步,圖像處理與模式識別方法的發(fā)展,指紋處理技術(shù)日臻成熟,經(jīng)歷了人工處理,半自動(dòng)化處理和自動(dòng)化處理等三個(gè)發(fā)展階段。美國于1963年首先開(kāi)展關(guān)于指紋識別軟件的研究,隨后日本(1975)也開(kāi)始這方面的工作,我國開(kāi)展得較慢(約于1981年開(kāi)始)。1975年美國推出第一個(gè)商用系統Printrak250,而日本的NECAFIS于1982年才投入使用。近年來(lái),國內也相繼推出了自己的指紋識別系統。 作為指紋處理的第一步的指紋取像技術(shù)也日益成熟,這使采集到的指紋數據更真實(shí),圖像更清晰,處理結果也就越加可靠,鑒定結果的可信度也越強。目前有利用光學(xué)全反射技術(shù)、硅晶體電容傳感技術(shù)、超聲波掃描技術(shù)等獲得指紋圖像的方法。 而且隨著(zhù)現代社會(huì )的發(fā)展,安全性成為許多系統首要考慮的問(wèn)題,指紋因其不可復制、不可替代的特性成為鑒定身份的可靠手段。近年來(lái)有關(guān)指紋自動(dòng)識別及認證研究已成為模式識別、圖像處理及計算機視覺(jué)領(lǐng)域的熱點(diǎn),指紋識別已廣泛的應用于銀行、保險、公安、門(mén)禁、考勤等方面。 本文介紹了一種基于MC68HC908JB8的便攜式USB指紋采集方案,實(shí)驗表明,這種方案充分利用了USB支持即插即用,有較強的糾錯能力,能總線(xiàn)供電等優(yōu)點(diǎn),簡(jiǎn)化了設計,降低了成本,實(shí)現了靈活可靠的指紋圖像傳輸,有很好的應用前景。 USB是Universal Serial Bus的縮寫(xiě),這是近幾年逐步在PC領(lǐng)域廣為應用的新型串行接口技術(shù)。相對于并口,串口等傳統的計算機接口方式,USB有很多明顯的優(yōu)點(diǎn)。它支持即插即用(plug and play),有較強的糾錯能力,能總線(xiàn)供電,低成本,具有強大的外設連接能力。因而選用USB接口來(lái)傳送采集的指紋圖像,能更方便靈活地和計算機通信,有著(zhù)良好的應用前景。 一、設計概述 設計的目的是實(shí)現一個(gè)使用USB接口與主機通信的高性能指紋采集儀。指紋芯片選用了Veridicom公司的硅晶體電容傳感器FPS110,主控芯片選用Motorola公司集成USB模塊的單片機MC68HC908JB8;竟ぷ髂J饺鐖D1所示,MC68HC908JB8控制FPS110采集指紋,然后通過(guò)MC68HC908JB8片上集成的USB模塊將數據送給計算機進(jìn)行存儲和后期處理。 主機軟件設計主要分為USB驅動(dòng)和演示界面兩個(gè)部分:采用Jungo公司的Windriver軟件開(kāi)發(fā)WINDOWS平臺的USB驅動(dòng)程序;采用Microsoft公司VC6.0軟件開(kāi)發(fā)演示平臺和一些簡(jiǎn)單的指紋處理程序。 二、系統硬件設計 1.主要芯片特性 1) 集成USB模塊的指紋采集儀主控芯片MC68HC908JB8 MC68HC908JB8是Motorola公司MC68HC08系列的一款高性?xún)r(jià)比單片機,芯片有256字節的片內RAM,8K字節片內FLASH,除傳統的定時(shí)器、鍵盤(pán)中斷、串行口、等I/O設備外,其主要特點(diǎn)是集成了通訊速率為1.5MB的低速USB模塊。 2) 指紋采集芯片FPS110 FPS110是Veridicom公司的硅晶體電容傳感器,該傳感器采用先進(jìn)的半導體CMOS工藝,面積只有郵票般大小,具有高靈敏度、高可靠性、高分辨率(500DPI)、低功耗、低價(jià)位等許多優(yōu)點(diǎn),特別適用于商業(yè)及戶(hù)外指紋應用系統。 2.指紋采集儀系統硬件設計 指紋采集儀基本原理如圖2所示,主要包含電源設計,單片機應用設計,指紋芯片應用設計。 1) 供電設計 MC68HC908JB8和FPS110都可以支持5V供電,而且MC68HC908JB8還可提供USB接口所需的3.3V參考電壓,所以整板只采用外接5V電源。設計中為了方便調試,提供了三套可選5V電源輸入,分別是USB供電,仿真器接口供電,和單獨電源供電。 2) 時(shí)鐘設計 MC68HC908JB8和FPS110分別供給時(shí)鐘,MC68HC908JB8采用6M晶體接OSC1和OSC2間,FPS110采用12M晶體接X(jué)TAL1和XTAL2之間。 3) FPS110和MC68HC908JB8接口設計 MC68HC908JB8有五組通用接口PTA,PTB,PTC,PTD,PTE.。設計中選用PTB口和PTC口于FPS110連接,PTB口用于數據通信,PTC口用于控制。具體連接如圖3所示 4) USB接口設計 MC68HC908JB8片上集成的是1.5MB的低速USB模塊。根據USB協(xié)議,需要在D-上加一個(gè)1.5k的上拉電阻到3.3伏,連接如圖4所示。 三、系統軟件設計 系統軟件設計分為四個(gè)部分,分別是MC68HC908JB8上的USB固件設計,指紋采集程序設計,計算機上的USB驅動(dòng)設計和演示程序設計。 1.MC68HC908JB8上的USB固件設計 單片機的開(kāi)發(fā)環(huán)境選用Metrowerks的CodeWarriorstudio集成開(kāi)發(fā)軟件,在線(xiàn)仿真和編程工具選用了P&EMicrocomputerSystems公司的MON08MULTILINK。 MC68HC908JB8片上集成了遵循USB1.1規范的低速USB模塊,該模塊有三個(gè)端點(diǎn),端點(diǎn)0支持控制收發(fā)傳輸,端點(diǎn)1支持中斷數據發(fā)送傳輸,端點(diǎn)2支持中斷數據接收傳輸。對應的有USB控制積存器,USB中斷寄存器,USB數據寄存器,USB狀態(tài)寄存器。為了實(shí)現MC68HC908JB8和計算機之間的USB正常通信,必須在MC68HC908JB8中設計USB固件。如圖5所示,USB固件主要包含控制傳輸和USB標準請求命令的處理,端點(diǎn)數據讀寫(xiě)處理,其他中斷處理。 2.指紋采集程序設計 MC68HC908JB8使用通用接口PTB和PTC與FPS110連接,通過(guò)控制FPS110片內的行寄存器和列寄存器就能很方便的完成整幅指紋或部分指紋的采集,指紋采集的基本流程如圖6所示。 3.WINDOWS平臺下的USB驅動(dòng)程序設計 Windriver是美國Jungo公司出品的用于編寫(xiě)硬件驅動(dòng)程序的一種工具軟件,主要用于ISA插卡、PCI插卡和USB的驅動(dòng)程序開(kāi)發(fā)。使用Windriver開(kāi)發(fā)驅動(dòng)程序的優(yōu)點(diǎn)主要在于不需要了解太多的操作系統和驅動(dòng)程序方面的知識,而且Windriver帶有功能強大的向導DriverWizard,能幫助開(kāi)發(fā)者進(jìn)行硬件診斷和自動(dòng)生成代碼。所以采用Windriver能讓電子工程師在短時(shí)間內針對自制硬件開(kāi)發(fā)出易用、兼容性好的驅動(dòng)程序采用Windriver來(lái)設計USB驅動(dòng)程序,如圖7所示,實(shí)際上只是在用戶(hù)模式下調用了用了Windriver通用驅動(dòng)程序提供的API函數,并不用編寫(xiě)WDM驅動(dòng)程序。 基本調用過(guò)程:程序運行時(shí)先調用WDU_INI函數初始化各種變量,等待回調函數結果;如果回調成功,則調用WDU_TRANSFER等函數完成收發(fā)數據;而程序運行結束時(shí)調用WDU_UNINIT釋放變量,句柄等獲得資源。 4.WINDOWS平臺下演示程序設計 計算機上的演示程序主要包含計算機與MC68HC908JB8通信的簡(jiǎn)單控制,采集到指紋圖像的顯示,以及指紋圖像的一些如細化、二值化等的簡(jiǎn)單處理。采用的工具是VC6.0,圖8是一個(gè)演示界面的例子。 四、結束語(yǔ) 本文介紹了一種基于MC68HC908JB8的便攜式USB指紋采集方案,實(shí)驗表明,這種方案充分利用了USB支持即插即用,有較強的糾錯能力,能總線(xiàn)供電等優(yōu)點(diǎn),簡(jiǎn)化了設計,降低了成本,實(shí)現了靈活可靠的指紋圖像傳輸,有很好的應用前景。 |