位置:51电子网 » 技术资料 » 单 片 机

嵌入式指纹自动识别系统USB接口的设计与实现

发布时间:2008/8/16 0:00:00 访问次数:715

  介绍一种基于单片机和usb服务芯片pdiusbd12的usb接口设计。该接口应用在嵌入式指纹识别系统中,用于嵌入式系统与计算机之间进行用户指纹数据库的上传和下载。详细介绍了usb接口的硬件设计和固件程序的实现。
  
  在指纹自动识别系统中,嵌入式系统由于功耗低、设备体积小、安全性高等优点,已经得到越来越广泛的应用。通用串行总线(usb)是由inter、microsoft、ibm和nec等共同制定的微机总线接口规范,具有较高的传输速率(usb 1.1支持最高传输速度为12mb/s,而usb 2.0的传输速度最高可达到480mb/s),支持即插即用,占用系统资源少,扩展能力强。在嵌入式系统的应用中,几乎不可避免与pc机的通信,由于通信速度的要求以及计算机硬件高速发展,传统的rs232接口已经越来越不能满足用户的需求,所以在嵌入式系统中usb接口的实现势在必行。

  1 嵌入式指纹自动识别系统

  本文所介绍的嵌入式指纹自动识别系统采用dsp与单片机协同工作,以实现指纹自动识别以及用户服务系统。其中单片机选用philps公司的p89c52,dsp处理器选用ti公司的tms320c5416。单片机具有系统控制能力强、结构简单、扩展方便等特点,适合作为系统的控制核心;而dsp采用的增强型哈佛结构、多级流水线、多处理单元以及特殊的指令(乘加指令等),使得dsp具有强大的数据处理能力,并且tms320c5416支持最高160mhz的时钟频率,基于其强大数据处理能力和高运行速度,所以将它作为系统的算法核心处理器。由单片机为核心的控制模块主要完成用户服务系统和系统通信接口,由dsp为协处理器的算法模块完成指纹采集和处理。用户通过键盘输入控制整个系统的工作流程,通过lcd了解系统的工作状态及处理结果。dsp由其hpi(主机接口)与单片机以中断方式进行通信。而整个系统通过usb接口与上位pc机之间进行通信。其结构如图  系统新用户注册时,通过键盘输入注册id,然后系统由dsp控制指纹传感器采集用户指纹数据。如果采集到有效指纹,经过dsp进行指纹处理得到指纹模板数据。系统将该指纹模板存入系统数据库中。如果需要,也可以通过usb接口将用户信息和对应模板都上传至pc机中备份。当嵌入式系统数据丢失时,可以通过usb接口将pc机里所存备份下载至系统中。下面着重介绍系统的控制模块和usb接口的设计。

  2 系统控制模块设计

  系统控制模块的核心处理器为p89c52,由于其接口有限,同时完成系统控制和usb接口控制将十分困难。而从系统成本、开发时间周期和继承性方面考虑,换用其他处理器也不太方便,所以必须考虑在此处理器的基础上完成多项任务。由指纹自动识别系统的特点来看,系统在完成指纹录入或登录后才需要利用usb接口完成指纹模板和登录信息的传输,所以对于处理器来说,usb控制和系统控制可以采用时分复用的方式进行。由此,利用一个电平转换芯片和一个8总线收发器来控制数据的选通及流向,以保证系统能够正常工作。

  sn74alvc164245为5v~3.3v电平转换芯片,负责控制单片机与dsp之间的数据流向以及电平转换。因为单片机的io电平为5v,而dsp的io电平为3.3v,所以必须进行电平转换。另外,sn74alvc164245的oe和dir脚联合控制数据的流向,当oe为高时,芯片两边的数据互相独立;当oe为低时,通过dir的状态来控制数据的流向。74hc245为总线传输器,用来控制单片机同lcd控制芯片ks0108的数据通信,其工作原理与sn74alvc164245类似,只是没有电平转换功能。同样,usb服务芯片通过suspend管脚来使能数据线,将suspend脚置高电平时,整个pdiusbd12处于休眠状态。由此,单片机就可以通过控制引脚的状态来控制数据总线,以实现单片机数据总线的时分复用。

  3 系统usb接口设计

  3.1 usb接口硬件设计

  usb接口硬件主要以接口芯片pdiusbd12为中心,设计它与usb物理接口以及微控制器之间的连接。接口模块通过跳线选择供电方式,可同时支持usb总线供电方式和外设供电方式,为全速usb设备接口。设计过程中充分考虑到可靠性、可测性以及电磁兼容性。其接口电路如图3所示。

  接口电路供电通过拨盘开关k1选择,当k1接mvcc时,系统为自供电方式;当k1接uvsb时,为总线供电方式。当系统处于自供电方式情况下,系统通过eot_n引脚来检测vusb是否存在,并接上一个1m?赘的放电电阻来减弱充电,以确保当vusb移开时eot_n变为低,并且此时自供电电源与usb总线之间只能共地,同时设备不能通过usb口向vbns输出电流。

  在单片机与pdiusbd12的控制通信方面,单片机通过对pdiusbd12的a0脚的状态控制来指示并行数据总线p0上传输内容为命令还是数据。此时,pdiusbd12上用于数据地址总线复用的ale引脚一直接地。中断引脚int_n是系统的关键,几乎所有usb的活动在设备接口端都是由pdiusbd12接收,然后通过中断通知单片机完成。pdiusbd12上的挂起suspend为一个双向引脚,由此保证usb设备既能被设备主控(单片机)也能被上位pc机唤醒,而pdiusbd12

  介绍一种基于单片机和usb服务芯片pdiusbd12的usb接口设计。该接口应用在嵌入式指纹识别系统中,用于嵌入式系统与计算机之间进行用户指纹数据库的上传和下载。详细介绍了usb接口的硬件设计和固件程序的实现。
  
  在指纹自动识别系统中,嵌入式系统由于功耗低、设备体积小、安全性高等优点,已经得到越来越广泛的应用。通用串行总线(usb)是由inter、microsoft、ibm和nec等共同制定的微机总线接口规范,具有较高的传输速率(usb 1.1支持最高传输速度为12mb/s,而usb 2.0的传输速度最高可达到480mb/s),支持即插即用,占用系统资源少,扩展能力强。在嵌入式系统的应用中,几乎不可避免与pc机的通信,由于通信速度的要求以及计算机硬件高速发展,传统的rs232接口已经越来越不能满足用户的需求,所以在嵌入式系统中usb接口的实现势在必行。

  1 嵌入式指纹自动识别系统

  本文所介绍的嵌入式指纹自动识别系统采用dsp与单片机协同工作,以实现指纹自动识别以及用户服务系统。其中单片机选用philps公司的p89c52,dsp处理器选用ti公司的tms320c5416。单片机具有系统控制能力强、结构简单、扩展方便等特点,适合作为系统的控制核心;而dsp采用的增强型哈佛结构、多级流水线、多处理单元以及特殊的指令(乘加指令等),使得dsp具有强大的数据处理能力,并且tms320c5416支持最高160mhz的时钟频率,基于其强大数据处理能力和高运行速度,所以将它作为系统的算法核心处理器。由单片机为核心的控制模块主要完成用户服务系统和系统通信接口,由dsp为协处理器的算法模块完成指纹采集和处理。用户通过键盘输入控制整个系统的工作流程,通过lcd了解系统的工作状态及处理结果。dsp由其hpi(主机接口)与单片机以中断方式进行通信。而整个系统通过usb接口与上位pc机之间进行通信。其结构如图  系统新用户注册时,通过键盘输入注册id,然后系统由dsp控制指纹传感器采集用户指纹数据。如果采集到有效指纹,经过dsp进行指纹处理得到指纹模板数据。系统将该指纹模板存入系统数据库中。如果需要,也可以通过usb接口将用户信息和对应模板都上传至pc机中备份。当嵌入式系统数据丢失时,可以通过usb接口将pc机里所存备份下载至系统中。下面着重介绍系统的控制模块和usb接口的设计。

  2 系统控制模块设计

  系统控制模块的核心处理器为p89c52,由于其接口有限,同时完成系统控制和usb接口控制将十分困难。而从系统成本、开发时间周期和继承性方面考虑,换用其他处理器也不太方便,所以必须考虑在此处理器的基础上完成多项任务。由指纹自动识别系统的特点来看,系统在完成指纹录入或登录后才需要利用usb接口完成指纹模板和登录信息的传输,所以对于处理器来说,usb控制和系统控制可以采用时分复用的方式进行。由此,利用一个电平转换芯片和一个8总线收发器来控制数据的选通及流向,以保证系统能够正常工作。

  sn74alvc164245为5v~3.3v电平转换芯片,负责控制单片机与dsp之间的数据流向以及电平转换。因为单片机的io电平为5v,而dsp的io电平为3.3v,所以必须进行电平转换。另外,sn74alvc164245的oe和dir脚联合控制数据的流向,当oe为高时,芯片两边的数据互相独立;当oe为低时,通过dir的状态来控制数据的流向。74hc245为总线传输器,用来控制单片机同lcd控制芯片ks0108的数据通信,其工作原理与sn74alvc164245类似,只是没有电平转换功能。同样,usb服务芯片通过suspend管脚来使能数据线,将suspend脚置高电平时,整个pdiusbd12处于休眠状态。由此,单片机就可以通过控制引脚的状态来控制数据总线,以实现单片机数据总线的时分复用。

  3 系统usb接口设计

  3.1 usb接口硬件设计

  usb接口硬件主要以接口芯片pdiusbd12为中心,设计它与usb物理接口以及微控制器之间的连接。接口模块通过跳线选择供电方式,可同时支持usb总线供电方式和外设供电方式,为全速usb设备接口。设计过程中充分考虑到可靠性、可测性以及电磁兼容性。其接口电路如图3所示。

  接口电路供电通过拨盘开关k1选择,当k1接mvcc时,系统为自供电方式;当k1接uvsb时,为总线供电方式。当系统处于自供电方式情况下,系统通过eot_n引脚来检测vusb是否存在,并接上一个1m?赘的放电电阻来减弱充电,以确保当vusb移开时eot_n变为低,并且此时自供电电源与usb总线之间只能共地,同时设备不能通过usb口向vbns输出电流。

  在单片机与pdiusbd12的控制通信方面,单片机通过对pdiusbd12的a0脚的状态控制来指示并行数据总线p0上传输内容为命令还是数据。此时,pdiusbd12上用于数据地址总线复用的ale引脚一直接地。中断引脚int_n是系统的关键,几乎所有usb的活动在设备接口端都是由pdiusbd12接收,然后通过中断通知单片机完成。pdiusbd12上的挂起suspend为一个双向引脚,由此保证usb设备既能被设备主控(单片机)也能被上位pc机唤醒,而pdiusbd12

相关IC型号

热门点击

 

推荐技术资料

硬盘式MP3播放器终级改
    一次偶然的机会我结识了NE0 2511,那是一个远方的... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!