新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于CMOS圖像傳感器的指紋識別設計

        基于CMOS圖像傳感器的指紋識別設計

        作者: 時間:2014-08-06 來源:電子產品世界 收藏

          快速批量傳輸的實現

        本文引用地址:http://www.104case.com/article/256536.htm

          控制接口芯片AN2131QC特性簡介

          AN2131QC是基于1.1協議設計的,支持高速12Mb/s的傳輸速率,內嵌有增強型8051微控制器、8kB的RAM和一個智能USB內核的收發器,它包含一個I2C總線控制器和3個8位多功能I/O口,有8位數據總線和16位地址總線用于外部RAM擴展。其結構如圖5所示。

          

         

          圖5 AN2131QC結構簡圖

          AN2131QC內部的USB差分收發器連接到USB總線的D+和D-上。串行接口引擎(SIE)對USB總線上串行數據進行編碼和譯碼(即實現USB協議的打包和解包工作),同時執行錯誤糾正、位填充及其它USB需要的信號標準,這種機制大大減輕了8051的工作,簡化了固件的編程。內核微處理器是一個增強型8051,其指令周期為4 個時鐘周期并具有雙DPTR指針,同時指令與標準8051兼容。它使用內部RAM存儲固件程序和數據,上電后,主機通過USB總線將固件程序和外設特性描述符下載到內部RAM(也可以直接從板上E2PROM上讀取),然后重連接,按照下載的特性描速符進行重枚舉,這種設計可以實現軟件USB快速批量傳輸的實現。

          當采集的指紋數據導入了由SRAM和構成的高速數據緩沖緩沖區后,要通過USB接口將數據發送到上位PC機,AN2131QC必須先將數據讀入到內部USB緩沖區,因此,AN2131QC將數據傳到內部USB緩沖的速度將是整個USB數據傳輸速度快慢的關鍵。為了使USB數據傳輸(從外部讀入數據并將之傳到PC機)達到最快,需要采用很多措施,下面就設計指紋識別儀固件(AN2131QC程序)中采用的USB批量傳輸進行探討。

          正常情況下,AN2131QC內核結構從外部讀入數據到USB的端點緩沖區,要使用的匯編程序為:

          movx a,@dptr;讀外部數據到acc寄存器incdptr;外部地址加1

          incdps;切換DPTR指針(內核有雙DPTR指針,用dps進行切換)

          movx @dptr,a;將acc內容放入USB緩沖區

          incdptr;USB緩沖區地址加1

          incdps;切換DPTR指針

          由上述程序可知,數據在寄存器中完成操作后,都必須有一個“incdptr”和“incdps”指令來完成16位地址的增加和緩沖區指針切換。為了消除這種內部消耗,使用AN2131QC提供的一種特殊的硬件指針即自動指針(只用于內部緩沖區),8051裝載USB緩沖區地址到兩個AUTOPTRH (高字節地址)和AUTOPTRL(低字節地址)寄存器中,向AUTODATA寫入的數據就直接存入由AUTOPTR/H2L指向的地址緩沖區中,并且內核自動增加AUTOPTR/H2L中16位地址的值。這樣USB緩沖區可以像FIFO一樣來順序寫入數據,節省了每次寫內部USB緩沖區時的“incdptr”指令。同時內核還提供一種快速模式(只用于對外部數據操作),此模式從外部讀數據“movx a,@dptr”時,直接將外部數據總線和內部緩沖區連在一起,由于使用和SRAM構成的指紋高速緩沖區具有FIFO的性質,所以使用快速模式讀外部指紋數據時也節省了“incdptr”指令。將上述兩種方式結合起來,讀外部數據到內部緩沖區程序就只需要一條指令:movx @dptr,A(dptR存放AUTODATA寄存器地址),此指令需要兩個8051機器周期(8個24MHz時鐘周期)。這樣,一個字節可以在333ns內讀入到USB端點緩沖區。

          在USB接口數據傳輸一側,當PC機要對一特定端點進行讀數據并發送IN令牌,如果一個IN令牌到達時8051還沒有完成向USB端點緩沖區的數據裝載(讀外部數據),AN2131QC就發送一個NAK握手信號來響應IN令牌,表明PC機應該在稍后再發送一個IN令牌。為了解決這種等待從而達到最快的傳輸速度,可以使用雙緩沖技術(端點配對),使8051在前一個數據包在USB總線上傳輸的時候,裝載塊數據的下一個數據包。

          結 論

          利用數字圖像傳感器OV762M和USB控制器AN2131QC實現的指紋儀結構簡單,體積小,使用方便。指紋識別系統中使用技術實現了高速緩沖,解決了速度時序匹配問題;使用了快速批量USB傳輸技術實現了數據的快速傳輸,使指紋數據的傳輸達到最高速(每幀傳輸只用80Ms)。使用現論述的方法實現的指紋儀采集的指紋數據經PC機重現后效果如圖6所示(左圖是未經任何處理的重現,右圖是經過平滑、細化等算法處理后的重現)。

          

         

          圖6 采集指紋重現效果(處理前后)

        傳感器相關文章:傳感器工作原理


        負離子發生器相關文章:負離子發生器原理
        風速傳感器相關文章:風速傳感器原理
        脈沖點火器相關文章:脈沖點火器原理
        離子色譜儀相關文章:離子色譜儀原理

        上一頁 1 2 下一頁

        關鍵詞: CMOS USB CPLD

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 隆德县| 余干县| 谢通门县| 通辽市| 建湖县| 阿合奇县| 巨野县| 井研县| 基隆市| 广元市| 思南县| 防城港市| 黎平县| 丰顺县| 岳普湖县| 榆社县| 尤溪县| 广德县| 耿马| 安平县| 宾川县| 江陵县| 游戏| 山丹县| 京山县| 武邑县| 桃园市| 建阳市| 天祝| 全南县| 望城县| 进贤县| 巴林右旗| 张家界市| 温泉县| 星座| 盐山县| 邢台市| 安平县| 姜堰市| 大冶市|