基于TMS320VC5402的指紋識別系統(tǒng)設計_第1頁
基于TMS320VC5402的指紋識別系統(tǒng)設計_第2頁
基于TMS320VC5402的指紋識別系統(tǒng)設計_第3頁
基于TMS320VC5402的指紋識別系統(tǒng)設計_第4頁
基于TMS320VC5402的指紋識別系統(tǒng)設計_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、DSP課程設計報告書題目: 基于TMS320VC5402的指紋識別系統(tǒng)專 業(yè):電氣工程及其自動化班 級:學 號: 學生姓名:指導教師: 2010年 6月 25 日 信息工程學院課程設計任務書學 號學生姓名專業(yè)(班級)電氣工程及其自動化設計題目基于TMS320VC5402的指紋識別系統(tǒng)設計技術(shù)參數(shù)TMS320VC54021M的程序空間和64K的數(shù)據(jù)空間。內(nèi)部自帶的16K雙尋址RAM系統(tǒng)中所采集到的8bits灰度圖像大小為300×256設計要求理解TMS320VC54021芯片的結(jié)構(gòu)及其控制字,靈活運用芯片與外圍設備的接口,設計一個芯片使其實現(xiàn)DSP與PC機之間的數(shù)據(jù)傳輸,DSP與單片機

2、之間的數(shù)據(jù)傳輸問題,完成實時數(shù)據(jù)采集處理的同時還能進行各種控制,設計了一種基于DSP 和MCU的雙CPU數(shù)據(jù)采集處理系統(tǒng)。工作量字數(shù):10754頁數(shù):26工作計劃共四周(14-17周);參考資料M.西安:西安電子科技大學出版社,2002.J.應用科技,2009,36(2):38-40.3王金龍,任國春.DSP設計與實驗教程M.北京:機械出版社,2007.4許開宇,祝忠明,盧亞玲。數(shù)字信號處理M.北京:電子工業(yè)出版社,20055紀震,鐘春.DSP系統(tǒng)入門與實踐M。電子工業(yè)為出版社,2006.指導教師簽字 2010 年 6 月25日 學生姓名:學號:專業(yè)(班級): 電氣工程及其自動化課程設計題目:

3、基于TMS320VC5402的指紋識別系統(tǒng)指導教師評語:成績:指導教師:年 月 日信息工程學院課程設計成績評定表摘 要數(shù)字信號處理器(DSP)是指以數(shù)值計算的方法對數(shù)字信號進行處理的芯片。它具有處理速度快、靈活、精確、抗干擾能力強、體積小、使用方便等優(yōu)點。DSP應用于指紋識別已經(jīng)成為一個新的科技領域和獨立的學科體系,當前已形成了有潛力的產(chǎn)業(yè)和市場。本文選定100MHz DSP TMS320VC5402作為指紋信號的處理器,利用其流水線編碼的操作特點,并結(jié)合指紋識別技術(shù),實現(xiàn)基于DSP CCS2.2的指紋識別預處理系統(tǒng)。CCS 2.2(Code Composer Studio)是一種針對標準TM

4、S320調(diào)試接口的集成開發(fā)環(huán)境(IDE),由TI公司于1999年推出。 指紋識別作為生物特征識別的一種,有其不可比擬的優(yōu)點。由于可以隨身攜帶這種特殊的“印章”,所以受到越來越多人的重視。本系統(tǒng)使用TI的TMS320VC5402(以下簡稱5402)作為核心。DSP與單片機相比,多用于算法比較復雜,乘加運算量比較大的場合。該芯片為一款定點的DSP,它具有高達100MIPS的運算能力,同時具有優(yōu)化的CPU結(jié)構(gòu)和一系列的智能外設。下面著重討論基于該芯片的系統(tǒng)設計。關鍵詞:DSP指紋識別TMS320VC540AbstractDigital signal processor (DSP) refers to

5、 the method of numerical calculation of digital signal processing chip.It has high processing speed and flexibility, accuracy, strong anti-jamming capability, small volume, convenient, etc. DSP applied to the fingerprint identification technology has become a new and independent discipline system ha

6、s been formed, and the potential of the market and industry. This 100MHz selected TMS320VC5402 DSP as the signal processor, using the fingerprint of the assembly code, combining the characteristics of operation fingerprint identification technology, realizing the fingerprint identification based on

7、DSP CCS2.2 pretreatment system. CCS 2.2 (Code Composer Studio) is a standard interface for TMS320 debugging integrated development environment (IDE), by TI company in 1999. The fingerprint identified as biometrics, its incomparable advantages. Due to the special can carry the "stamp", more

