当前位置:文档之家› 指纹识别模块程序及原理图

指纹识别模块程序及原理图

指纹识别模块程序及原理图
指纹识别模块程序及原理图

程序:

#include

#include

#define uchar unsigned char

#define uint unsigned int

#define Dbus P0

#define buffer1ID 0x01

#define buffer2ID 0x02

#define queren 0x88

#define tuichu 0x84

#define shanchu 0x82

sbit B0=B^0;

sbit B7=B^7;

sbit jidianqi=P3^6;

sbit RS=P2^2;

sbit RW=P2^1;

sbit E1=P2^0;

sbit LEDK=P3^4; //控制背光

sbit SCLK=P2^3;

sbit IO=P2^5;

sbit RST=P2^4;

uchar code ta[8]={0x00,0x51,0x09,0x10,0x05,0x02,0x11,0xbe}; uchar data a[7]; // 秒分时日月星期年

uchar dz[4]; //存键输入值

uchar mima[7];

uchar mimaID[6]={1,2,3,4,5,6};

uchar data K;

uchar data Key;

uint PageID;

uchar data querenma;

uchar sum[2];

int summaf,summas;

uchar code nian[]={"年"};

uchar code yue[]={"月"};

uchar code ri[]={"日"};

uchar code xinqi[]={"星期"};

uchar code mao=0x3a;

unsigned char code text1[]={" 请按指纹"};

unsigned char code text2[]={" 请再次按指纹"};

unsigned char code text3[]={" 指纹采集成功"};

unsigned char code text4[]={"请按任意键继续"};

unsigned char code text5[]={" 指纹采集失败"};

unsigned char code text6[]={"输入删去的指纹号"};

unsigned char code text7[]={" 删指纹号成功"};

unsigned char code text8[]={"按键一:增加指纹"};

unsigned char code text9[]={"按键二:删去指纹"};

unsigned char code text10[]={" 请重新按指纹"};

unsigned char code text11[]={"清空指纹库成功"};

unsigned char code text12[]={" 没搜索到指纹"};

unsigned char code text13[]={"请先按键再刷指纹"};

unsigned char code text14[]={" 请重新操作"};

unsigned char code text15[]={" 删去失败"};

unsigned char code text16[]={" 接收包出错"};

unsigned char code text17[]={" 编号为:"};

unsigned char code text18[]={"指纹已找到请进"};

unsigned char code text19[]={" 该指纹已存储"};

unsigned char code text20[]={" 请输入密码"};

unsigned char code text21[]={" 密码错误"};

unsigned char code text22[]={"按键三:更新密码"}; // @@@ unsigned char code text23[]={"请再次输入密码"};

unsigned char code text24[]={"两次输入的密码不"};

unsigned char code text25[]={"一致,请重新操作"};

unsigned char code text26[]={" 密码更新成功"};

另外:

void delay(uint tt)

{ uchar i;

while(tt--)

{

for(i=0;i<125;i++);

}

}

void initialize51()

{

SCON= 0x50; //串口方式1 //REN=1; 允许接收

PCON=0x80; //SMOD=1

TMOD= 0x20; //定时器1定时方式2

TH1= 0xff; //11.0592MHz 模块默认波特率为57600bps TL1= 0xff;

TR1= 1; //启动定时器

}

unsigned char Keycan(void) //按键扫描程序P1.0--P1.3为行线P1.4--P1.7为列线{

unsigned char rcode, ccode;

P1 = 0xF0; // 发全0行扫描码,列线输入

if((P1&0xF0) != 0xF0) // 若有键按下

{

delay(1);// 延时去抖动

if((P1&0xF0) != 0xF0)

{ rcode = 0xFE; // 逐行扫描初值

while((rcode&0x10) != 0)

{

P1 = rcode; // 输出行扫描码

if((P1&0xF0) != 0xF0) // 本行有键按下

{

ccode = (P1&0xF0)|0x0F;

//do{;}

while((P1&0xF0) != 0xF0); //等待键释放

return ((~rcode) + (~ccode)); // 返回键编码

}

else

rcode = (rcode<<1)|0x01; // 行扫描码左移一位

}

}

}

return 0; // 无键按下,返回值为0

}

void KeyDeal(unsigned char Key)

{ //unsigned char n;

if(Key!=0)

{

switch(Key)

{

case 0x11: K=1; break;

case 0x21: K=2; break;

case 0x41: K=3; break;

case 0x81: break; //K=funguanliyuan;

case 0x12: K=4; break;

case 0x22: K=5; break;

case 0x42: K=6; break;

case 0x82: K=34;break; //K=funshanchu;

case 0x14: K=7; break;

case 0x24: K=8; break;

case 0x44: K=9; break;

case 0x84: break; //K=funtuichu;

case 0x18: break; //K=shuazhiwen

case 0x28: K=0; break;

case 0x48: break;

case 0x88: break; //K=funqueren;

default: break;

}

}

}

//*************************************//12864

//读12864忙

void ReadBusy(void)

{

unsigned char ch;

cheak:Dbus=0xff;

RS=0;

RW=1;

E1=1;

ch=Dbus;

E1=0;

ch=ch|0x7f;

if(ch!=0x7f)

goto cheak;

}

//向LCD写命令

void WriteCommand(uchar command)

{

ReadBusy();

RW=0;

Dbus=command;

E1=1;

E1=0;

}

//向LCD写数据

void WriteData(uchar Lcd_data)

{

ReadBusy();

RS=1;

RW=0;

Dbus=Lcd_data;

E1=1;

E1=0;

}

//清屏函数清DDRAM

void Clrram (void)

{

WriteCommand(0x01);

}

//LCD12864初始化程序

void Lcd_int()

{

WriteCommand(0x30); //30---基本指令动作

WriteCommand(0x0c); //开显示,关游标

WriteCommand(0x01); //清屏,地址指针指向00H

WriteCommand(0x02);

}

//LCD12864显示时间

void playtime()

{

uchar i,n3,n4,y1,y2,r1,r2,s1,s2,f1,f2,m1,m2;

WriteCommand(0x80); //指定第一行显示位置

for(i=0;i<16;i++)

WriteData(text13[i]); //显示LCD12864并行显示

n3=a[6]>>4; n4=a[6]&0x0f;

WriteCommand(0x90); //指定第二行显示位置

WriteData(0x32);WriteData(0x30);WriteData(0x30+n3);WriteData(0x30+n4);

for(i=0;i<2;i++) WriteData(nian[i]);

y1=a[4]>>4; y2=a[4]&0x0f;

WriteData(0x30+y1);WriteData(0x30+y2);

for(i=0;i<2;i++) WriteData(yue[i]);

r1=a[3]>>4; r2=a[3]&0x0f;

WriteData(0x30+r1);WriteData(0x30+r2);

for(i=0;i<2;i++)WriteData(ri[i]);

WriteCommand(0x88); //指定第三行显示位置

for(i=0;i<4;i++)WriteData(xinqi[i]);

WriteData(a[5]+0x30);

s1=a[2]>>4;s2=a[2]&0x0f; f1=a[1]>>4;f2=a[1]&0x0f; m1=a[0]>>4;m2=a[0]&0x0f;

WriteCommand(0x98); //指定第四行显示位置

WriteData(0x30+s1);WriteData(0x30+s2);WriteData(mao);WriteData(0x30+f1);WriteData(0x30+f2);

WriteData(mao);WriteData(0x30+m1);WriteData(0x30+m2);

}

