当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]嵌入式指纹自动识别系统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机之间进行通信。其结构如图1。

 

 

    系统新用户注册时,通过键盘输入注册ID,然后系统由DSP控制指纹传感器采集用户指纹数据。如果采集到有效指纹,经过DSP进行指纹处理得到指纹模板数据。系统将该指纹模板存入系统数据库中。如果需要,也可以通过USB接口将用户信息和对应模板都上传至PC机中备份。当嵌入式系统数据丢失时,可以通过USB接口将PC机里所存备份下载至系统中。下面着重介绍系统的控制模块和USB接口的设计。
2 系统控制模块设计
    系统控制模块的核心处理器为P89C52,由于其接口有限,同时完成系统控制和USB接口控制将十分困难。而从系统成本、开发时间周期和继承性方面考虑,换用其他处理器也不太方便,所以必须考虑在此处理器的基础上完成多项任务。由指纹自动识别系统的特点来看,系统在完成指纹录入或登录后才需要利用USB接口完成指纹模板和登录信息的传输,所以对于处理器来说,USB控制和系统控制可以采用时分复用的方式进行。由此,利用一个电平转换芯片和一个8总线收发器来控制数据的选通及流向,以保证系统能够正常工作。具体实现如图2。

 


    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工作时连续3次没有检测到SOP就将挂起脚置高。
    PDIUSBD12片上GL_N引脚通过外接发光二极管来指示系统工作状态,在USB枚举过程中,LED指示根据通信状况间歇闪烁;当PDIUSBD12成功枚举和配置后,LED指示将一直点亮;随后与PDIUSBD12之间成功地传输(带应答)将关闭LED;处于挂起状态时LED将会关闭。
    片上时钟发生电路采用6MHz晶振,匹配一个22pF和一个68pF的无源电容。采用6MHz晶振也是为了降低产品制造过程中产生EMI(电磁干扰效应)的风险,因为外部线路的频率越高,其EMI效应也会越强,而在片外电路采用较低频率并在芯片内部进行倍频的措施将既不影响芯片的处理速度,又能提高在外部布线的安全性。使用两个不同容值电容的目的是为了使晶体能够快速起振,经过测量,晶振的启动时间在2ms左右。
    PDIUSBD12可采用5V和3.3V两种工作电压。由于主控单片机的IO电压为5V,所以对PDIUSBD12也使用5V的工作电压。此时在接入5V至PDIUSBD12 VCC脚的同时,要将PDIUSBD12上的VOUT脚空出,接去耦电容。另外,为了减小系统的EMI,在USB连接器输入侧的VBUS和地线上增加磁珠,如图3的BLM21P,并且在USB的屏蔽罩与地之间使用容性耦合。
    由于USB通信协议的复杂性,相当一部分工作由硬件电路来完成,所以对硬件电路设计的准确性要求非常严格,布线要合理要尽量减少分布电容和电磁干扰的影响,硬件电路的质量将直接影响到数据能否正常传输。
3.2 USB设备固件程序的开发
    固件程序主要由主程序和中断服务程序组成。USB设备请求包括标准设备请求和厂商请求。标准设备请求用来完成USB设备枚举的命令,而厂商请求则是根据具体USB设备来完成特殊任务的命令。对于本文采用的USB服务芯片PDIUSBD12,其片内的SIE(串行接口引擎)实现了全部的USB协议层,且完全由硬件实现而不需要固件的参与,所以对于USB固件程序来说,USB协议的具体实现就可以根据PDIUSBD12所提供的命令字来完成。最后剩下的就是硬件层上读写数据的程序实现。其总体结构如图4。

 


    其工作流程大致为:主循环完成一些初始化工作,转入等待中断的循环中;当USB总线上有事务发生时,PDIUSBD12将会自动产生相应的中断来通知固件程序;然后固件程序转入相应的中断服务程序处理中断,主循环通过读取中断服务程序中设定的事件标志和循环数据缓冲区来决定转入相应的请求响应;响应程序通过再下层的PDIUSBD12命令接口程序控制PDIUSBD12完成相应数据或命令操作。此积木式结构的固件程序组合完成了USB接口设备从初始化到数据传输的全部USB活动。
    本文根据USB1.1协议由其服务芯片PDIUSBD12和单片机P89C52完成了嵌入式指纹自动识别系统的USB接口硬件和固件程序的研究和开发,并结合上位PC机的驱动程序和应用程序为整个嵌入式系统提供了一个稳定性好、传输速度快、使用方便的USB接口。达到嵌入式系统与PC机之间灵活通信,使本嵌入式指纹自动识别系统得到了更广范的应用。
参考文献
[1] Philps.PDIUSBD12 Datasheet.http://www.21icsearch.com/searchpdf/default.asp?admin=.
[2] Walter Oney.Programming the Microsoft Windows Driver Model[M].Microsoft Press,1999.
[3] Compaq,Intel,Microsoft,NEC.Universal serial bus specification Revision 1.1.http://www.8easy.cn/Soft_Show.asp?SoftID=91.
[4] 夏玮玮.嵌入式系统关键技术分析与开发应用,2003,2.
[5] PDIUSBD12固件编程指南.http://www.zlgmcu.com.
[6] 王朔,李刚.USB接口器件PDIUSBD12的接口应用设计,天津:天津大学.

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