【導讀】隨著(zhù)指紋識別在智能手機上面的普及,指紋識別技術(shù)在越來(lái)越多的場(chǎng)合中得到應用。除了手機應用之外,在移動(dòng)支付、門(mén)禁系統、智能家庭等嵌入式場(chǎng)景中也逐漸普及開(kāi)來(lái)。在系統實(shí)現上面,智能手機本身?yè)碛袕姶蟮挠嬎隳芰拓S富的內存資源,實(shí)現指紋識別并不困難,但在嵌入式系統中特別是基于MCU的應用場(chǎng)合,其運算能力、內存資源等都受到限制,本文介紹了一種基于單片機系統的指紋識別方案和設計要點(diǎn)。
隨著(zhù)指紋識別在智能手機上面的普及,指紋識別技術(shù)在越來(lái)越多的場(chǎng)合中得到應用。除了手機應用之外,在移動(dòng)支付、門(mén)禁系統、智能家庭等嵌入式場(chǎng)景中也逐漸普及開(kāi)來(lái)。在系統實(shí)現上面,智能手機本身?yè)碛袕姶蟮挠嬎隳芰拓S富的內存資源,實(shí)現指紋識別并不困難,但在嵌入式系統中特別是基于MCU的應用場(chǎng)合,其運算能力、內存資源等都受到限制,本文介紹了一種基于單片機系統的指紋識別方案和設計要點(diǎn)。
如圖所示,這是一個(gè)WiFi指紋識別前端的系統框圖,其應用場(chǎng)景是:手指按壓指紋識別模塊時(shí),指紋數據被采集并傳輸到單片機,單片機經(jīng)過(guò)識別算法對指紋數據進(jìn)行處理后,把處理結果通過(guò)WiFi模塊無(wú)線(xiàn)傳輸到云端參與身份識別的業(yè)務(wù)。
在具體實(shí)現上面,由于指紋識別算法涉及較多的浮點(diǎn)運算,以及需要暫存指紋點(diǎn)陣的原始數據和中間運算數據,故對于運算能力和存儲空間有硬性的要求,在目前主流的單片機架構中Cortex-M4架構集成FPU浮點(diǎn)處理單元,在100MHZ主頻下,其浮點(diǎn)數運算能力可以達到要求。指紋識別算法代碼編譯后占用上百K字節的代碼空間,考慮到WiFi網(wǎng)絡(luò )連接、應用層代碼等整體上以1MB左右的Flash代碼空間為宜,數據存儲的需求以512KB的SRAM空間為宜。系統工作時(shí),在指紋識別過(guò)程中需要強大的運算能力,而在沒(méi)有指紋按壓的時(shí)候則需要運行在低功耗狀態(tài),以適應嵌入式系統對功耗的要求。
在我們的方案中,選擇了具有XIP特性的MCU,把代碼存放在外置SPI Flash中并可以在系統執行,從而大大擴展了代碼存儲空間。外置SPI Flash中的代碼在執行中由于需要內部Cache緩存,故執行速度略低。對于識別算法的代碼,則可以在Boot階段拷貝到SRAM中運行,從而提升運行速度。XIP SRAM的代碼空間分配方案兼顧了性能和成本,是此設計的一個(gè)亮點(diǎn)。
指紋識別芯片是系統實(shí)現的部件,當前比較主流的技術(shù)指標,要求指紋識別芯片基于電容技術(shù)、支持活體檢測(Live Finger DetecTIon)、按壓式、采用玻璃蓋板,可以實(shí)現360度任意方向的觸摸,能夠支持滑動(dòng)導航?;铙w檢測技術(shù)具有防止假指紋破解的特點(diǎn),集成心率檢測功能,方便用戶(hù)實(shí)時(shí)查看心率值。傳感器集成化方便整機廠(chǎng)商的設計和整機集成,使得其方便應用于嵌入式單片機系統。
指紋識別芯片和主機的數據接口要求在指紋數據采集的過(guò)程中達到5Mbps以上的傳輸速率,低于5Mbps的數據吞吐量將影響用戶(hù)體驗。UART、 I2C等低速接口在吞吐量上無(wú)法達到要求,SPI接口簡(jiǎn)潔而且傳輸速率完全可以達到要求,是合適的通信接口。
指紋識別芯片周期性檢測Pixel傳感器區域是否有手指觸摸,檢測到傳感器有手指觸摸時(shí),會(huì )立刻采集活體檢測數據,數據采集完成后會(huì )通過(guò)中斷通知Host讀取,MCU讀取完活體檢測數據后芯片進(jìn)行指紋掃描,指紋掃描開(kāi)始后就會(huì )通過(guò)中斷通知Host讀取數據。指紋數據的掃描和Host數據的讀取同步進(jìn)行。
單片機接收到指紋芯片傳輸來(lái)的Pixel原始數據后通過(guò)識別算法運算后通過(guò)WiFi模塊傳輸到云端。由于MCU本身資源的限制,WiFi模塊本身需要集成WiFi驅動(dòng)、TCP/IP協(xié)議棧,并可以做作為一個(gè)相對獨立的單元運行應用層代碼,這樣就極大的減輕了MCU host端的負擔。 WiFi模塊通過(guò)串口和MCU進(jìn)行數據交互。
低功耗和抗干擾也是系統設計的一個(gè)要點(diǎn),指紋識別模塊在沒(méi)有手指按壓時(shí)仍然周期性的進(jìn)行傳感器掃描,雖然功耗低于數據傳輸期間,但為適應電池供電的場(chǎng)合,希望在沒(méi)有按鍵觸摸期間可以關(guān)掉指紋識別模塊的電源,為此如上圖所示增加了觸摸按鍵,檢測到有手指靠近的時(shí)候打開(kāi)指紋識別芯片的電源,進(jìn)行指紋掃描采集數據,當長(cháng)時(shí)間沒(méi)有手指觸摸的時(shí)候關(guān)閉指紋掃描模塊的電源,從而達到降低功耗的目的。另外在數據采集期間為了防止觸摸按鍵對指紋識別傳感器的影響,在觸摸按鍵后增加模擬開(kāi)關(guān),在采集開(kāi)始前MCU輸出一個(gè)控制信號將觸摸按鍵的模擬信號進(jìn)行隔離。
免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問(wèn)題,請聯(lián)系小編進(jìn)行處理。
推薦閱讀:
晶圓級封裝Bump制造工藝關(guān)鍵點(diǎn)解析
使用虛擬實(shí)驗設計預測先進(jìn)FinFET技術(shù)的工藝窗口和器件性能