//*************************************//12864

//*********************************//ds1302控制

uchar r1302() //读数据ds1302

{ uchar i;

for(i=0;i<8;i++)

{

B>>=1;

B7 = IO;

SCLK=1;

SCLK=0;

}

return B;

}

void w1302(uchar co) // 写ds1302 单字节

{

uchar i;

B = co;

for(i=0;i<8;i++)

{

IO = B0; //原来是使用ACC寄存器,但不行,后改使用B寄存器后才正常运行???

SCLK=1;

SCLK=0;

B>>=1;

}

}

void w(uchar a, uchar d) //寻址,写数

{

RST = 0;

SCLK = 0;

RST = 1;

w1302(a);

w1302(d);

SCLK = 1;

RST = 0;

}

uchar r(uchar a) //寻址,读数

{

uchar r;

RST = 0;

SCLK = 0;

RST = 1;

w1302(a);

r=r1302();

SCLK = 1;

RST = 0;

return r;

}

void wclo(uchar *p) //写多字节ds1302 {

uchar i;

w(0x8e,0x00); //写允许

RST=0;

SCLK=0;

RST=1;

w1302(0xbe); //写多字节命令

for(i=0;i<8;i++)

w1302(*(p+i)); //写时钟数据

w(0x00,0x50); //??? 启动定时器

SCLK=1;

RST=0;

}

void rclo(uchar *p) //读出多字节ds1302 {

uchar i;

RST=0;

SCLK=0;

RST=1;

w1302(0xbf);

for(i=0;i<7;i++)

*(p+i) = r1302(); //读出时钟数据

SCLK=1;

RST=0;

}

//***************************************//

void SFG_getimage() //录入指纹图像{

uchar i;

SBUF=0xef;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=0X03;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0X00;

TI=0;

summaf=0x05;

SBUF=summaf;

while(TI==0);

TI=0;

for(i=0;i<9;i++)

{

while(RI==0);

RI=0;}

while(RI==0);

RI=0;

querenma=SBUF;

while(RI==0);

RI=0;

sum[1]=SBUF;

while(RI==0);

RI=0;

sum[0]=SBUF;

summas=(sum[1]<<8)+sum[0];

}

void SFG_genchar(uchar bufferID) //生成特征并存于charbuffer1/2 调用后单片机波特率变化@@@ {

uchar i;

SBUF=0xef;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=0X04;

while(TI==0);

TI=0;

SBUF=0X02;

while(TI==0);

TI=0;

SBUF=bufferID;

while(TI==0);

TI=0;

summaf=0x07+bufferID; sum[0]=summaf;

sum[1]=summaf>>8; SBUF=sum[1];

while(TI==0)

TI=0;

SBUF=sum[0];

while(TI==0)

TI=0;

for(i=0;i<9;i++)

{

while(RI==0);

RI=0;}

while(RI==0);

RI=0;

querenma=SBUF; while(RI==0);

RI=0;

sum[1]=SBUF;

while(RI==0);

RI=0;

sum[0]=SBUF;

summas=(sum[1]<<8)+sum[0];

}

void SFG_regmodel() //合并生成模板{

uchar i;

SBUF=0xef;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=0X03;

while(TI==0);

TI=0;

SBUF=0X05;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

summaf=0x09;

SBUF=summaf; //校验和

while(TI==0);

TI=0;

for(i=0;i<9;i++)

{

while(RI==0);

RI=0;}

while(RI==0);

RI=0;

querenma=SBUF;

while(RI==0);

RI=0;

sum[1]=SBUF;

while(RI==0);

RI=0;

sum[0]=SBUF;

summas=(sum[1]<<8)+sum[0];

}

void SFG_storechar(uint pageID) //储存模板ID=1010也储存成功ID>=1011 querenma=0x18?@@@

{

uchar i,ID1,ID2;

SBUF=0xef;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=0X06;

while(TI==0);

TI=0;

SBUF=0X06;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

ID1=pageID;ID2=pageID>>8; SBUF=ID2;

while(TI==0);

TI=0;

SBUF=ID1;

while(TI==0);

TI=0;

summaf=0x0e+ID1+ID2; sum[0]=summaf;

sum[1]=summaf>>8;

SBUF=sum[1];

while(TI==0);

TI=0;

SBUF=sum[0];

while(TI==0);

TI=0;

for(i=0;i<9;i++)

{

while(RI==0);

RI=0;}

while(RI==0);

querenma=SBUF;

while(RI==0);

RI=0;

sum[1]=SBUF;

while(RI==0);

RI=0;

sum[0]=SBUF;

summas=(sum[1]<<8)+sum[0];

}

void SFG_empty() //清空指纹库{

uchar i;

SBUF=0xef;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=0X03;

while(TI==0);

TI=0;

SBUF=0X0d;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

summaf=0x11;

SBUF=summaf;

while(TI==0);

TI=0;

for(i=0;i<9;i++)

{

while(RI==0);

RI=0;}

while(RI==0);

RI=0;

querenma=SBUF;

while(RI==0);

RI=0;

sum[1]=SBUF;

while(RI==0);

RI=0;

sum[0]=SBUF;

summas=(sum[1]<<8)+sum[0];

}

void SFG_fastsearch(uchar bufferID) //搜索指纹返回指纹ID号sum、pagenum>255都会使程序卡@@@ {

uchar i,ID1,ID2;

SBUF=0xef;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=0X08;

while(TI==0);

TI=0;

SBUF=0X1b;

while(TI==0);

TI=0;

SBUF=bufferID;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=0;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=180;

while(TI==0);

TI=0;

summaf=9+0x1b+bufferID+180; sum[0]=summaf;

sum[1]=summaf>>8;

SBUF=sum[1];

TI=0;

SBUF=sum[0];

while(TI==0);

TI=0;

for(i=0;i<9;i++)

{

while(RI==0);

RI=0;}

while(RI==0);

RI=0;

querenma=SBUF;

while(RI==0);

RI=0;

ID1=SBUF;

while(RI==0);

RI=0;

ID2=SBUF; //接收到的ID号

while(RI==0);

RI=0;

while(RI==0);

RI=0;

while(RI==0);

RI=0;

sum[1]=SBUF;

while(RI==0);

RI=0;

sum[0]=SBUF;

summas=(sum[1]<<8)+sum[0];

//PageID=ID1;

PageID=(ID1<<8)+ID2;

}

void SFG_enroll() //自动注册模板返回存储ID =录图像+合并生成模板+储存模板{

uchar i,ID1,ID2;

SBUF=0xef;

while(TI==0);

TI=0;

SBUF=0X01;

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=0X03;