8、 and more people's attention. This system USES the TMS320VC5402 TI (hereinafter referred to as the core 5402). DSP microcontroller, compared with the algorithm is more complex, used by calculation and comparison of the big occasion. This chip is a fixed-point DSP, it has 100MIPS up the operation

9、 ability, also has the optimization of the structure and a series of intelligence CPU peripherals. Based on the chip below emphatically discussed the system design.Keywords: DSP TMS320VC5402 fingerprint identification目 錄1 任務提出與方案論證6指紋識別系統(tǒng)的架構(gòu)6系統(tǒng)各部分設計要點62 總體設計7存儲空間軟硬件設計7存儲空間軟硬件設計92.3總線控制和驅(qū)動1010113 詳細設

10、計12硬件設計12軟件設計19222323244 總結(jié)25參考文獻261 任務提出與方案論證隨著計算機與信息技術(shù)的不斷發(fā)展,生物識別技術(shù)的應用越來越加廣泛. 在各種生物識別技術(shù)中,指紋識別是目前生物檢測學中研究最深入、應用最廣泛、發(fā)展最成熟的、最有前景的一種識別技術(shù),它通過分析指紋的局部特征,從中抽取詳盡的特征點,從而可靠地確認個人身份。 指紋識別的優(yōu)點是指紋作為人體獨一無二的特征,它的復雜度可以提供用于鑒別的足夠特征,具有極高的安全性、實用性、可行性,是一種比較理想的身份認證技術(shù)。指紋識別技術(shù)是以數(shù)字圖像處理技術(shù)為基礎,而逐步發(fā)展起來的。相對于密碼、各種證件等傳統(tǒng)身份認證技術(shù)和諸如語音、虹膜

11、等其它生物認證技術(shù)而言,指紋識別是一種更為理想的身份認證技術(shù)。使用指紋識別具有許多優(yōu)點,例如:每個人的指紋都不相同,極難進行復制或被盜用;指紋比較固定,不會隨著年齡的增長或健康程度的變化而變化;最重要的在于指紋圖像便于獲取,易于開發(fā)識別系統(tǒng),具有很高的實用性和可行性。1.1 指紋識別系統(tǒng)的架構(gòu)本課題設計了一個嵌入式系統(tǒng),通過DSP來完成指紋圖像的采集和指紋識別的算法。另外為使系統(tǒng)有更廣闊的應用領域,在設計上還采用異步串行通訊方式實現(xiàn)了DSP和PC之間的數(shù)據(jù)交互。據(jù)此,系統(tǒng)由指紋傳感芯片、復雜可編程邏輯器件、閃爍存儲器和UART等硬件組成。1.2 系統(tǒng)各部分設計要點TMS320VC5402具有很

12、高的性價比,可以訪問1M的程序空間和64K的數(shù)據(jù)空間。內(nèi)部自帶的16K 雙尋址RAM,可以在一個指令周期內(nèi)完成兩次讀操作或一次讀和一次寫操作。鎖相環(huán)電路則可提供高達100MHz的工作頻率,從而使VC5402完全有能力在較短的時間內(nèi)完成指紋的識別操作。由于指紋圖像具有數(shù)據(jù)量大特點,因此程序的設計不可避免的需要較大的存儲空間。系統(tǒng)中所采集到的8bits灰度圖像大小為300×256,則存儲一幅圖像就需要75K的空間,而VC5402可尋址的數(shù)據(jù)空間范圍總共才有64K。為此,可以參照VC5402空間分配結(jié)構(gòu)圖,通過程序空間頁擴展功能來解決圖像的存儲和運算問題,運用RPT、READA和WRITA

13、指令完成圖像數(shù)據(jù)在程序空間和數(shù)據(jù)空間的搬移操作。2 總體設計指紋系統(tǒng)總體設計方案如圖1所示。該系統(tǒng)是由指紋采集儀、FPGA、SRAM和Flash等硬件組成。RS232用于數(shù)據(jù)傳輸,PC機可以通過該接口得到指紋特征數(shù)據(jù);Flash存儲指紋信息庫、LCD用字符和DSP程序;FPGA在DSP控制下從取指器中取出圖放入SRAM中;小鍵盤用于用戶輸入ID號碼,增強該系統(tǒng)安全等級。存儲空間軟硬件設計本系統(tǒng)要訪問存儲器有三個:提示請看下圖:DSP內(nèi)部DARAM(16K字,用于存放常量和變量數(shù)據(jù)空間)、SRAM和Flash。因為5402有20根地址線可以用來對程序空間尋址,所以有1M字節(jié)尋址空間,利用高地址線

