51驱动AS608光学指纹识别模块:12864显示的精彩体验

51驱动AS608光学指纹识别模块 12864显示

  • AS608光学指纹识别模块
  • 模块工作原理
  • 1、指纹特征
  • 2、指纹处理
  • 模块参数
  • 引脚说明
  • 实验程序
  • 硬件设备和接线
  • 程序讲解
  • 按键
  • 主函数
  • 实验步骤
  • 注意事项
  • 总结
  • AS608光学指纹识别模块

    模块工作原理

    1、指纹特征

    指纹算法从获取的指纹图像提取的特征,代表了指纹的信息。指纹的存储、对比和搜索都是通过操作指纹特征来完成的。

    2、指纹处理

    指纹处理包括两个过程:指纹登录过程和指纹匹配过程(其中指纹匹配分为指纹对比(1:1)和指纹搜索(1:N)两种方式)。
    指纹登录时,对每一枚指纹录入2次,将2次录入的图像进行处理,合成模块存储于模块中。
    指纹匹配时,通过指纹传感器,录入要验证指纹图像并进行处理,然后与模块中的指纹模板进行匹配比较(若与模块指定的一个模块进行匹配,称为指纹对比方式,即1:1方式;若与多个模板进行匹配,称为指纹搜索方式,即1:N方式),模块给出的匹配结果(通过或者失败)。

    模块参数

    引脚说明


    1脚(红线):模块主电源,接3.3V供电(请勿接3.3V以上电源,否则烧毁模块!);

    2脚(黄线):模块串口TX(发送端),接MCU或TTL串口的RX(接收端);

    3脚(白线):模块串口RX(接收端),接MCU或TTL串口的TX(发送端);

    4脚(黑线):模块电源地,接3.3V电源地(负极);

    5脚(蓝线):模块触摸感应信号输出(高电平为检测到触摸),需接VTI到3.3V。

    6脚(绿线):模块触摸感应电路电源(3.3V),可以与1脚(红线)并接。

    7脚,8脚为USB信号线,使用串口控制模块时可以悬空不用。

    实验程序

    硬件设备和接线

    本文用的是STC89C52RC单片机的开发板,其他的硬件需要一个12864屏和蜂鸣器,本次还借用了两个USB转TTL做额外供电用;一个给指纹模块供电,一个给蜂鸣器供电(板子上的蜂鸣器坏了,额外接一个蜂鸣器)。
    接线:
    蜂鸣器接的是单片机的P1_0,
    指纹模块TX和RX分别接单片机的P3_0和P3_1
    12864根据原理图改程序定义即可

    sbit RS = P0^7;
    sbit RW = P0^6;
    sbit E  = P0^5;
    sbit PSB   = P0^4;
    sbit RES   = P0^3;
    

    程序讲解

    按键

    KEY_UP和KEY_DOWN 是上下移动,KEY_OK和KEY_CANCEL 是确认和取消。

    sbit KEY_UP=P3^5;         //定义按键输入端口
    sbit KEY_DOWN=P3^4;
    sbit KEY_OK=P3^3;
    sbit KEY_CANCEL=P3^2;
    

    主函数

    while(1)
    {
    if(local_date!=base_date) //光标位置变化,则更新显示 
    		{
    	    DisplayUpdata();
    			base_date=local_date;
    		}
    
    		if(KEY_OK == 0)
    			{	 
    		 	 while(KEY_OK == 0);//等待松开按键								
    			 switch(local_date)
    				{
    					case 0:	 //添加指纹
    					Led_Green_On();
    					FPM10A_Add_Fingerprint();
    					Led_Green_Off();
    					local_date = 0;
    					DisplayUpdata();	
    					break; 
    												
    					case 1://搜索指纹
    					Led_Yellow_On();						
    					FPM10A_Find_Fingerprint();
    					Led_Yellow_Off();							
    					local_date = 1;
    					DisplayUpdata();																	
    					break;									
    					
    					case 2:	//清空指纹
    					FPM10A_Delete_All_Fingerprint();
    					local_date = 2;									
    					DisplayUpdata();
    		  		break;
    				}
    			}
    		  //下
    			if(KEY_DOWN == 0)
    			{
    			 while(KEY_DOWN == 0); //等待松开按键				
    	  	 if(local_date<=2)
    				{
    					local_date++;
    					if(local_date==3)
    						local_date=0;						
    				}				
    			}			
    		  //上
    			if(KEY_UP == 0)
    			{ 
    			  while(KEY_UP == 0); //等待松开按键
    		    if(local_date>=0)
    				{
    					local_date--;
    					if(local_date==-1)
    						local_date=2;	
    				}					
    			}			
    			Delay_Ms(100); //延时判断100MS检测一次		
    	}
    }
    

    实验步骤

    下载好程序之后模块会进行初始化,初始化过程,蜂鸣器会响,初始化完成会再响一次。
    初始化完成之后,选择添加搜索指纹,确认ok后按提示操作即可录入指纹
    搜索指纹是自动对比指纹库,把手指放上去验证即可。

    注意事项

    1,指纹模块的供电是3.3V,不能接5V供电,否则会烧坏;
    2,指纹模块工作的电流比较大,如果遇到通讯不正常,可能是供电不够,可以试试额外电源供电;
    3,指纹模块的通讯电平是3.3V,如果遇到不兼容3.3VTTL的单片机,可以加一个电平转换模块;

    总结

    程序还预留了录入指示灯和识别指示灯,需要的可以自己加LED;需要完整工程的可在评论留言获取。

    物联沃分享整理
    物联沃-IOTWORD物联网 » 51驱动AS608光学指纹识别模块:12864显示的精彩体验

    发表评论