while(TI==0);

TI=0;

SBUF=0X10;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

summaf=0x14;

SBUF=summaf; //校验和while(TI==0);

TI=0;

for(i=0;i<9;i++)

{

while(RI==0);

RI=0;}

while(RI==0);

querenma=SBUF;

while(RI==0);

RI=0;

ID1=SBUF;

while(RI==0);

RI=0;

ID2=SBUF;

while(RI==0);

RI=0;

sum[1]=SBUF;

while(RI==0);

RI=0;

sum[0]=SBUF;

summas=(sum[1]<<8)+sum[0];

//PageID=ID1;

PageID=(ID1<<8)+ID2;

}

void SFG_deletchar(uint pageID) //删除指纹校验和在2字节的页码处应分高低字节相加{

uchar i,ID1,ID2;

SBUF=0xef;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0XFF;

while(TI==0);

TI=0;

SBUF=0X01;

while(TI==0);

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=0X07;

while(TI==0);

TI=0;

SBUF=0X0c;

while(TI==0);

TI=0;

ID1=pageID;ID2=pageID>>8; SBUF=ID2;

while(TI==0);

TI=0;

SBUF=ID1;

while(TI==0);

TI=0;

SBUF=0X00;

while(TI==0);

TI=0;

SBUF=1;

while(TI==0);

TI=0;

summaf=0x15+ID1+ID2; sum[0]=summaf;

sum[1]=summaf>>8;

SBUF=sum[1];

while(TI==0);

TI=0;

SBUF=sum[0];

while(TI==0);

TI=0;

for(i=0;i<9;i++)

{

while(RI==0);

RI=0;}

while(RI==0);

RI=0;

指纹识别模块程序及原理图

程序: #include #include #define uchar unsigned char #define uint unsigned int #define Dbus P0 #define buffer1ID 0x01 #define buffer2ID 0x02 #define queren 0x88 #define tuichu 0x84 #define shanchu 0x82 sbit B0=B^0; sbit B7=B^7; sbit jidianqi=P3^6; sbit RS=P2^2; sbit RW=P2^1; sbit E1=P2^0; sbit LEDK=P3^4; //控制背光 sbit SCLK=P2^3; sbit IO=P2^5; sbit RST=P2^4; uchar code ta[8]={0x00,0x51,0x09,0x10,0x05,0x02,0x11,0xbe}; uchar data a[7]; // 秒分时日月星期年 uchar dz[4]; //存键输入值 uchar mima[7]; uchar mimaID[6]={1,2,3,4,5,6}; uchar data K; uchar data Key; uint PageID; uchar data querenma; uchar sum[2]; int summaf,summas; uchar code nian[]={"年"}; uchar code yue[]={"月"};

uchar code ri[]={"日"}; uchar code xinqi[]={"星期"}; uchar code mao=0x3a; unsigned char code text1[]={" 请按指纹"}; unsigned char code text2[]={" 请再次按指纹"}; unsigned char code text3[]={" 指纹采集成功"}; unsigned char code text4[]={"请按任意键继续"}; unsigned char code text5[]={" 指纹采集失败"}; unsigned char code text6[]={"输入删去的指纹号"}; unsigned char code text7[]={" 删指纹号成功"}; unsigned char code text8[]={"按键一:增加指纹"}; unsigned char code text9[]={"按键二:删去指纹"}; unsigned char code text10[]={" 请重新按指纹"}; unsigned char code text11[]={"清空指纹库成功"}; unsigned char code text12[]={" 没搜索到指纹"}; unsigned char code text13[]={"请先按键再刷指纹"}; unsigned char code text14[]={" 请重新操作"}; unsigned char code text15[]={" 删去失败"}; unsigned char code text16[]={" 接收包出错"}; unsigned char code text17[]={" 编号为:"}; unsigned char code text18[]={"指纹已找到请进"}; unsigned char code text19[]={" 该指纹已存储"}; unsigned char code text20[]={" 请输入密码"}; unsigned char code text21[]={" 密码错误"}; unsigned char code text22[]={"按键三:更新密码"}; // @@@ unsigned char code text23[]={"请再次输入密码"}; unsigned char code text24[]={"两次输入的密码不"}; unsigned char code text25[]={"一致,请重新操作"}; unsigned char code text26[]={" 密码更新成功"}; 另外: void delay(uint tt) { uchar i; while(tt--) { for(i=0;i<125;i++); } } void initialize51() {

指纹识别系统

指纹识别系统 1.1 指纹识别系统原理 指纹识别系统的组成原理。如图1-1所示。图中的学习模块负责采集用户指纹数据,对指纹图像进行预处理,提取这些指纹的特征,作为将来的比对模板存人数据库。而识别模块则负责采集和处理指纹图像,在提取特征后与数据库中的指纹模板进行比对,然后判断是否匹配.得出结论。整个系统的核心就是图像处理、特征提取以及指纹比对。 图1-1 1.2 指纹采集与指纹图像处理方法 目前,主要的指纹采集方法有两种:一种是光学采集器;另一种是用半导体传感器。光学采集器采集指纹是通过把手指沾上油墨后按在白纸上,然后用摄像机把图像转换为电信号。光学采集受外界干扰小、采集精度较高,但是数据量较大,因此处理时问较长。而对于半导体传感器来说,手指的温度、湿度对其测量结果有影响,但是数据量不大,处理比较方便。随着半导体技术的发展,半导体传感器的成本低、体积小、方便集成等优点逐步体现,它已逐步代替光学采集器。指纹鉴定过程的第一个阶段是指纹图像的采集阶段,也就是指纹模板的录A阶段。为了初步确定图像预处理方法,我们必须首先了解指纹传感器获得的图像的尺寸和质量。根据不同的指纹传感器,我们设计不同的方案进行图像采集,并将从各个图中提出特征点储存到数据库中,来产生“活模板”,为后面的指纹鉴定做准备。 指纹图像处理是整个指纹识别过程的核心。常见的指纹图像处理包括滤波增强、二值化、细化、提取特征点四个步骤。在采集指纹图像的过程中,由于采集环境,皮肤表面的性质,采集设备的差异等各种因素的影响,采集的图像会不同程度的受到各种噪声的干扰,从而影响了采集图像的质量。所以实际的指纹图像首先通过一个滤波增强来改善图像的质量,恢复

指纹识别原理-IC及模组介绍(完整资料).doc