14、A19來區(qū)分Flash和SRAM。其中SRAM是BootLoader后程序運行空間,這樣就把Flash放在高地址上去了。5402數(shù)據(jù)尋址空間僅為64K,所以要進行分頁擴展。為了避免和DARAM訪問沖突,不能使用64K一頁。因為64K中低地址16K實際上不能訪問,它優(yōu)先被64K中低地址16K實現(xiàn)上不能訪問,它無被DARAM訪問,所以定為32K一數(shù)據(jù)頁。分配一個I/O地址,而后通過I/O地址譯碼對74LS273進行使能控制,最后鎖存I/O數(shù)據(jù)作數(shù)據(jù)頁。當對數(shù)據(jù)空間進行訪問時,應分為以下幾步:解析該地址,進行分割。前(低)15位為頁內(nèi)地址,后(高)6位為頁地址。判斷頁地址是否為0。如果為0,則說明訪

15、問DARAM,直接使用訪問數(shù)據(jù)指令;需要16位地址就是前15位地址、高位補零,并結(jié)束。把頁地址用PORTW命令送到寄存器(所分配I/O空間地址)里,頁地址也就在SRAM高地址線上了。再使用訪問數(shù)據(jù)指令,需要16位地址就是前15位地址、高位補零。對存儲器管理,需要編寫一定量程序??梢栽O置一個全局變量存儲頁地址。由于擴展頁僅為32K,大于32K數(shù)組是開辟不出來,所以使用鏈表。需要注意是釋放空間時,把相鄰未使用空間盡量連接成一大塊,同時需要一個接一個地把用過堆??截惖蕉芽臻g尾部,使自己空間聚合成一個大塊。外部程序擴展和數(shù)據(jù)空間擴展示意圖分別如下2圖所示:2.2 RS232通信接口軟硬件設計該系統(tǒng)使用

16、MAX3110E連接DSP與PC機,通過軟件控制分頻比可獲得通用300baud230kbaud波特率。MAX3110E內(nèi)部UART與RS232收發(fā)器能夠獨立工作。McBSP時鐘停止模式可以兼容SPI主-從協(xié)議。所謂McBSP時鐘停止模式是指其時鐘會在每次數(shù)據(jù)傳輸結(jié)束時停止,并在下次數(shù)據(jù)傳輸開始時立即啟動或延半個周期再啟動。其接收器和發(fā)送器是同步,即CLKX和FSX分別與CLKR和FSR相連;在傳輸過程中,CLKX和FSX又分別用做SPI移位時鐘SCK和從方使能SS,可以是輸出(主方),也可以輸入(從方)。其McBSP初始化編程應遵守以下幾個步驟: 將SPCR中XRST、RRST置為0,處于復位

17、狀態(tài)。McBSP保持復位狀態(tài)下,設置有關寄存器為需要值。由于SPI協(xié)議要求McBSP在移位輸出數(shù)據(jù)之前,F(xiàn)SX信號必須由DXR->XSR產(chǎn)生FSX,所以XCR寄存器中XDATALY位必須設置為1。設置SPCR->GRST為1,采樣率發(fā)生器退出復位狀態(tài),開始工作。等待兩個時鐘周期,以確保McBSP在初始化過程中內(nèi)部能夠正確地同步。而后,配置MAX3110E波特率和發(fā)送波形,發(fā)送數(shù)據(jù)時根據(jù)MAX3110E數(shù)據(jù)手冊拼裝成一個16位字進行發(fā)送。接收通過DSPInt0中斷進行處理。提示請看下圖:總線控制和驅(qū)動本系統(tǒng)中總線有兩種:數(shù)據(jù)總線和地址總線。數(shù)據(jù)總線進行數(shù)據(jù)交換,地址總線進行尋址。因為

