在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文詳解AS608指紋識別模塊

CHANBAEK ? 來源:電子應用學習館 ? 作者:一只會飛的大魚兒 ? 2023-04-14 14:53 ? 次閱讀

一. 簡介

AS608 指紋識別模塊主要是指采用了杭州晟元芯片技術有限公司(Synochip)的 AS608 指紋識別芯片 而做成的指紋模塊,模塊廠商只是基于該芯片設計外圍電路,集成一個可供2次開發的指紋模塊; 所以,只要是基于AS608芯片的指紋模塊,其控制電路及控制協議幾乎是一樣的,只是廠家和性能不同而已。

二. 硬件原理圖介紹

1.硬件接口

AS608模塊采用8pin的控制接口,供電電壓為3.3V(不能使用5V供電),通信總線有兩種,分別為串口通訊(TX、RX)和USB通訊(D+、D-); 采用串口通訊,編程相對簡單,也是比較常用的一種,但是兼容性不好; 采用USB通訊,編程相對較難,但USB作為最常用的總線接口,有很好的兼容性。

2.控制電路圖

51單片機為例,AS608模塊touch引腳接到單片機的普通IO上,當有指紋按下,該引腳觸發一個高電平信號; TX、RX引腳分別接到單片機的P30、P31串口引腳上。

注:AS608只能用+3.3V供電,不可用+5V供電。

三. 通訊協議格式

單片機要實現對AS608指紋模塊的控制,就需要根據AS608芯片規定的通訊協議格式來發送和處理串口數據,整個模塊各個功能的實現也是圍繞該協議格式進行的。

控制指令有三類,指令包、數據包、結束包; 一般指令包是由單片機發送到模塊上,模塊接收到指令包后,返回對應的數據包;

  • 指令包主要包括:包頭、芯片地址、包標識、包長度、控制參數和校驗和;
  • 數據包主要包括:包頭、芯片地址、包標識、包長度、數據和校驗和 ;
  • 數據包與結束包的區別在于包標識,02H:數據包,且有后續包。 08H:最后一個數據包,即結束包。

四. 控制程序

以指紋密碼鎖為例,

1.常用控制指令

一般要實現一個指紋密碼鎖的功能,只需用到以下指令:

錄入圖像、生成特征、搜索指紋、自動驗證指紋、自動注冊模板、刪除指紋。

2.錄入指紋

首先要是實現開鎖,需要在系統里面錄入指紋信息,需要:

錄入圖像->生成特征->快速查找圖像->自動注冊模板

(1)錄入圖像指令

(2)生成特征指令

存入指紋圖像,存入單片機給定的緩沖區號BufferID中;

(3)快速查找圖像

生成圖像后要驗證是否有在Buffer里面;

(4)自動注冊模板

最后將Buffer里面的圖像存入Flash里面

(5)錄入指紋程序

void addfinger()    //錄入指紋
{
  uchar IDa1,IDa2,IDa3;     //指紋圖像存放地址
  LcmClearTXT();
  PutStr(1,2,"請按手指");    
  SFG_getimage();
  while(querenma!=0)       //指令接收不成功,重新發送
  SFG_getimage();
  SFG_genchar(buffer1ID);
  while(querenma!=0)       //指令接收不成功,重新發送
  SFG_genchar(buffer1ID);
  UART_Init();
  SFG_fastsearch(buffer1ID);
  while(querenma==1)      //指令接收不成功,重新發送
  SFG_fastsearch(buffer1ID);
  SBUF = querenma;
  while(TI==0);
  TI=0;
  if(querenma==0)
  {
    LcmClearTXT();
    PutStr(1,1,"該指紋已存儲");
    PutStr(3,0,"  按任意鍵繼續"); 
      while(Keycan()==0);
  }
  else if(querenma==9)
    {
      LcmClearTXT();
      PutStr(1,1,"請再次按手指");
      SFG_enroll();
      while(querenma==2)
      SFG_enroll();
      LcmClearTXT();
      if(querenma==0)
      { 
        IDa1=PageID/100;IDa2=PageID/10%10;IDa3=PageID%10;
        PutStr(1,1,"指紋采集成功");
        PutStr(2,1,"編號為:");
        WriteCommand(0x8D); 
        WriteData(0x30+IDa1);WriteData(0x30+IDa2);WriteData(0x30+IDa3);
        }
      else if(querenma!=0)
        {
        PutStr(1,1,"指紋采集失敗");
        PutStr(2,1,"請重新操作");
       }
    PutStr(3,0,"  按任意鍵繼續"); 
      while(Keycan()==0);
       }
  LcmClearTXT();
}

2.自動驗證指紋

錄入指紋后,就可以匹配本人的指紋實現開鎖,只需要發送自動驗證指紋指令,返回的確認碼為0x00,即為匹配成功,不為0x00即匹配失敗;

(1)錄入指紋指令