此文档下载后即可编辑 指纹识别原理及模组工艺 概述 指纹识别的背景知识 我们手掌及其手指、脚、脚趾内侧表面的皮肤凸凹不平产生的纹路会形成各种各样的图案。这些纹路的存在增加了皮肤表面的摩擦力,使得我们能够用手来抓起重物。人们也注意到,包括指纹在内的这些皮肤的纹路在图案、断点和交叉点上各不相同,也就是说,是唯一的。依靠这种唯一性,我们就可以把一个人同他的指纹对应起来,通过对他的指纹和预先保存的指纹进行比较,就可以验证他的真实身份。这种依靠人体的身体特征来进行身份验证的技术称为生物识别技术,指纹识别是生物识别技术的一种。 目前,从实用的角度看,指纹识别技术是优于其他生物识别技术的身份鉴别方法。这是因为指纹各不相同、终生基本不变的特点已经得到公认。 最早的指纹识别系统应用与警方的犯罪嫌疑人的侦破,已经有30多年的历史,这为指纹身份识别的研究和实践打下了良好的技术基础。特别是现在的指纹识别系统已达到操作方便、准确可靠、价格适中的阶段,正快速的应用于民用市场。 指纹识别系统通过特殊的光电转换设备和计算机图像处理技术,对活体指纹进行采集、分析和比对,可以迅速、准确地鉴别出个人身份。 系统一般主要包括对指纹图像采集、指纹图像处理、特征提取、特征值的比对与匹配等过程。现代电子集成制造技术使得指纹图像读取和处理设备小型化,同时飞速发展的个人计算机运算速度提供了在微机甚至单片机上可以进行指纹比对运算的可能,而优秀的指纹处理和比对算法保证了识别结果的准确性。指纹自动识别技术正在从科幻小说和好莱坞电影中走入我们实际生活中,就在今天,您不必随身携带那一串钥匙,只需手指一按,门就会打开;也不必记

指纹识别模块说明书

指纹识别模块实验 注:此说明书适用于EL-EMCU-I实验箱、EXP-89S51/52/53CPU板。 一、实验目的 掌握指纹模块的开发协议; 掌握16C550芯片的编程方法; 二、实验设备 计算机,KEIL UVISION2环境,EL-EMCU-I实验箱,直连串口电缆、交叉串口电缆(针对针),导线,短接块。 三、基本原理 指纹识别模块采用MCU和PC两种控制方法,供用户灵活选用。其指纹模块采用深圳十指科技的TF-MD-M12开发模块,MCU端的外围电路由通过芯片16C550芯片进行并口到串口的转换,PC端的外围电路用MAX3232控制,模块的电源由实验箱上的接口插座提供。下面将具体介绍一下各部分的组成及其原理。 TF-MD-M12开发模块的功能特点: ◇先进的指纹识别算法(商业); ◇高速算法,500人指纹只要0.43 秒; ◇1:N,1:1 比对(两种可选); ◇用户可分多级权限管理(1、2、3); ◇多级的安全级别自主设置,可更多应用于不同场所; ◇采用高精密的光学成像元件,识别准确; ◇体积小,电路只有:40*58mm,易于集成; ◇功能高度集成,存于DSP中,不用再加电路板; ◇标准接口协议,开发简单; ◇采用面光源,成像速度快; ◇内部采用高级数字处理器DSP,处理速度快; ◇识别率高,最高可达:0.00001% ; ◇稳定性好,四年不断升级和优化; ◇具低电压报警功能; ◇微功耗设计适于电池供电; ◇主板低频设计抗外部电磁干扰; ◇主要供外销厂家和集成商,开发和集成产品; ◇设计精巧适于嵌入指纹锁/小指纹门禁机/手持指纹识别设备; TF-MD-M12开发模块的主要性能指标: ◇电路板尺寸(mm)58×40

指纹识别原理-IC及模组介绍

指纹识别原理及模组工艺 概述 指纹识别的背景知识 我们手掌及其手指、脚、脚趾侧表面的皮肤凸凹不平产生的纹路会形成各种各样的图案。这些纹路的存在增加了皮肤表面的摩擦力,使得我们能够用手来抓起重物。人们也注意到,包括指纹在的这些皮肤的纹路在图案、断点和交叉点上各不相同,也就是说,是唯一的。依靠这种唯一性,我们就可以把一个人同他的指纹对应起来,通过对他的指纹和预先保存的指纹进行比较,就可以验证他的真实身份。这种依靠人体的身体特征来进行身份验证的技术称为生物识别技术,指纹识别是生物识别技术的一种。 目前,从实用的角度看,指纹识别技术是优于其他生物识别技术的身份鉴别方法。这是因为指纹各不相同、终生基本不变的特点已经得到公认。 最早的指纹识别系统应用与警方的犯罪嫌疑人的侦破,已经有30多年的历史,这为指纹身份识别的研究和实践打下了良好的技术基础。特别是现在的指纹识别系统已达到操作方便、准确可靠、价格适中的阶段,正快速的应用于民用市场。 指纹识别系统通过特殊的光电转换设备和计算机图像处理技术,对活体指纹进行采集、分析和比对,可以迅速、准确地鉴别出个人身份。 系统一般主要包括对指纹图像采集、指纹图像处理、特征提取、特征值的比对与匹配等过程。现代电子集成制造技术使得指纹图像读取和处理设备小型化,同时飞速发展的个人计算机运算速度提供了在微机甚至单片机上可以进行指纹比对运算的可能,而优秀的指纹处理和比对算法保证了识别结果的准确性。指纹自动识别技术正在从科幻小说和好莱坞电影中走入我们实际生活中,就在今天,您不必随身携带那一串钥匙,只需手指一按,门就会打开;也不必记住那烦人的密码,利用指纹就可以提款、计算机登录等等。指纹识别技术主要涉及四个功能:读取指纹图像、提取特征、保存数据和比对。 在一开始,通过指纹读取设备读取到人体指纹的图像,取到指纹图像之后,要对原始图像进行初步的处理,使之更清晰。 接下来,指纹辨识软件建立指纹的数字表示——特征数据,一种单方向的转换,可以从指纹转换成特征数据但不能从特征数据转换成为指纹,而两枚不同的指纹不会产生相同的特征数据。软件从指纹上找到被称为“节点”(minutiae)的数据点,也就是那些指纹纹路的分叉、终止或打圈处的坐标位置,这些点同时具有七种以上的唯一性特征。因为通常手指上平均具有70个节点,所以这种方法会产生大约490个数据。有的算法把节点和方向信息组合产生了更多的数据,这些方向信息表明了各个节点之间的关系,也有的算法还处理整幅指纹图像。总之,这些数据,通常称为模板,保存为1K大小的记录。无论它们是怎样组成的,至今仍然没有一种模板的标准,也没有一种公布的抽象算法,而是各个厂商自行其是。 文案

(完整版)第二章指纹识别的原理和方法

