AS60X通訊手冊有三十多條指令,根據每條指令的指令包格式通過串口發送指令到指紋模塊,有二十條左右是基礎指令,單條使用或者組合起來使用可以實現錄入指紋/搜索指紋/刪除指紋/清空指紋庫/查詢指紋數目/上傳下載指紋/修改參數等操作,一般用到的大概十條左右。
還有幾條快捷指令,功能差不多是幾條基礎指令的復合。或者效率更高,或者功能更細致,例如自動注冊,快速搜索,自動驗證,快速搜索(帶殘留判斷)。
每條指令發送成功后指紋模塊會發送應答包到上位機,也有固定格式,也就是返回的參數會在應答包的固定位置,可以讀出那個參數來判斷指令的實現狀態,比較重要的參數就是確認碼,例如錄入指紋圖像的指令返回確認碼
確認碼=00H 表示錄入成功;
確認碼=01H 表示收包有錯;
確認碼=02H 表示傳感器上無手指;
確認碼=03H 表示錄入不成功;
此外,每條指令有一個指令代碼,不同型號的指紋模塊支持的指令數量不一樣,指令的名稱也不一樣,但是指令代碼一樣的話指令的功能就是一致的,可以根據該條指令的指令代碼來判斷是否能移植某段程序。
比方說以下三條快捷指令功能看起來是一樣的,但是并不是同一條指令,因為指令代碼不一樣。所以實際上功能也會有細微的差異。
注冊模板 PS_Enroll
指令代碼:10H
功能:注冊模板
自動注冊模板 PS_AutoEnroll
指令代碼: 31H
功能: 一站式注冊指紋,包含采集指紋、生成特征、組合模板、存儲模板等功能。
自動登記 AutoLogin
指令代碼:0x54
功能:發送該指令,可使模塊自動完成圖像采集、生成特征、合成模板以及存儲模板的工作,將
“錄指紋圖像 GenImg”、“圖像生成特征 Img2Tz”、“特征合成模板 RegModel”、“存儲模板 Store”這四條
指令合成一條指令來完成。
相反來說,以下兩條指令名稱不一樣,但是指令代碼一樣,所以是同一條指令,功能也一致。
生成特征PS_GenChar
指令代碼:02H
功能:根據原始圖像生成指紋特征存于 CharBuffer1 或 CharBuffer2
圖像生成特征 Img2Tz
功能:將 ImageBuffer 中的原始圖像生成指紋特征,文件存于 CharBuffer1 或
CharBuffer2.
指令代碼: 02H
我到現在還沒有找到一個指令集包含所有的指令代碼的,目前基礎指令最完善的還是AS60X通訊手冊,此外FM180和JM101的數據手冊里面各有幾條快捷指令可以作為補充,不過那幾條指令要對應型號的指紋模塊才支持。
最后還有一種數據包格式,可以存儲少量數據到指紋模塊的flash空間內,一般不會用到。 |