18、DSP數(shù)據(jù)總線是高電平邏輯值,可能出現(xiàn)不能驅(qū)動外部5V邏輯電平情況;而且連接在動能力不足。因此,需要對總線,特別是數(shù)據(jù)總線進行加強驅(qū)動能力設計。其中數(shù)據(jù)總線使用SN74LVTH16245來進行驅(qū)動向驅(qū)動;地址總線是單向,沒有方向控制,也沒有使能控制,使用SN74LVTH16244單向驅(qū)動器就可以了。對于數(shù)據(jù)總線控制,按照所邏輯合理使用了DSP_MSTRB。DSP_IOSTRB、R/W就可以完成了。2.4 鍵盤與LCD接口硬件設計鍵盤和LCD都是I/O器件,分配兩個I/O空間地址,通過對地址譯碼產(chǎn)生使能控制LCD和鍵盤。鍵盤上有12個按鍵,用10k電阻拉高,同時使用與邏輯連接這12根線,輸出邏輯

19、電平接DSP中斷Int2,在中斷服務程序中使用PORTR命令讀入鍵值。LCD用于顯示界面信息。本系統(tǒng)使用LC1611字符點陣模塊。2.5 指紋圖像獲取采用Altera公司Maxplus II軟件進行VHDL語言編程。按照一定時序,把指紋圖像放大SRAM固定地址中,這一部分調(diào)試有些麻煩,可以放在最后做,而圖像獲取可使用下file->data->load把圖像文件放入指定內(nèi)存區(qū)域。此圖像文件為CCS數(shù)據(jù)文件,可以編寫一段C程序把BMP文件轉(zhuǎn)換成CCS文件。另一種比較方便方法是用DSP編寫一個小程序,使用fopen()、fread()等函數(shù)把圖像讀入內(nèi)存,然后使用file->dat

20、a->save保存成CCS文件。3 詳細設計3.1 硬件設計系統(tǒng)的核心處理單元是TI 公司推出的高性能數(shù)字信號處理器TMS320VC5402 , 該芯片具有精度高、靈活性大、可靠性高、時分復用等特點。其采用程序空間與數(shù)據(jù)空間完全獨立的哈佛總線結(jié)構(gòu), 指令的執(zhí)行采用流水線結(jié)構(gòu), 內(nèi)部有一到多個處理內(nèi)核, 帶有片上硬件乘法器, 指令執(zhí)行速度最快為幾十納秒, 處理能力為100 MIPS。片內(nèi)有8 條總線、片上存儲器和片上外圍電路等硬件, 并且有高度專業(yè)化的指令系統(tǒng)3 。TMS320VC5402 片外直接數(shù)據(jù)尋址空間為64 kB , 程序空間尋址能力可達1 MB , 但是通過程序空間來擴展數(shù)據(jù)空

21、間將影響系統(tǒng)處理速度。但是MTS320VC5402 在實際使用過程中,程序和數(shù)據(jù)的一次連續(xù)處理一般都不會超過64 kB , 所以把核心的程序常駐TMS320VC5402 內(nèi)16 kB 空間, 一般控制在12 kB , 再留78 kB 的空間調(diào)用所需的程序, 程序在片內(nèi)的執(zhí)行速度要比片外的快許多, 通過來回到程序, 就能實現(xiàn)程序的全速運行。數(shù)據(jù)空間可以通過CPLD 片選來進行擴展。由于DSP 外部最多支持擴展32 k 數(shù)據(jù)空間, 但是我們實際擴展了64 k 的SRAM , 因此SRAM 的A15 地址線由DSP 通過CPLD 中的邏輯電路來控制, 由此來選擇使用SRAM 的高地址段32 k 存儲

22、空間或者地址段32 k 存儲空間, 這樣既符合DSP 的外擴空間要求, 又使系統(tǒng)增加了更多的數(shù)據(jù)存儲空間。CPLD 是由一種被IEEE 認定的標準硬件描述語言VHDL(V HDL 主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口)實現(xiàn)的4 。在系統(tǒng)終端我們選用LCM 液晶顯示模塊, 直接顯示需要的指紋圖像和數(shù)據(jù)結(jié)果。要顯示的圖像或數(shù)據(jù)首先由DSP 存入緩沖器, 再由LCM 讀取, 這樣可以避免了由于DSP和LCM 讀寫速度不匹配而發(fā)生錯誤。本系統(tǒng)的硬件平臺由圖像采集、圖像處理、數(shù)據(jù)存儲、圖像顯示和電源部分五個部分組成。其結(jié)構(gòu)框圖如圖1所示:TMSC5401結(jié)構(gòu)圖:總系統(tǒng)電路部件圖:復位電路圖:系統(tǒng)