第二章指纹识别的原理和方法 指纹识别的采集及其参数[15] 指纹具有惟一性(随身携带、难以复制、人人不同、指指相异)。根据指纹学理论,将两人指纹分别匹配上12个特征时的相同几率仅为1/1050。指纹还具有终身基本不变的相对稳定性。指纹在胎儿六个月时已完全形成,随着年龄的增长,尽管人的指纹在外形大小、纹线粗细上会有变化,局部纹线之间也可能出现新细线特征,但从总体上看,同一手指的指纹纹线类型、细节特征的总体布局等无明显变化。指纹的这些特点为身份鉴定提供了客观依据。 指纹识别过程可以分为4个步骤:采集指纹图像、提取特征、保存数据和比对。通过指纹读取设备读取到人体指纹的图像,取到指纹图像之后,要对原始图像进行初步的处理,使之更清晰。指纹辨识软件建立指纹的数字表示特征数据,软件从指纹上找到被称为“节点”(minutiae)的特征点,这些数据(通常称为模板),保存为1K大小的记录。最后,通过计算机模糊比较的方法,把两个指纹的模板进行比较,计算出它们的相似程度,最终得到两个指纹的匹配结果。 2.2.1指纹图像的采集[16][17][18] 指纹采集模式主要分为“离线式”和“在线式”两种。所谓“离线式”就是指在指纹采集时,利用某些中间介质(如油墨和纸张)来获取指纹图像,在通过一定的技术手段将图像数字化输入计算机,它属于非实时采集。目前“离线式”采集方式在大多数场合已经消失。所谓“在线式”是通过与计算机联机的先进指纹传感器的专用指纹采集设备,将真实的人体指纹直接变成数字图像数据,实时传输给计算机。 基于指纹传感器的“在线式”实时采集设备以其操作简单、实时性强、采集效率高、图像质量好等优点,广泛应用于自动指纹识别领域。 指纹传感器是采集指纹的装置,是一切自动指纹识别系统的必备设备,从原理上,目前见到的指纹传感器分下面3类: (1)光学录入

指纹识别模块指导

一.准备实验需要的设备。 硬件:试验箱、电源线、串口线、网线、指纹扫描模块、PC机一台。 软件:虚拟机、超级终端、FTP软件。 二.连线方式 将指纹识别模块安装在经典2410DVP试验箱的168扩展槽中。 三.实验原理 指纹模块是面向广阔的锁具市场、保险箱(柜)、安防及工控市场,推出的。她是由32位高性能可编程处理器、活体指纹采集芯片和指纹识别核心固件等构成的一个独立的嵌入式指纹识别系统。 本指纹模块具有200枚以上指纹存储能力,可扩展到上千枚,具备1秒以内的指纹比对性能,支持1:1和1:N两种比对模式,能够任意兼容各类指纹传感芯片,允许客户内置应用程序,减化应用方案,节省开发成本。 本模块可提供全面的ODM定制服务,时时刻刻、轻轻松满足您的个性化指纹产品需求。 功能用途 指纹模块是嵌入式指纹产品的核心。她面向锁具、安防和工控企业,为他们提供一个“快速应用指纹技术”的硬件平台。在这个平台上,企业只需专注于原有产品,无须关注指纹传感器的接入、指纹注册比对等远离其核心价值的技术,从而在不增加研发成本的同时提升原有产品的应用价值。 指纹模块功能: 活体指纹识别 脱机指纹注册(250枚) 脱机指纹比对(1:1、1:N) 可内置应用程序(固件) 可接入任意指纹传感器件(光学、半导体电容、半导体温感、半导体压感、按压式、滑动式)丰富的接口支持(32位GPIO、SPI、UART、I2C、RF) 指纹模块应用范围: 指纹门锁 指纹保险柜(箱)

指纹文件柜 指纹工控设备 指纹遥控器 指纹通关设备 指纹POS机 指纹IC卡读卡器 指纹数码产品 指纹电气开关等 技术规格 指纹模块一般参数: 模块优势 可编程直接在模块的主控MCU中写入应用程序 兼容性强能够兼容全球各种指纹传感芯片(光感、电容、电感、温感、压感,滑动式和按压式)(用户可指定) 指纹容量大片内可存储250枚以上指纹,支持片外扩展 注册比对性能优越指纹算法经过多年商用,嵌入式环境下FAR、FRR性能优良 服务好提供24小时技术支持和全面的ODM定制服务(只需提供规格书) 四、程序分析 在实验代码中我们已经提供了fingermap.c文件,其中对指纹模块的操作进行了封装,用户在使用中只需要调用其中的对应函数就可以实验对应的功能,当然也可以对API进行

指纹识别的原理和方法

指纹识别的原理和方法 一、概述 指纹识别的背景知识 我们手掌及其手指、脚、脚趾内侧表面的皮肤凸凹不平产生的纹路会形成各种各样的图案。这些纹路的存在增加了皮肤表面的摩擦力,使得我们能够用手来抓起重物。人们也注意到,包括指纹在内的这些皮肤的纹路在图案、断点和交叉点上各不相同,也就是说,是唯一的。依靠这种唯一性,我们就可以把一个人同他的指纹对应起来,通过对他的指纹和预先保存的指纹进行比较,就可以验证他的真实身份。这种依靠人体的身体特征来进行身份验证的技术称为生物识别技术,指纹识别是生物识别技术的一种。 目前,从实用的角度看,指纹识别技术是优于其他生物识别技术的身份鉴别方法。这是因为指纹各不相同、终生基本不变的特点已经得到公认。 最早的指纹识别系统应用与警方的犯罪嫌疑人的侦破,已经有30多年的历史,这为指纹身份识别的研究和实践打下了良好的技术基础。特别是现在的指纹识别系统已达到操作方便、准确可靠、价格适中的阶段,正快速的应用于民用市场。 指纹识别系统通过特殊的光电转换设备和计算机图像处理技术,对活体指纹进行采集、分析和比对,可以迅速、准确地鉴别出个人身份。 系统一般主要包括对指纹图像采集、指纹图像处理、特征提取、特征值的比对与匹配等过程。现代电子集成制造技术使得指纹图像读取和处理设备小型化,同时飞速发展的个人计算机运算速度提供了在微机甚至单片机上可以进行指纹比对运算的可能,而优秀的指纹处理和比对算法保证了识别结果的准确性。 指纹自动识别技术正在从科幻小说和好莱坞电影中走入我们实际生活中,就在今天,您不必随身携带那一串钥匙,只需手指一按,门就会打开;也不必记住那烦人的密码,利用指纹就可以提款、计算机登录等等。 指纹识别技术主要涉及四个功能:读取指纹图像、提取特征、保存数据和比对。 在一开始,通过指纹读取设备读取到人体指纹的图像,取到指纹图像之后,要对原始图像进行初步的处理,使之更清晰。 接下来,指纹辨识软件建立指纹的数字表示——特征数据,一种单方向的转换,可以从指纹转换成特征数据但不能从特征数据转换成为指纹,而两枚不同的指纹不会产生相同的特征数据。软件从指纹上找到被称为―节点‖(minutiae)的数据点,也就是那些指纹纹路的分叉、终止或打圈处的坐标位置,这些点同时具有七种以上的唯一性特征。因为通常手指上平均具有70个节点,所以这种方法会产生大约490个数据。 有的算法把节点和方向信息组合产生了更多的数据,这些方向信息表明了各个节点之间的关系,也有的算法还处理整幅指纹图像。总之,这些数据,通常称为模板,保存为1K大小的记录。无论它们是怎样组成的,至今仍然没一流种模板的标准,也没一流种公布的抽象算法,而是各个厂商自行其是。 最后,通过计算机模糊比较的方法,把两个指纹的模板进行比较,计算出它们的相似程度,最终得到两个指纹的匹配结果。 指纹识别的原理和方法 二. 取得指纹图象 1.取象设备原理 取像设备分成两类:光学、硅晶体传感器和其他。

