【導讀】指紋識別技術是成熟的、唯一的、穩定的鑒別手段之一。現如今,大學生身體素質不達標,學校引導鍛煉勢在必行。人工管理費時費力,但是機器智能管理卻能實現目的。指紋識別能夠對學生信息統一管理,促進學校對學生的體育鍛煉。
功能要求
使用指紋采集器采集指紋信息,傳送至SDRAM存儲。在FPGA上對指紋進行處理和匹配,同時編寫程序使FPGA與計算機通信并且在計算機上建立數據庫,使得可以使用計算機的數據庫完成數據管理。
性能要求
實現以精準,快速,實用性強的指紋識別系統。同時實現良好的FPGA與計算機通信的功能。
系統要點
本系統主要難點在于指紋識別的算法以及XILINX 與PC機通信時所需要寫的驅動。
方案設計
系統功能實現原理
本系統采用FPGA作為核心控制芯片,通過FPC1011F傳感器采集指紋傳送至存儲器SDRAM存儲。在Spartan上運行的指紋處理程序對指紋信息進行處理獲得特征點,并存儲在SDRAM中或與SDRAM中的指紋信息進行匹配。最終,通過USB與計算機通信,使用計算機中的學生數據庫。
圖1
指紋傳感器FPC1011F該傳感器采用了多項專利,如獨立的晶圓體信號放大、傳感器表面的保護膜等。內部具有A/D轉換,高速的SPI接口,8PIN的軟排線可以方便的接入各種系統。
圖2
(1)FPC1011F芯片產自瑞典,采用獨特的反射式測量法,抗靜電可達正負15 kV,耐磨100萬次,已被國內金融界公認為銀行指定零件。
(2)采用專業的指紋識別芯片PS1802DSP和最優化的指紋算法,指紋成像效果好。
(3)處理速度快,峰值能達到480MIPS,在1:1 000模式下,時間小于1 s。
(4)功耗較同類產品低,正常工作主頻120 MHz下,只有120 mW。
(5)模塊體積為35 mm×26 mm×1 mm,便于各種指紋產品的開發。
(6)對干濕手指有自動調節功能。
FPC1011F指紋傳感器含有小電容板,傳感器使用高靈敏度像素放大器,讓每個像素即使是非常微弱的信號FPC1011F都能探測到,以此提高圖像質量。用了交替命令的并排列和傳感器電板,交替板的形式是兩個電容板,以及指紋的山谷和山脊成為板之間的電介質。兩者之間的恒量電介質傳感器檢測變化生成指紋圖像。
[page]
SPI 通信接口
SPI接口主要應用在 EEPROM,FLASH,實時時鐘,AD轉換器,還有數字信號處理器和數字信號解碼器之間。SPI,是一種高速的,全雙工,同步的通信總線,并且在芯片的管腳上只占用四根線,節約了芯片的管腳,同時為PCB的布局上節省空間,提供方便,正是出于這種簡單易用的特性,現在越來越多的芯片集成了這種通信協議。
SPI總線系統是一種同步串行外設接口,它可以使MCU與各種外圍設備以串行方式進行通信以交換信息。外圍設置FLASHRAM、網絡控制器、LCD顯示驅動器、A/D轉換器和MCU等。SPI總線系統可直接與各個廠家生產的多種標準外圍器件直接接口,該接口一般使用4條線:串行時鐘線(SCK)、主機輸入/從機輸出數據線MISO、主機輸出/從機輸入數據線MOSI和低電平有效的從機選擇線SS(有的SPI接口芯片帶有中斷信號線INT、有的SPI接口芯片沒有主機輸出/從機輸入數據線MOSI)。
SPI的通信原理很簡單,它以主從方式工作,這種模式通常有一個主設備和一個或多個從設備,需要至少4根線,事實上3根也可以(用于單向傳輸時,也就是半雙工方式)。也是所有基于SPI的設備共有的,它們是SDI(數據輸入),SDO(數據輸出),SCK(時鐘),CS(片選)。
SDO – 主設備數據輸出,從設備數據輸入 。
SDI – 主設備數據輸入,從設備數據輸出 。
SCLK – 時鐘信號,由主設備產生 。
CS – 從設備使能信號,由主設備控制 。
其中CS是控制芯片是否被選中的,也就是說只有片選信號為預先規定的使能信號時(高電位或低電位),對此芯片的操作才有效。這就允許在同一總線上連接多個SPI設備成為可能。 接下來就負責通訊的3根線了。通訊是通過數據交換完成的,這里先要知道SPI是串行通訊協議,也就是說數據是一位一位的傳輸的。這就是SCK時鐘線存在的原因,由SCK提供時鐘脈沖,SDI,SDO則基于此脈沖完成數據傳輸。數據輸出通過 SDO線,數據在時鐘上升沿或下降沿時改變,在緊接著的下降沿或上升沿被讀取。完成一位數據傳輸,輸入也使用同樣原理。這樣,在至少8次時鐘信號的改變(上沿和下沿為一次),就可以完成8位數據的傳輸。
要注意的是,SCK信號線只由主設備控制,從設備不能控制信號線。同樣,在一個基于SPI的設備中,至少有一個主控設備。這樣傳輸的特點:這樣的傳輸方式有一個優點,與普通的串行通訊不同,普通的串行通訊一次連續傳送至少8位數據,而SPI允許數據一位一位的傳送,甚至允許暫停,因為SCK時鐘線由主控設備控制,當沒有時鐘跳變時,從設備不采集或傳送數據。也就是說,主設備通過對SCK時鐘線的控制可以完成對通訊的控制。SPI還是一個數據交換協議:因為SPI的數據輸入和輸出線獨立,所以允許同時完成數據的輸入和輸出。不同的SPI設備的實現方式不盡相同,主要是數據改變和采集的時間不同,在時鐘信號上沿或下沿采集有不同定義,具體請參考相關器件的文檔。
在點對點的通信中,SPI接口不需要進行尋址操作,且為全雙工通信,顯得簡單高效。在多個從設備的系統中,每個從設備需要獨立的使能信號,硬件要稍微復雜一些。
SPI接口在內部硬件實際上是兩個簡單的移位寄存器,傳輸的數據為8位,在主器件產生的從器件使能信號和移位脈沖下,按位傳輸,高位在前,低位在后。如圖3.4所示,在SCLK的下降沿上數據改變,同時一位數據被存入移位寄存器。
FPC1011F口主要由4個引腳構成:SPI_CK、SPI_DO、SPI_DI、/SS,SPI_CK是整個SPI總線的公用時鐘,SPI_DO、SPI_DI作為主機,從機的輸入輸出的標志,SPI_DO是主機的輸出,從機的輸入,SPI_DI是主機的輸入,從機的輸出。/SS是從機的標志管腳,在互相通信的兩個SPI總線的器件,/SS管腳的電平低的是從機,相反/SS管腳的電平高的是主機。在一個SPI通信系統中,必須有主機。SPI總線可以配置成單主單從,單主多從,互為主從。
SPI的片選可以擴充選擇16個外設。
SPI接口的缺點:沒有指定的流控制,沒有應答機制確認是否接收到數據。
SDRAM
SDRAM:同步動態隨機存儲器,同步動態隨機存儲器,同步是指 Memory工作需要同步時鐘,內部的命令的發送與數據的傳輸都以它為基準;動態是指存儲陣列需要不斷的刷新來保證數據不丟失;隨機是指數據不是線性依次存儲,而是自由指定地址進行數據讀寫。
FIFO模塊
此模塊主要功能是對已經收到的指紋數據進行緩存,避免指紋數據的丟失,因此此系統SPI工作頻率為16MByte,而UART串口工作頻率為38MByte。所以需要設定FIFO來使得SPI和UART協調工作。
UART模塊
此模塊的主要功能是和計算機進行通信,把接受到的數據通過計算機數據庫顯示出來。
相關閱讀:
無線傳感器網絡射頻前端系統架構如何實現低功耗?
包裝領域竟也有如此多的傳感器,你知曉嗎?
皮膚要想仿真,大腦傳感器才是關鍵!