23、連接圖:電源部分 電源部分在系統(tǒng)的硬件部分中占有重要的地位,它將影響到整機能否可靠運轉(zhuǎn)。其中,要著重考慮以下兩點:第一、要有一套保證DSP芯片內(nèi)核和I/O能同時上電的解決方案,這樣避免對芯片造成損害。本系統(tǒng)采用D型邊沿觸發(fā)器來開關電源輸出,很好的解決了這個問題;第二、在高速電路板中,開關的電磁輻射和線路噪音會干擾器件的實際工作電壓,而DSP芯片一般要求工作電壓偏差不超過5%,否則,長時間工作在非正常電壓容易縮短芯片壽命甚至于燒毀。因此,本系統(tǒng)中特別設計了電壓監(jiān)控電路來實時監(jiān)控電壓。根據(jù)本系統(tǒng)特點,采用了TI公司的TPS73HD3181芯片。電源部分結(jié)構(gòu)圖:3.1.2 圖像采集電路及流程圖像采集

24、電路是整個系統(tǒng)中極其重要的部分, 高質(zhì)量指紋圖像的采集大大的降低了鑒定指紋時的誤識率和拒識率, 提高整個系統(tǒng)的性能。系統(tǒng)采用的是美國Veridicom 公司的FPS200 固態(tài)指紋傳感器作為圖像采集電路的核心器件。該芯片適用于更復雜的指紋和更惡劣的氣候條件。它采用標準CMOS 工藝制造, 獲取圖像為256 ×300 像素, 分辨率500dpi 。提供三種接口方式:標準8 位微處理器總線、集成高速USB 接口、串行外設接口SPI5 。圖像傳輸速度分別為30 幀/ s、13 幀/ s、10 幀/ s。FPS200 芯片由256 列和300 行電容陣列組成, 芯片內(nèi)設計有兩個采樣保持電路用

25、于指紋圖像的采集。通過測量每個傳感單元在每次充電后的電壓值和放電后的電壓值的差來獲得每個傳感單元的電容值。每次捕捉每行圖像后, 在該行內(nèi)的每個傳感單元內(nèi)就有待數(shù)字化的電容值。因此通過改變放電電流大小和放電時間就可以改變FPS200 的靈敏度。整個圖像采集流程圖如下圖所示:JTAG(Joint Test Action Group)聯(lián)合測試行動小組)是一種國際標準測試協(xié)議(IEEE 1149.1兼容),主要用于芯片內(nèi)部測試?,F(xiàn)在多數(shù)的高級器件都支持JTAG協(xié)議,如DSP、FPGA器件等。標準的JTAG接口是4線:TMS、 TCK、TDI、TDO,分別為模式選擇、時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出線。 JTA

26、G最初是用來對芯片進行測試的,基本原理是在器件內(nèi)部定義一個TAP(Test Access Port�測試訪問口)通過專用的JTAG測試工具對進行內(nèi)部節(jié)點進行測試。JTAG測試允許多個器件通過JTAG接口串聯(lián)在一起,形成一個JTAG鏈,能實現(xiàn)對各個器件分別測試?,F(xiàn)在,JTAG接口還常用于實現(xiàn)ISP(In-System rogrammable�在線編程),對FLASH等器件進行編程。 JTAG編程方式是在線編程,傳統(tǒng)生產(chǎn)流程中先對芯片進行預編程現(xiàn)再裝到板上因此而改變,簡化的流程為先固定器件到電路板上,再用JTAG編程,從而大大加快工程進度。JTAG接口可對PSD芯片內(nèi)部

27、的所有部件進行編程 JTAG的一些說明 通常所說的JTAG大致分兩類,一類用于測試芯片的電氣特性,檢測芯片是否有問題;一類用于Debug;一般支持JTAG的CPU內(nèi)都包含了這兩個模塊。 一個含有JTAG Debug接口模塊的CPU,只要時鐘正常,就可以通過JTAG接口訪問CPU的內(nèi)部寄存器和掛在CPU總線上的設備,如FLASH,RAM,SOC(比如4510B,44Box,AT91M系列)內(nèi)置模塊的寄存器,象UART,Timers,GPIO等等的寄存器。 上面說的只是JTAG接口所具備的能力,要使用這些功能,還需要軟件的配合,具體實現(xiàn)的功能則由具體的軟件決定。 例如下載程序到RAM功能。了解SO

