网站导航: 首页 > 设计参考 > 正文 文章搜索
嵌入式指纹处理模块设计与实现[图]
 
文章编号:
090105140513
文章分类: 单片机 DSP
点 击:
...
关 键 词: 指纹,TMS320VC5402
文章来源:
网络,作者:曹以根 褚金奎
摘 要:
目前,自动指纹识别系统可以分为两类:一类是用专门的硬件设备来采集指纹图像,然后将采集到的图像传送给上位机,利用上位机强大的运算能力和海量的指纹特征库,来实现指纹的识别。一类是将指纹的采集与识别在一个嵌

4、模块的USB接口扩展
    考虑到模块板可能需要外挂海量存储器存储指纹模版及与PC机等上位机进行通信,采用CH375扩展了系统的USB接口,它是一个USB总线的通用设备接口芯片,无需用户编写驱动程序,CH375以C语言子程序库提供了USB存储设备的文件级接口,这些应用层接ISIAPI包含了常用的文件级操作,可以方便移植并嵌入到各种常用的单片机程序中,这样对USB 设备的通信就几乎和访问本地硬盘一样。它具有8位数据总线(D0-D7)、读(/RD)、写(/WR)、片选控制线(/CS)以及中断输出(/INT),可以方便地与TMS320VC5402进行连接。另外CH375有一个地址线A0,它占用两个地址位,当A0引脚为高电平时选择命令端口,可以写入命令;当A0引脚为低电平时选择数据端口,可以读写数据,其硬件连接如图3所示。
 
图3 USB扩展硬件连接图

三、嵌入式软件系统框架的构建
    在各功能模块软硬件调试通过后,就要考虑构建整个模块的软件系统,使其能完成预定的工作,模块的预定工作流程如图4所示,主要包括以下几个部分:
(1)系统初始化
    该部分的工作主要包括系统工作时钟设置、中断设置和各寄存器的设置。
(2)密码识别
    该部分主要实现确认用户ID和更改用户ID 的功能。
(3)指纹图像的采集与识别
    该部分主要实现指纹图像的采集与识别的功能。
(4)USB接口通信
    该部分实现系统与上位机进行USB接口通行和访问外挂海量储存器的功能。
 
图4 模块程序流程图
    TMS320VC5402提供了四个外部中断,系统设计时将INT0用于触发密码识别,INTI用于触发指纹图像采集和识别,INT2用于触发USB接口通信。在软件程序的开发中,为了减小中断服务程序的程序量,引入WINDOWS消息触发的编程思想,在程序中设计了一个队列,在中断服务程序中,只是将中断类型添加入该队列中,在主程序的死循环中不断扫描中断队列是否有中断,有则取出队列中的第一个中断类型,进行相应处理,没有中断就使模块进入节电模式,程序框架如下:

 
  1. main()   
  2. {   
  3.     int i,ImageFlag,intType1,intType;   
  4.     /**********初始化目标板*********/  
  5.     Init_Board();   
  6.     InitQueue(&q);//初始化队列   
  7.     while(1)//进入死循环   
  8.     {   
  9.         if(!emptyQueue(&q))   
  10.         {/*删除队列中的首节点,并返回该节点的值域*/  
  11.             intType1=outQueue(&q);   
  12.             /*根据中断类型触发各个功能模块*/  
  13.             switch(intType1)   
  14.             {   
  15.             case 0:   
  16.                 PassWord_Get();//调用密码识别程序   
  17.             case 1:   
  18.                 ImageGet(0x4000,0x01);//获得指纹图像   
  19.                 FVSStart0; break;//调用指纹识别程序   
  20.             case 2:   
  21.                 CH375();break;//进行USB接口通信   
  22.             defaultbreak;   
  23.             }   
  24.         }else Idle1();//进入节电模式   
  25.     }   
  26. }   
  27. /*外部中断0触发密码验证模块*/  
  28. interrupt void Int0()   
  29. {   
  30.     intType=0;   
  31.     enQueue(&q,intType);//在队列尾加入新的中断   
  32. }   
  33. interrupt void Int1()/* 外部中断1触发图像采集及识别模块*/  
  34. {   
  35.     intType=1;   
  36.     enQueue(&q,intType);//在队列尾加入新的中断   
  37. }   
  38. interrupt void Int2() /*外部中断2触发USB接口通信模块*/  
  39. {   
  40.     intType=2;   
  41.     enQueue(&q,intType);//在队列尾加入新的中断   
  42. }   

四、结论
    本文采用了基于TMS320VC5402和MBF200的嵌入式技术,设计了一个能独立运行的嵌入式自动指纹识别系统,并根据各硬件模块的组成构建了系统的嵌入式软件框架。实验表明本系统板能实现快速的指纹图像采集和用户ID识别,采集的指纹图像如图5所示。在此基础上加入指纹图像预处理、指纹特征提取以及指纹匹配等指纹识别算法程序,能够构成一个完整的指纹识别系统。
 

 
相关文章:

上一页 12
 
最新开源项目
 
 
  查看更多...  
 
本站相关产品   淘宝网店
 




 
  查看更多...  

 

本站程序由百合电子工作室开发和维护
Copyright @ baihe electric studio
渝ICP备09006681号-4