指纹模块资料

FM-180 指纹识别模块用户手册V1.1 FM-180 指纹识别模块 用户手册 系统概述 系统特色 FM-180 亮背景光学头指纹识别设备采用光学指纹传感器,由高性能DSP 处理器和FLASH 等芯片构成,具有指纹图像处理、模板提取、模板匹配、指纹搜索和模板存储等项功能。和同类指纹产品相比,FM-180 指纹识别设备具备下列特色:●自主知识产权光学指纹采集头,设备硬件和指纹算法等所有技术,均由本公司自主开发。●指纹适应性强指纹图像读取过程中,采用自适应参数调节机制,使干湿手指都有较好的成像质量,适用人群更广泛。●价格低廉设备采用自行开发的光学采集头,成本大幅降低。●算法性能优异FM-180 指纹识别设备算法根据光学头成像原理另行设计。算法对变形、质量差指纹均有较好的校正和容错性能。●简单易用方便扩充无需具备指纹识别专业知识即可应用。用户按照FM-180 指纹识别设备提供的丰富控制指令,可自行开发出功能强大的指纹识别应用系统。 指纹系统中几个基本概念 ●指纹特征指纹算法是从指纹图像中提取的特征,代表了指纹的信息。指纹的保存、比对、搜索都是通过操作指纹特征来完成。●1:1 比对两个指纹特征比较,返回信息:匹配,或者不匹配。●1:N 搜索在N 个指纹特征中找和当前1 个指纹特征匹配的指纹特征。返回信息:没有匹配特征,或者有匹配特征,同时返回匹配的特征编号。 N=19600bps 162 FM-180 指纹识别模块用户手册V1.1 系统参数与接口 供电电压:DC 3.6~6.0V 供电电流: 工作电流:<120mA 峰值电流:<150mA 指纹图像录入时间:<1.0秒 窗口面积: 14 ╳ 18 mm 匹配方式: 比对方式(1:1) 搜索方式(1:N) 特征文件:256字节 模板文件:512字节 162/ 枚

指纹识别程序和原理图

#include #include #define uchar unsigned char #define uint unsigned int #define Dbus P0 #define buffer1ID 0x01 #define buffer2ID 0x02 #define queren 0x88 #define tuichu 0x84 #define shanchu 0x82 sbit B0=B^0; sbit B7=B^7; sbit jidianqi=P3^6; sbit RS=P2^2; sbit RW=P2^1; sbit E1=P2^0; sbit LEDK=P3^4; //控制背光 sbit SCLK=P2^3; sbit IO=P2^5; sbit RST=P2^4; uchar code ta[8]={0x00,0x51,0x09,0x10,0x05,0x02,0x11,0xbe}; uchar data a[7]; // 秒分时日月星期年 uchar dz[4]; //存键输入值 uchar mima[7]; uchar mimaID[6]={1,2,3,4,5,6}; uchar data K; uchar data Key; uint PageID; uchar data querenma; uchar sum[2]; int summaf,summas; uchar code nian[]={"年"}; uchar code yue[]={"月"}; uchar code ri[]={"日"};

RT1011指纹识别仪模块用户手册

指纹识别仪模块用户手册 1 FLASH存储结构 a)存储结构: 地址 内容 大小 0x0000—0x7fff Codes 32k words 0x8000—0x87ff 系统存储区 2k words 0x8800—0xffff 指纹库 30k words—结束 b)该存储结构由ROM系统定义,若客户自行开发整套DSP软件,则不受此结构限 制; c)指纹库大小随FLASH容量而变,系统会自动判别。 2 系统参数存储区结构 d)系统参数存储区结构: 页号 内容 注解 FLASH物理地址 (字节地址) 0x8000 0 保留 0x8200 1 参数表 0x8400 2 用户记事本 0x8600 3 保留 0x8800 4 保留 0x8a00 5 保留 0x8c00 6 保留 0x8e00 7 指纹库索引表 可供索引2048枚指纹 e)系统参数存储区分为8页,每页512字节。 3 用户记事本 在FLASH中开辟了一个512字节的存储区域作为用户记事本,该记事本逻辑上被分成16页,每页32字节。上位机可以通过PS_WriteNotepad指令和PS_ReadNotepad指令访问任意一页。注意写记事本某一页的时候,该页32字节的内容被整体写入,原来的内容被覆盖。 4 缓冲区与指纹库 芯片内设有一个72K字节的图像缓冲区与二个512 bytes(256字)大小的特征文件缓冲区,名字分别称为:ImageBuffer,CharBuffer1,CharBuffer2。用户可以通过指令读写任意一个缓冲区。CharBuffer1或CharBuffer2既可以用于存放普通特征文件也可以用于存放模板特征文件。通过UART口上传或下载图像时为了加快速度,只用到像素字节的高四位,即将两个像素合成一个字节传送。通过USB口则是整8位像素。 指纹库容量根据挂接的FLASH容量不同而改变,系统会自动判别。指纹模板按照序号存放,序号定义为:0—N-1(N指指纹库容量)。用户只能根据序号访问指纹库内容。 5 特征与模板 指纹特征文件大小为256字节,包含特征点信息与总体信息;模板大小为512字节,是两个相同指纹特征之和。

基于单片机指纹识别系统设计

任务书 课程设计题目:指纹识别 功能简述: 1)根据所学的知识和能力,设计程序可以实现根据指纹的大小、形状等特征,识别出不同的指纹。 2)利用按键标志当前指纹识别的状态,例如录入状态,识别状态,清楚状态;利用液晶1602能够显示当前指纹识别的状态信息。 3)利用继电器,对当前信息的判断,例如提醒当前指纹识别错误;利用蜂鸣器和LED等提醒当前指纹识别是否正确

目录 第一章绪论…………………………………………………….. 1.1、指纹识别中的基本概念………………………………… 1.2 指纹识别的发展前景……………………………………… 1.3、指纹识别课题设计的内容与意义……………………….. 第二章方案选择……………………………………………… 2.1 系统原理图设计…………………………………………… 2.2方案说明……………………………………………………… 2.3 方案比较…………………………………………………… 2.4 方案选择………………………………………………………第三章硬件设计………………………………………………3.1 AT89C52单片机设计……………………………………… 3.2 电源电路设计……………………………………………… 3.3 按键控制部分电路………………………………………… 3.4 LED指示灯电路…………………………………………3.5 蜂鸣器电路………………………………………………3.6 指纹传感器模块………………………………………… 第四章软件程序设计…………………………………………. 4.1程序流程图…………………………………………………4.2程序…………………………………………………………. 第五章调试…………………………………………………… 5.1硬件调试……………………………………………………. 5.2软件调试……………………………………………………

指纹识别原理及其应用