28、C的都知道,要使用外接的RAM,需要參照SOC DataSheet的寄存器說明,設置RAM的基地址,總線寬度,訪問速度等等。有的SOC則還需要Remap,才能正常工作。運行Firmware時,這些設置由Firmware的初始化程序完成。但如果使用JTAG接口,相關的寄存器可能還處在上電值,甚至時錯誤值,RAM不能正常工作,所以下載必然要失敗。要正常使用,先要想辦法設置RAM。在ADW中,可以在Console窗口通過Let 命令設置,在AXD中可以在Console窗口通過Set命令設置。3.2 軟件設計系統(tǒng)上電時,TMS320VC5402 通過總線操作對FPS200 進行設置, 然后進入指紋圖像

29、采集階段。在該階段TMS320VC5402 處于空閑狀態(tài),CPLD 占用數(shù)據(jù)總線, 將數(shù)據(jù)直接存儲到圖像RAM 中。采集完一幀指紋圖像后由CPLD 通知DSP 進入數(shù)據(jù)處理階段。在該階段TMS320VC5402 先將圖像RAM 中的數(shù)據(jù)分塊送到用戶ROM 中, 然后對圖像進行預處理, 特征點提取等運算。最后通過USB 將結(jié)果輸出給上位機。上位機調(diào)出指紋數(shù)據(jù)庫,并將提取的結(jié)果與采集的指紋數(shù)據(jù)進行比對, 判斷采集的指紋是否與庫中指紋匹配, 最后給出結(jié)論。數(shù)字信號處理器(DSP)是指以數(shù)值計算的方法對數(shù)字信號進行處理的芯片。它具有處理速度快、靈活、精確、抗干擾能力強、體積小、使用方便等優(yōu)點。DSP應

30、用于指紋識別已經(jīng)成為一個新的科技領域和獨立的學科體系,當前已形成了有潛力的產(chǎn)業(yè)和市場。本文選定100MHz DSP TMS320VC5402作為指紋信號的處理器,利用其流水線編碼的操作特點,并結(jié)合指紋識別技術(shù),實現(xiàn)基于DSP CCS2.2的指紋識別預處理系統(tǒng)。CCS 2.2(Code Composer Studio)是一種針對標準TMS320調(diào)試接口的集成開發(fā)環(huán)境(IDE),由TI公司于1999年推出。指紋識別的處理流程如下圖所示:指紋處理過程可分為三個階段: (1) 獲取原始指紋圖像,進行預處理; (2) 提取指紋特征點; (3) 指紋識別分析判斷。 在上述三個階段中,指紋圖像的預處理階段尤

31、為重要,該階段對圖像處理的好壞直接關系到后面兩個階段工作的開展。本文結(jié)合TMS320VC5402的特點,重點研究指紋識別的預處理算法及其DSP實現(xiàn)問題,其中包括指紋的極值濾波、平滑濾波、拉普拉斯銳化、迭代二值化和該算法在DSP開發(fā)平臺CCS2.2的C5000上的仿真實現(xiàn)。這一問題的解決,可為未來指紋識別系統(tǒng)的脫機應用提供很有價值的參考。3.2.1 主程序流程軟件設計程序圖主流程就是要實現(xiàn)把各部分的程序連接成一個有機的整體,并能夠通過液晶顯示和小鍵盤響應實現(xiàn)和用戶的交互。所以,它的任務就是能夠響應小鍵盤,根據(jù)不同的鍵值執(zhí)行不同的操作,同時顯示不同的頁面。系統(tǒng)主流程上圖所示。3.2.2 鍵盤中斷程

32、序5402中與中斷有關的寄存器有三個:IFR、IMR、PMST。在DspInitial()函數(shù)中,首先要設置好這些寄存器,而后在中斷程序中讀入鍵值。為了防止誤觸發(fā),在中斷的一開始延時3ms。其核心代碼如下:ioport unsigned char port0000; volatile unsigned int* IMR=(volatile unsigned int *) 0x0000; volatile unsigned int* PMST=(volatile unsigned int *) 0x001D; main() DspInitial(); interrupt void isr_int

33、0() delay3ms(); KEY=port0000&0x0FFF; Switch(KEY) 3.3.3 BootLoader程序設計該系統(tǒng)為最小系統(tǒng),需要脫離開發(fā)系統(tǒng)運行,因此須進行BootLoader設計。在系統(tǒng)上電以后自動把程序和數(shù)據(jù)從外部存儲器Flash讀SRAM中,但問題是用戶程序超過了32K,所以必須采用以下特殊的BOOT方法。內(nèi)部BOOT。利用片內(nèi)的BOOT程序?qū)⒆约壕幹频腂OOT程序從Flash移至內(nèi)部的RAM中。用戶BOOT。內(nèi)部BOOT完成后,開始執(zhí)行自己的BOOT程序。利用DSP的擴展尋址方法,自已編制的BOOT編程中從Flash讀取代碼。用戶BOOT完成后,

