色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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();
}

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

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

    關注

    1297

    文章

    6338

    瀏覽量

    233815
  • 單片機
    +關注

    關注

    6035

    文章

    44554

    瀏覽量

    634653
  • 接口
    +關注

    關注

    33

    文章

    8575

    瀏覽量

    151021
  • usb
    usb
    +關注

    關注

    60

    文章

    7936

    瀏覽量

    264483
  • 指紋識別模塊

    關注

    0

    文章

    6

    瀏覽量

    1326
收藏 人收藏

    評論

    相關推薦

    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 ?78次下載
    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 ?57次下載

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

    本設計是基于STC89C52單片機的指紋識別設計,采用AS608指紋模塊做為傳感器,LCD1602顯示屏顯示信息。具有指紋添加,
    發表于 11-05 09:21 ?46次下載
    基于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 ?27次下載
    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 ?2976次閱讀
    <b class='flag-5'>AS608</b><b class='flag-5'>指紋識別</b><b class='flag-5'>模塊</b>簡介

    AS608指紋模塊使用說明

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

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

    AS608款集成了指紋圖像采集和指紋比對算法的指紋識別模塊
    的頭像 發表于 08-28 11:30 ?1541次閱讀
    基于CW32的<b class='flag-5'>AS608</b><b class='flag-5'>指紋</b><b class='flag-5'>模塊</b>的應用
    主站蜘蛛池模板: 日韩高清特级特黄毛片| 精品国产美女AV久久久久| 欧美国产一区二区三区激情无套| 超碰97超碰在线视频哦| 欧美性爱-第1页| 国产三级级在线电影| 一级毛片西西人体44rt高清| 午夜国产大片免费观看| 青青青青草| 暖暖 日本 视频 在线观看免费| 国产一卡2卡3卡4卡孕妇网站| 国产99精品视频| 一本之道高清在线观看免费| 亚洲人美女肛交真人全程| 中文成人在线| 俄罗斯12x13x处| 狠狠色狠狠色综合日日32| 免费毛片观看| 乌克兰内射私拍| 伊人久久精品99热超碰| RUNAWAY韩国动漫免费官网版| 国产精品内射久久久久欢欢| 久久伊人天堂视频网| 日韩大胆视频| 长篇高h肉爽文丝袜| 成片免费观看视频在线网| 99久久免费热在线精品| ppypp午夜限制不卡影院私人 | 雪恋电影完整版免费观看| 色丁香婷婷综合缴情综| 青青草伊人| 日本VA在线视频播放| 青青草原成人| 日韩在线av免费视久久| 天天色天天综合网| 午夜欧洲亚洲AV永久无码精品| 翁熄性放纵交换300章| 亚洲欧美高清在线精品一区| 伊人久久一本| 99热久久视频只有精品6| 99国产精品欲AV蜜桃臀麻豆|