指纹识别原理及其应用 1 指纹识别的原理和方法 1.1 指纹的特征与分类 指纹识别学是一门古老的学科,它是基于人体指纹特征的相对稳定与唯一这一统计学结果发展起来的。实际应用中,根据需求的不同,可以将人体的指纹特征分为:永久性特征、非永久性特征和生命特征[5]。 永久性特征包括细节特征(中心点、三角点、端点、叉点、桥接点等)和辅助特征(纹型、纹密度、纹曲率等元素),在人的一生中永不会改变,在手指前端的典型区域中最为明显,分布也最均匀[1]。细节特征是实现指纹精确比对的基础,而纹形特征、纹理特征等则是指纹分类及检索的重要依据。人类指纹的纹形特征根据其形态的不同通常可以分为“弓型、箕型、斗型”三大类型,以及“孤形、帐形、正箕形、反箕形、环形、螺形、囊形、双箕形和杂形”等9种形态[1]。纹理特征则是由平均纹密度、纹密度分布、平均纹曲率、纹曲率分布等纹理参数构成。纹理特征多用于计算机指纹识别算法的多维分类及检索。 非永久性特征由孤立点、短线、褶皱、疤痕以及由此造成的断点、叉点等元素构成的指纹特征,这类指纹有可能产生、愈合、发展甚至消失[1]。 指纹的生命特征与被测对象的生命存在与否密切相关。但它与人体生命现象的关系和规律仍有待进一步认识。目前它已经成为现代民用指纹识别应用中越来越受关注的热点之一。 1.2 指纹识别的原理和方法 指纹识别技术主要涉及四个功能:读取指纹图像、提取特征、保存数据和比对。通过指纹读取设备读取到人体指纹的图像,然后要对原始图像进行初步的处理,使之更清晰,再通过指纹辨识软件建立指纹的特征数据。软件从指纹上找到被称为“节点”(minutiae)的数据点,即指纹纹路的分叉、终止或打圈处的坐标位置,这些点同时具有七种以上的唯一性

基于STM32单片机开发光学指纹识别模块

基于STM32单片机开发光学指纹识别模块(FPM10A)全教程收藏人:共同成长888 2014-05-08 | 阅:25 转:0 | 来源 | 分享 基于STM32单片机开发光学指纹识 别模块(FPM10A)全教程 1.平台 首先我使用的是奋斗 STM32 开发板 MINI板 光学指纹识别模块(FPM10A)

2.购买指纹模块,可以获得三份资料 1.简要使用说明 2.使用指纹模块的功能函数 3.FPM10A用户手册. 3.硬件搭建 根据使用说明:FPM 10A使用标准的串口与外界通信,默认的波特率为57600,可以与任何单片机,ARM,DSP等带串口的设备进行连接,请注意电平转换,连接电脑需要进行电平转换,比如MAX232电路。 FPM10A光学指纹模块共有5个管脚 1 为 VCC 电源的正极接 3.6V – 5.5V的电压均可。 2 为 GND 电源的负极接地。 3 为 TXD 串口的发送。 4 为 RXD 串口的接收。 5 为 NC 悬空不需要使用。 奋斗板上已经有5V的管脚,可以直接供给指纹模块, 这里需要注意的是,指纹模块主要通过串口进行控制,模块和STM32单片机连接的时候,需要进行电平转换, 这样只要把这个转接板插入STM32,接上5V的电,就可以工作了,将模块的发送端接转接板的接收端,接收端接转接板的发送端。 这样,我们的硬件平台就搭建好了! 4.模块的测试工作 模块成功上电后,指纹采集窗口会闪一下,表示自检正常,如果不闪,请仔细检查电源,是否接反,接错等。指纹模块使用120MHZ的DSP全速工作,工作时芯片有一些热,经过严格的测试,这是没有问题的可以放心使用,在不使用的时候可以关闭电源,以降低功耗。 5.现在我们要进入编程环节了 指纹模块主要是通过串口进行控制,所以这里我们需要用到单片机的串口模块。

电子指纹锁说明书介绍

电子指纹锁说明书 一、 特点 本产品应用了先进的指纹识别技术,具有存储指纹容量大,拒真率和认假率低,识别时间短,安全性高等特点。并且内置锂电池供电,可以多次充电,增长了使用寿命。 二、 使用注意事项 1. 录入或对比指纹时,可能由于指纹放在指纹采集器的位置有偏差而使操 作不成功或采集的指纹图像质量下降。请在录入指纹时尽量把手指放在 指纹采集器的正中。如下图。 2. 本产品不宜使用于室外或阳光强烈的环境。如果由于阳光强烈而不能正 常工作,可以在按手指前用物件遮挡阳光。 3. 本产品采用光学采集指纹。使用时请小心保护采集器或避免弄脏。 4. 录入指纹时,手指按在指纹采集器的时间不要太长,约0.5秒为合 适。若放的时间太长会影响采集效果。 5. 本产品在不工作时会处于休眠状态。当把手指按下时,指纹采集器的灯 会亮,这时不要移开手指。直到听到有信号声音发出才可移开手指。如果在信号声音发出前移开手指,则会认为是非法指纹。 6. 使用时确保本产品的工作电压在3.6VDC ---- 5VDC ,且不要把输入电源 的正负极接反。在安装前建议先对本产器充电。 手指位置合适,正确 手指位置偏高,错误 手指位置偏低,错误 A 区与 B 区重合

机械钥匙孔 把 手 锁 体 后 盖 电路板 初始化按钮 三、 锁结构 四、 操作说明 1. 打开后盖 要进行初始化或设置管理指纹,必须先打开后盖,才可进行操作。 (请参考视频文件“打开后盖.asf ”) 前 面 板 图 后 面 板 图 充电接口

2. 设置管理指纹 此功能可设入管理指纹,管理指纹具有最高权限,可以增加和删除普通用户指纹。每把锁可以设2个管理指纹。 操作步骤: (请参考视频文件“设置一个管理指纹1.asf ” 和 “设置一个 管理指纹2.asf ”) A. 按下电路板上的初始化按钮,听到“嘟”一声,同时红绿灯闪烁。 B. 这时把要设成管理指纹的手指(要求此手指从未录入过)在指纹采集器上按一 下。如果此指纹采集成功,则会响一声并且指示灯从红绿灯交替闪烁变为绿灯闪烁。 C. 继续按下同一指纹3次,每按下一次都会发出短促的“嘟”一声。 D. 如果录入成功,则会发出较长的“嘟”一声。如果失败,则会发出“嘟—嘟” 两声。 E. 操作完成,退出录入管理指纹状态。 注意: 如果要录入的指纹在操作前已经录入,则此操作不会成功,并且会 发出“嘟--嘟--嘟” 三响声。 如果要录入下一个管理指纹,请重复以上步骤。 操作流程图如下: 3. 入普通用户指纹 此功能可以增加普通用户指纹。每把锁最多可以设入1000个用户指纹。 操作步骤:(请参考视频文件“录入一个普通指纹.asf ”) A. 连续按下任意一个管理指纹三次(三次都要正确)后,会发出较长的“嘟”一声, 并且红绿灯交替闪烁,进入录入状态。 B. 把要录入的手指(要求此手指从未录入过)在指纹采集器上按一下。如果此指纹 采集成功,则会响一声并且指示灯从红绿灯交替闪烁变为绿灯闪烁。 C. 继续按下同一指纹3次,每按下一次都会发出短促的“嘟”一声。 D. 若录入成功,则会发出“嘟”一长声。若失败,则会发出“嘟、嘟”两声。 E. 此指纹录入完成后,指示灯从绿色闪烁变为红绿闪烁,重新进入录入 状态。此 时重复执行步骤B 到步骤D ,可以继续录入下一个指纹。若要退出录入状态,可以再按下一次管理指纹或等待6秒后,指示灯停止闪烁,即可退出。 响一长 声 响两声 响 3 声