34、跳至用戶程序開始運行。3.2.4 指紋識別核心算法程序系統(tǒng)使用的指紋算法主要分為五部分,其算法的可靠性已經(jīng)isual C 6。0進行了驗證,具體算法如下:背景分離。采用標準差閾值跟蹤法,圖像的指紋部分是由黑白相同的紋理組成的,灰度變化很大,具有較大的標準差;而背景部分灰度分布比較平坦,標準差小,因此計算以各點為中心的一組像素的標準差,當標準差大于某一門限時,就可以確定該點為前景,否則為背景。計算方向圖。采用基于法線向量的方法,其中還涉及到方向場的平滑。方向濾波。設計一個水平模板,然后將水平模板旋轉(zhuǎn)到需增強的方向進行濾波。奇異點檢測。區(qū)分出奇異點,如核形(core)、三角(elta)、渦輪形(w

35、horl)。特征點提取。采用脊跟蹤法,其基本思想是直接對圖像進行脊線跟蹤,在跟蹤過程中檢測特征點。以上便是所采用指紋算法的核心思想。在DSP編程中把它分成五個任務模塊,每一個模塊都必須注意頁面寄存器的值,如果程序僅在SRAM中運行會浪費大量的時鐘,所以把部分程序和數(shù)據(jù)放入DSP的內(nèi)部。根據(jù)自己編程的體會,程序和數(shù)據(jù)的一次連續(xù)處理不會超過64K,所以可以把核心的程序常駐5402內(nèi)1K的空間,再留有78K的空間調(diào)用所需的程序,余下的7K用于存放數(shù)據(jù)。但考慮到該方法程序編寫的復雜性,僅在圖像濾波中使用,因為濾波方法簡單而有規(guī)律。為了提高效率,可以開辟兩個存儲區(qū)(PING-PONG型),當一塊用于DM

36、A傳輸時,另一塊讓DSP進行計算。最后一點,因為5402是定點的,所以要對整個系統(tǒng)進行定標。3.3指紋識別預處理算法 指紋識別預處理的目的是使指紋圖像更清晰,邊緣更明顯,以便提取指紋的特征點進行識別。本文采取極值濾波和改進的平滑濾波進行噪聲消除,使圖像不失真;采取拉普拉斯銳化對指紋進行紋線增強,突出邊緣信息,為自適應閥值的迭代二值化提供方便。 3.3.1 極值濾波 解梅、馬爭1認為極值濾波器的設計是基于這樣一種理念:在指紋圖像的采集過程中,指紋圖像所受到的沖擊性噪聲表現(xiàn)為一些斑點或亮點。在一般情況下,可以認為絕大數(shù)沖擊性噪聲是被真實的灰度值所包圍。同時噪聲污染的像素要遠遠小于真實灰度值的像素。

37、因此在噪聲的消除過程中,無需對大多數(shù)沒有被噪聲污染的像素進行改變處理,只需對那些被污染的像素進行“真實值”代替處理,而這些值的確定可通過圖像像素鄰域的相關性來確定。設有一待處理器像素為s0,其周圍8鄰域像素排列為 取鄰域相關像素的均值為Ai,i1,2,.8,并以四個像素為一組處理單元,則改進的極值濾波1算法可表述如下: 如果A0>max(Ai),i1,2,.8,則 s1=s2=s4=s0=min(A1,A2,A4) s2=s3=s5=s0=min(A2,A3,A5) s4=s6=s7=s0=min(A4,A6,A7) (3) s5=s7=s8=s0=min(A5,A7,A8) 如果min

38、(Ai)Aimax(Ai),i1,2,.8,則將像素原值輸出,不作處理。 實驗結(jié)果表明,該方法能得到與中值濾波類似的效果,達到了初步去除噪聲的目的。 3.3.2 平滑濾波 經(jīng)過上面的極值濾波處理之后,圖像傳輸過程中所形成的大多數(shù)沖擊性噪聲均被除去,但指紋圖像中還存在著隨機噪聲,需進一步對圖像進行平滑處理。本文采取兩次平滑濾波,一次是在極值濾波之后,一次是在銳化濾波之后。改進的平滑卷積核為 系數(shù)取1/15而非原來的1/17的原因在于提高圖像的對比度;而卷積核中心像素加權(quán)系數(shù)取為5是為了突出該點像素。實驗結(jié)果表明,該改進是可行的,有利于突出中心像素并有效去除隨機噪聲。 3.3.3 銳化濾波 對于由

