欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4132|回復(fù): 1
收起左側(cè)

來論壇這么久沒有貢獻(xiàn),發(fā)一個(gè)我做的STM32 AS608指紋程序吧

[復(fù)制鏈接]
ID:488955 發(fā)表于 2019-3-29 20:33 | 顯示全部樓層 |閱讀模式
通過STC89C51、52/AT89S51、52/AT89C51、52單片機(jī)作為主控制器設(shè)計(jì)。

2單片機(jī)+ LCD1602液晶+繼電器+指紋模塊+按鍵+聲光報(bào)警系統(tǒng)設(shè)計(jì)而成。
3、可以實(shí)現(xiàn)錄入指紋,識(shí)別指紋,刪除指紋,清空指紋4個(gè)基本功能。此外還有繼電器裝置和蜂鳴器報(bào)警。

4、識(shí)別的指紋正確或者錯(cuò)誤,液晶會(huì)有相應(yīng)的提示和聲光報(bào)警
5、按鍵說明:
從左邊第一個(gè)起,模式切換按鍵(開鎖模式和錄入指紋模式)、刪除按鍵、添加指紋鍵
6、功能操作說明:
     開機(jī)后LCD1062顯示如下圖的界面 1.jpg
       此時(shí)為開鎖模式(這個(gè)模式下第二個(gè)和第三個(gè)按鍵無效),將錄入指紋的手指放在指紋模塊上,開鎖成功繼電器控制的鎖打開(此時(shí)繼電器的指示燈會(huì)亮)。
        在開鎖模式下按第一個(gè)按鍵,進(jìn)入新指紋錄入模式(這時(shí)候第二個(gè)按鍵和第三個(gè)按鍵才有效),顯示界面如下圖:
2.jpg
       在指紋錄入模式下按第二個(gè)鍵可以進(jìn)行刪除指紋(當(dāng)聽到“滴..”,聲光報(bào)警的燈也閃爍一下,說明指紋刪除成功,將以前錄入的指紋全部刪除)。
       按下第三個(gè)鍵后可以進(jìn)行新的指紋錄入(當(dāng)聽到“滴”,聲光報(bào)警的燈也閃爍一下,就可以開始錄指紋了;將手指放在指紋模塊上兩次,聲光報(bào)警指示燈閃兩下說明指紋錄入成功,界面會(huì)顯示新錄入指紋的序號(hào)),如果指紋沒有錄入成功需再按一下第三個(gè)按鍵。        指紋錄入成功后再按下第一個(gè)鍵(進(jìn)入開鎖模式)就可以用錄入指紋的手指進(jìn)行指紋開鎖了。
用沒有錄入指紋的手指進(jìn)行開鎖時(shí),聲光報(bào)警系統(tǒng)會(huì)進(jìn)行聲光報(bào)警。
7、下單就送條USB線供電。


單片機(jī)源程序如下:
  1. #include "sys.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "lcd.h"
  5. #include "key.h"
  6. #include "touch.h"         
  7. #include "malloc.h"
  8. #include "usmart.h"  
  9. #include "MMC_SD.h"   
  10. #include "ff.h"  
  11. #include "exfuns.h"   
  12. #include "fontupd.h"
  13. #include "text.h"        
  14. #include "usart2.h"
  15. #include "AS608.h"
  16. #include "timer.h"

  17. #define usart2_baund  57600//串口2波特率,根據(jù)指紋模塊波特率更改(注意:指紋模塊默認(rèn)57600)
  18. SysPara AS608Para;//指紋模塊AS608參數(shù)
  19. u16 ValidN;//模塊內(nèi)有效模板個(gè)數(shù)
  20. u8** kbd_tbl;

  21. void press_FR(void);//刷指紋

  22. u16 GET_NUM(void);//獲取數(shù)值  

  23. int main(void)
  24. {                 
  25.         u8 ensure;
  26.         u8 key_num;
  27.         char *str;
  28.         
  29.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設(shè)置系統(tǒng)中斷優(yōu)先級(jí)分組2
  30.         delay_init();              //初始化延時(shí)函數(shù)
  31.         uart_init(115200);        //初始化串口1波特率為115200,用于支持USMART
  32.         usart2_init(usart2_baund);//初始化串口2,用于與指紋模塊通訊
  33.         PS_StaGPIO_Init();        //初始化FR讀狀態(tài)引腳

  34.         usmart_dev.init(72);//初始化USMART
  35.         mem_init();                                        //初始化內(nèi)存池
  36.         exfuns_init();                        //為fatfs相關(guān)變量申請(qǐng)內(nèi)存  
  37.          f_mount(fs[1],"1:",1);  //掛載FLASH.
  38.      
  39.                  printf("test1");
  40.         while(PS_HandShake(&AS608Addr))//與AS608模塊握手   程序死這里了
  41.         {
  42.       printf("握手不成功\n");               
  43.         }
  44.         printf("Connect success!\n");                //通訊成功

  45.         ensure=PS_ValidTempleteNum(&ValidN);//讀庫指紋個(gè)數(shù)
  46.         if(ensure!=0x00)
  47.                       printf("No vaild num\n");  
  48.         ensure=PS_ReadSysPara(&AS608Para);  //讀AS608模塊參數(shù)
  49.         
  50.         while(1)                                                           
  51.         {
  52.                 if(PS_Sta)         //檢測(cè)PS_Sta狀態(tài),如果有手指按下
  53.                 {
  54.                         press_FR();//刷指紋                                      
  55.                 }                                 
  56.         }         
  57. }

  58. //刷指紋
  59. void press_FR(void)
  60. {
  61.         SearchResult seach;
  62.         u8 ensure;
  63.         char *str;
  64.         ensure=PS_GetImage();
  65.         if(ensure==0x00)//獲取圖像成功
  66.         {        
  67.                 ensure=PS_GenChar(CharBuffer1);
  68.                 if(ensure==0x00) //生成特征成功
  69.                 {               
  70.                         ensure=PS_HighSpeedSearch(CharBuffer1,0,300,&seach);
  71.                         if(ensure==0x00)//搜索成功
  72.                         {                                
  73.          printf("Search fingerprint success\n");                                
  74.                                 str=mymalloc(50);
  75.                                 printf("Match ID:%d  Match score:%d",seach.pageID,seach.mathscore);//顯示匹配指紋的ID和分?jǐn)?shù)
  76.                         }
  77.                         else
  78.                                         printf("Search fingerprint failed\n");                                       
  79.           }
  80.                 else
  81.                 printf("Search fingerprint failed\n");                        
  82.         }
  83.                
  84. }
復(fù)制代碼

所有資料51hei提供下載:
AS608指紋識(shí)別模塊測(cè)試實(shí)驗(yàn).7z (624.22 KB, 下載次數(shù): 41)


回復(fù)

使用道具 舉報(bào)

無效樓層,該帖已經(jīng)被刪除
ID:526988 發(fā)表于 2019-5-5 10:52 | 顯示全部樓層
這哪里是32的
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表