(2)自動驗證指紋程序

void shuazhiwen()     //驗證用戶的指紋
{
    uchar IDs1,IDs2,IDs3;   
  LcmClearTXT();
  PutStr(1,1,"請按手指開鎖");      
  SFG_identify();
  while(querenma==2)
  SFG_identify(); 
  if(querenma==0)
   {
    LcmClearTXT();
    PutStr(1,2,"門已打開"); 
    IDs1=PageID/100;
    IDs2=PageID/10%10;
    IDs3=PageID%10;
    PutStr(2,1,"編號為:");
    WriteCommand(0x8D);    //指定第三行顯示位置
    WriteData(0x30+IDs1);
    WriteData(0x30+IDs2);
    WriteData(0x30+IDs3);
    jidianqi=0;
    delay(2500); 
    jidianqi=1;  
  }
     else if(querenma==9)
     {
      LcmClearTXT();
      PutStr(1,1,"沒搜索到指紋");
      PutStr(2,1,"請重新按手指");
    }
       else 
    {
      LcmClearTXT();
      PutStr(1,1,"接收包出錯");
    }
    delay(2000);
   //   while(Keycan()==0);
}

3.刪除指紋

管理員如果需要刪除系統中錄入的指定指紋信息,需要寫入刪除所要刪除指紋的ID號,然后發送刪除指紋指令即可刪除相應的指紋。

(1)刪除指紋指令

(2)刪除指紋程序

void deletfinger()
{
  uchar i,j=0;
  LcmClearTXT();
  PutStr(1,0,"輸入刪去的指紋號");
  for(i=0;i<5;i++)dz[i]=0;  
     Key=Keycan();
     while(Key!=queren)      //按鍵錄入用戶需要刪除的指紋號
     {
       Key=Keycan();
       KeyDeal(Key);
       delay(30);                                      //按鍵有抖動@@@
       if(Key==0)K=10;
       if((K>=0)&&(K<=9))
       {
        dz[j]=K;
      if(j<3)
      {  
        WriteCommand(0x88+j);    //指定第三行顯示位置
        WriteData(0x30+dz[j]);  
      }
        ++j;
      if(j==4)
        j=3;                           //@@#yinhuang
       }   //顯示LCD12864并行顯示 
     if(K==34)    //按了刪除鍵
      {
        if(j==0)
      {
        WriteCommand(0x88);    //指定第三行顯示位置
        WriteData(0x20);
      }
      else
      {
        --j;
        WriteCommand(0x88+j);      //指定第三行顯示位置
        WriteData(0x20);
      }
    }
  }
  if(j>=2)
  PageID=dz[2]+dz[1]*10+dz[0]*100;
  if(j==1)
  PageID=dz[1]+dz[0]*10;
  if(j==0)
  PageID=dz[0];
  SFG_deletchar(PageID);
  if(querenma==0)
  {
    LcmClearTXT();
    PutStr(1,1,"刪去指紋號成功!"); 
  }
  else
  {
    LcmClearTXT();
    PutStr(1,0,"刪去指紋號失敗!");  
  }
  PutStr(2,0,"  按任意鍵繼續"); 
  while(Keycan()==0);
  LcmClearTXT();
}