SFG R30X系列指纹识别模块用户手册

R30X X系列指纹识别模块SFG R30 用户手册 浙江圣非格科技有限公司 二〇一〇年九月九日Ver1.11

前言及声明 感谢您使用浙江圣非格科技有限公司的R30X系列指纹识别模块,为了确保获得最佳使用效果,请仔细阅读手册,并妥善保管,以备后用。 本用户手册针对软、硬件应用开发工程师编写,包含模块功能、软硬件接口等内容。 因产品的不断升级和完善,模块和手册内容都有可能变更,恕不另行通知。如需获取最新信息,请访问我公司网站(https://www.doczj.com/doc/0a3827107.html,)。 我们已尽最大努力以保证本手册的准确性。然而,如您有任何疑问或发现错误,可直接与我司或我司授权代理商联系,我们将十分感激。 下列文件包含圣非格科技有限公司的私有信息,在没有本公司书面许可的情况下,第三方不得使用或随意泄漏;当然,任何在没有授权、特殊条件、限制或告知的情况下对此信息的复制和擅自修改都是侵权行为。 所有产品的售出都受制于本公司在订购承认书里的销售条款和条件。本公司利用测试、工具、质量控制等技术手段来支持产品的相关性能符合所需规格的一定程度的保证。除了明确的政府书面要求外,没必要执行每款产品的所有参数测试。 联系我们:https://www.doczj.com/doc/0a3827107.html, 地址:浙江杭州莫干山路741号 电话:88032199

目录 一、概述-------------------------------------------------------------------------------------------------------3- 1.应用范围-----------------------------------------------------------------------------------------------3- 2.主要技术指标-----------------------------------------------------------------------------------------4- 二、硬件接口-------------------------------------------------------------------------------------------------5- 1.外部接口尺寸图--------------------------------------------------------------------------------------5- 2.串行通讯-----------------------------------------------------------------------------------------------7- https://www.doczj.com/doc/0a3827107.html,B通讯----------------------------------------------------------------------------------------------7- 三、软件开发指南--------------------------------------------------------------------------------------------8- 1.上电延时时间-----------------------------------------------------------------------------------------8- 2.系统资源-----------------------------------------------------------------------------------------------8- 3.通讯协议---------------------------------------------------------------------------------------------12- 四、模块指令系统-----------------------------------------------------------------------------------------16- 五、功能实现示例-----------------------------------------------------------------------------------------43-

毕业设计(论文)-基于51单片机的指纹识别

随着现代化各种科学新技术的快速发展,在日常生活中,我们需要各种身份认证和各种密码认证,还有对各种设备配备钥匙,对保险柜安装防盗系统等等,社会的进步,科技的发展,促使传统的安全系统的抵御能力越来越薄弱。因此,生物特征识别应用而生,开始走进我们身边的各种安全系统,指纹识别作为生物特征识别的一个典型应用已经得到很广泛的应用和认可,指纹特征具有唯一性,是每个人终生不变的特征之一,并且各个人的各个指纹都不一样。本系统采用89C52RC单片机作为主芯片,通过与指纹识别模块FM-180之间通过串口通信方式的通信,采用液晶12864作为显示器,加上简单的外围电路,如按键输入、LED灯报警电路、蜂鸣器电路,最后通过编写软件和制作硬件,实现一个可以通过单片机对指纹的录入,识别,删除等功能操作的指纹识别系统。 关键词指纹识别系统;单片机89C52;液晶12864

With the rapid development of modern science a variety of new technologies, in everyday life, we need a variety of authentication and a variety of password authentication, as well as a variety of devices with keys for the safe installation of security systems, etc., social progress the development of technology, to promote the traditional security system resilience increasingly weak. Thus, biometric applications, born around us began to enter various security systems, biometric fingerprint identification as a typical application has been very widely used and recognized, unique fingerprint characteristics, life is not for everyone one variable characteristics, and each person's fingerprints are not the same individual. The system uses 89C52RC microcontroller as the main chip, it passes between the fingerprint recognition module FM-180 serial communication with the communication method by using a liquid crystal display as 12864, plus simple peripheral circuits, such as key input, LED light alarm circuit, buzzer circuit, and finally through the preparation and production of software, hardware, you can implement a microcontroller on the fingerprint input, recognition, and delete functions operate fingerprint identification system. Key words Fingerprint identification system;SCM 89C52;LCD 12864

指纹锁测试模板

指纹锁 1 范围: 本标准规定了指纹产品的型号、术语和定义、要求、试验方法、检验规则和标志、包装运输和储存。 本标准适用予以指纹作为输入信,识别、处理其相关信息,以电动方式控制机械锁定结构启、闭的具有规定防破坏能力的锁。本标准不适用于具有防盗功能的指纹防盗锁。 2 规范性引用文件 下列文件中的条款通过本际准的引用而本标准的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本标准,然而,鼓励根据本标准达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本标准。 GB/T 191-2000包装储运图示标志 GB/T 2828.1-2003计数抽样检验程序第1部分:按接收质量限(AQL)检索的逐批检验抽样计划 GB/T 2829-2002周期检验计数抽洋程序及表(适用于对过程稳定性的检验) CB/T 6461-2002金属基体上金属和其他无机覆盖层经腐蚀试验后的试样和试件的评级GB/T 10125-1997 人造气氛腐蚀试验、盐雾试验 GB/T 15211-l994报警系统环境试验 GB/T 17626. 2-1998 电磁兼容试验和测量技术静电放电抗干扰度试验 GB/T 17626. 3-1998 电磁兼容试验和测量技术射频电磁辐射抗干扰度试验 GB/T 17626. 4-1998 电磁兼容试验和测量技术电快速瞬态脉冲群抗干扰度试验 GB/T 17626. 11-1999 电磁兼容试验和测量技术电压暂降、短时中断和电压变化的抗干扰度试验 GA/T 394-2002 出入口控制系统技术要求 GA 374-2001 电子防盗锁 QB/T 2474-2000弹子插芯门锁 QB/T 3836-1999 锁具测试方法 3 产品型号 2-4阿拉伯数字表示:规格及颜色等信信息 4位阿拉伯数字表示:分类及款式代号 系列代 示例:J1011表示系列代号为J的1011款指纹锁 4术语和定义 下列术语和定义适用于本标准

相关主题
文本预览
相关文档 最新文档