39、于積分運算所造成的模糊圖像,有必要對其模糊進行校正,進而增強指紋圖像的邊界。具體做法為增強指紋脊線與谷的對比度。這種增強指紋圖像的高頻成分,使其邊緣清晰的方法稱為銳化。因此,銳化的目的在于使經(jīng)過平均或積分運算后變得模糊的圖像的邊緣和輪廓變得清晰,并使細節(jié)清晰2。在本文中,銳化卷積核采用拉普拉斯算子3: 通過該卷積核對圖像進行卷積預算,能實現(xiàn)高通濾波,進而得到銳化后的指紋脊線。 3.3.4迭代閥值二值化 指紋圖像經(jīng)過極值濾波、平滑濾波、拉普拉斯銳化濾波、平滑濾波后,大多數(shù)噪聲都已被消除,這就為特征點提取提供了基礎。為了提取特征點,需對指紋圖像進行分割。本文采取迭代閥值的方法對指紋圖像進行閥值分割

40、。在圖像處理中,反復地用一種運算直至條件滿足而得到輸出圖像的方法稱為迭代。迭代閥值方法如下: 設定初始灰度閥值T(如令T127),把指紋圖像的灰度值分為兩組R1和R2。 計算兩組的平均灰度值u1和u2。 重新設定新的灰度閥值T。新的T定義為:T(u1+u2)/2。 依據(jù)新的T對指紋圖像進行閥值分割。 這種方法是以自適應的閥值對指紋圖像進行二值化處理。實驗結(jié)果表明,該方法比設定固定閥值進行處理更有普遍意義,且行之有效。 3.4 指紋圖像在CCS 2.2上的輸入與輸出 在設計中,采用DSP集成開發(fā)環(huán)境CCS2.2對指紋識別算法進行模擬驗證。用指紋成像系統(tǒng)采集一幅*bmp格式指紋圖像,如finger

41、.bmp指紋圖像。在該指紋圖像的數(shù)據(jù)上面添加一個COFF文件的文件頭。以文件名finger.out保存。*.out文件為TI的公共目標文件。利用CCS中的File-Load Data 可以將finger.out的指紋圖像放到DSP的相應內(nèi)存中去,本次設計中將finger.out存放于DSP的數(shù)據(jù)存儲空間。利用 CCS中的Image菜單,通過設置相關選項可以觀察處理前的圖像與處理后的圖像。 3.5實際指紋圖像預處理效果 依據(jù)上述指紋識別預處理算法,通過CCS2.2的模擬功能,實現(xiàn)了指紋識別預處理的DSP處理,達到了DSP處理指紋圖像的應用目的。結(jié)果如圖2所示。 圖2 實際指紋預處理結(jié)果本文針對T

42、MS320VC5402DSP的快速、高效的特點,采取了DSP集成開發(fā)環(huán)境對指紋圖像進行預處理。在指紋的預處理中,由于DSP具有10ns指令周期,使采用改進的極值濾波和改進的卷積核平滑濾波對指紋圖像進行一次、二次平滑實時處理成為可能。實驗結(jié)果表明,該方法能有效地處理指紋圖像的沖擊性噪聲和隨機噪聲。而迭代二值化的運算充分利用了DSP五級流水線操作,達到了利用DSP對指紋圖像進行預處理的應用目的。 系統(tǒng)調(diào)試方法設計并加工好印制電路板后,就進入了硬件調(diào)試階段。首先應對電路板作細致的常規(guī)檢查,防止短路和斷路情況的發(fā)生。加電后,檢查晶體是否振蕩,復位是否正確可靠,而后用示波器檢查5402的輸出時鐘CLKOUT是否按照指定時鐘模式工作。在作完這些檢查賓,就可以進入系統(tǒng)硬件調(diào)試階段。在硬件仿真時,首先要配置目標系統(tǒng)的存儲器映像,這是通過設置仿真器命令文件實現(xiàn)的??梢栽诜抡嬲{(diào)試軟件目錄下改寫emuinit。cmd,使之每次啟動仿真器時自動加載,也可以在啟動仿真器后手動加載命令文件以初始化目標存儲器映像。一般而言,仿真器存儲器映像與連接器存儲器映像應一致。對SRAM的調(diào)試的基本思想是,首先對SRAM的兩具單元初始化為兩個不

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論