只要實現以上幾個指令,就可以實現一個指紋密碼鎖的基本功能了。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 原理圖
    +關注

    關注

    1322

    文章

    6412

    瀏覽量

    239239
  • 單片機
    +關注

    關注

    6063

    文章

    44925

    瀏覽量

    647090
  • 接口
    +關注

    關注

    33

    文章

    8949

    瀏覽量

    153218
  • usb
    usb
    +關注

    關注

    60

    文章

    8146

    瀏覽量

    270932
  • 指紋識別模塊

    關注

    0

    文章

    6

    瀏覽量

    1406
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    AS608指紋識別模塊

    請問AS608指紋識別模塊,在斷電之后還保持著之前錄入的指紋嗎?下次通電是不是不需要再次錄入指紋
    發表于 04-13 17:01

    AS608指紋考勤系統上位機工作統計

    `1、特性參數ATK-AS608 指紋識別模塊是 ALIENTEK 推出的款高性能的光學指紋識別模塊
    發表于 03-06 12:21

    怎樣去開發AS608指紋模塊

    AS608指紋模塊于51單片機的二次開發前言提要、初識AS608:二、設計1.思路2.上原理圖:3.程序設計中需要注意的幾個點:串口:總結
    發表于 07-13 07:32

    指紋識別方案

    簡單了解下指紋識別吧。1、51單片機AS608指紋識別解決方案本設計是基于STC89C52單片機的指紋識別設計,采用AS608
    發表于 07-21 09:08

    基于STC89C52單片機的指紋識別設計資料分享

    本設計是基于STC89C52單片機的指紋識別設計,采用AS608指紋模塊做為傳感器,LCD1602顯示屏顯示信息。具有指紋添加,
    發表于 11-10 06:51

    怎樣去設計種基于stm32VE的AS608指紋解鎖模塊

    基于stm32VE的AS608指紋解鎖模塊是怎樣工作的?怎樣去設計種基于stm32VE的AS608指紋
    發表于 02-14 07:58

    如何去實現基于AS608指紋+STM32串口通信的指紋錄入設計呢

    AS608指紋識別模塊是什么?如何去實現基于AS608指紋+STM32串口通信的指紋錄入設計呢?
    發表于 02-18 06:37

    請問怎樣將as608指紋采集模塊指紋圖像傳到電腦里面?

    請問怎樣將as608指紋采集模塊指紋圖像傳到電腦里面?
    發表于 06-05 15:08

    ATK-AS608指紋識別模塊用戶手冊資料免費下載

    ATK-AS608 指紋識別模塊是 ALIENTEK 推出的款高性能的光學指紋識別模塊。 AT
    發表于 06-10 08:00 ?80次下載
    ATK-AS<b class='flag-5'>608</b><b class='flag-5'>指紋識別</b><b class='flag-5'>模塊</b>用戶手冊資料免費下載

    ATK-AS608指紋識別模塊測試實驗的程序和工程文件免費下載

    本文檔的主要內容詳細介紹的是ATK-AS608指紋識別模塊測試實驗的程序和工程文件免費下載。
    發表于 01-19 17:26 ?58次下載

    基于51單片機AS608指紋自動識別電路設計(畢業設計)

    本設計是基于STC89C52單片機的指紋識別設計,采用AS608指紋模塊做為傳感器,LCD1602顯示屏顯示信息。具有指紋添加,
    發表于 11-05 09:21 ?48次下載
    基于51單片機<b class='flag-5'>AS608</b><b class='flag-5'>指紋</b>自動<b class='flag-5'>識別</b>電路設計(畢業設計)

    ATK-AS608 指紋識別模塊常見問題和疑問

    最近在做個項目,要用到AS608指紋識別模塊,當軟硬件聯調的時候,直接就是個Docking failure,也查了
    發表于 01-12 20:19 ?28次下載
    ATK-AS<b class='flag-5'>608</b> <b class='flag-5'>指紋識別</b><b class='flag-5'>模塊</b>常見問題和疑問

    AS608指紋識別模塊簡介

    AS608 指紋識別模塊主要是采用了杭州晟元芯片技術有限公司(Synochip)的 AS608 指紋識
    的頭像 發表于 06-21 15:08 ?3931次閱讀
    <b class='flag-5'>AS608</b><b class='flag-5'>指紋識別</b><b class='flag-5'>模塊</b>簡介

    AS608指紋模塊使用說明

    AS608款集成了指紋圖像采集和指紋比對算法的指紋識別模塊。它采用了高質量的光學傳感器,能夠
    的頭像 發表于 08-24 12:21 ?5445次閱讀
    <b class='flag-5'>AS608</b><b class='flag-5'>指紋</b><b class='flag-5'>模塊</b>使用說明

    基于CW32的AS608指紋模塊的應用

    AS608款集成了指紋圖像采集和指紋比對算法的指紋識別模塊
    的頭像 發表于 08-28 11:30 ?1995次閱讀
    基于CW32的<b class='flag-5'>AS608</b><b class='flag-5'>指紋</b><b class='flag-5'>模塊</b>的應用
    主站蜘蛛池模板: 国产伦精品一区二区免费 | 免费一级欧美在线观看视频片 | 400部大量精品情侣网站 | 在线视频h | 激情综合色综合久久综合 | 久久天天躁狠狠躁夜夜爽 | 人人添人人澡人人澡人人人爽 | 97色婷婷成人综合在线观看 | 一级做a爱片在线播放 | 国产福利不卡一区二区三区 | 四虎国产精品视频免费看 | 人人乳乳香蕉大免费 | 四虎影视在线影院在线观看 | 成人在线黄色 | 潘金莲国产三级视频在线 | 午夜精品aaa国产福利 | 国产乱码精品一区二区 | 狠狠五月天小说 | 日本三级最新中文字幕电影 | 亚洲不卡视频在线观看 | 黄色在线播放网站 | 国产黄色片网站 | 欧美高清免费一级在线 | 四虎永久免费网站入口2020 | 黄色有码视频 | 高清不卡免费一区二区三区 | 欧美性视频一区二区三区 | 天天爽天天爽天天片a久久网 | 色男人综合 | 日本三人交xxx69视频 | 啪啪免费小视频 | 98色花堂国产第一页 | 综合亚洲一区二区三区 | 女人张腿让男桶免费视频观看 | 成年女人免费看一级人体片 | 99草精品视频 | 国产午夜精品久久久久 | 国产黄色片一级 | 亚洲最色网站 | 激情亚洲综合网 | 午夜男人视频 |