指纹是指人类手指上出现的条状纹路,他们的形成依赖于胚胎发育时的环境和遗传。世界上几乎没有两个完全相同的指纹。由于指纹具有稳定性、唯一性以及易于采集的特性,一直以来被认为是最可靠的利用生物特征进行身份鉴定的依据之一。
随着计算机技术的进步,图像处理与模式识别方法的发展,指纹处理技术日臻成熟,经历了人工处理,半自动化处理和自动化处理等三个发展阶段。美国于1963 年首先开展关于指纹识别软件的研究,随后日本(1975)也开始这方面的工作,我国开展得较慢(约于1981 年开始)。1975 年美国推出第一个商用系统Printrak250,而日本的NECAFIS 于1982 年才投入使用。近年来,国内也相继推出了自己的指纹识别系统。
作为指纹处理的第一步的指纹取像技术也日益成熟,这使采集到的指纹数据更真实,图像更清晰,处理结果也就越加可靠,鉴定结果的可信度也越强。目前有利用光学全反射技术、硅晶体电容传感技术、超声波扫描技术等获得指纹图像的方法。
而且随着现代社会的发展,安全性成为许多系统首要考虑的问题,指纹因其不可复制、不可替代的特性成为鉴定身份的可靠手段。近年来有关指纹自动识别及认证研究已成为模式识别、图像处理及计算机视觉领域的热点,指纹识别已广泛的应用于银行、保险、公安、门禁、考勤等方面。
USB 是Universal Serial Bus 的缩写,这是近几年逐步在PC 领域广为应用的新型串行接口技术。相对于并口,串口等传统的计算机接口方式,USB 有很多明显的优点。它支持即插即用(plug and play),有较强的纠错能力,能总线供电,低成本,具有强大的外设连接能力。因而选用USB 接口来传送采集的指纹图像,能更方便灵活地和计算机通信,有着良好的应用前景。
第二章,设计概述
设计的目的是实现一个使用USB 接口与主机通信的高性能指纹采集仪。指纹芯片选用了Veridicom 公司的硅晶体电容传感器FPS110,主控芯片选用Motorola 公司集成USB 模块的单片机MC68HC908JB8。 基本工作模式如图1 所示, MC68HC908JB8 控制FPS110 采集指纹,然后通过MC68HC908JB8 片上集成的USB 模块将数据送给计算机进行存储和后期处理。
图1.指纹采集方案图
1,采用Jungo 公司的Windriver 软件开发WINDOWS 平台的USB 驱动程序。
2,采用Microsoft 公司VC6.0 软件开发演示平台和一些简单的指纹处理程序。
第三章,系统硬件设计
3.1,主要芯片特性
1,集成USB 模块的指纹采集仪
主控芯片MC68HC908JB8MC68HC908JB8 是Motorola 公司MC68HC08 系列的一款高性价比单片机,芯片有256 字节的片内RAM,8K 字节片内FLASH,除传统的定时器、键盘中断、串行口、等I/O 设备外,其主要特点是集成了通讯速率为1.5MB 的低速USB 模块。
2,指纹采集芯片FPS110。
FPS110 是Veridicom 公司的硅晶体电容传感器,该传感器采用先进的半导体CMOS 工艺,面积只有邮票般大小,具有高灵敏度、高可靠性、高分辨率(500DPI)、低功耗、低价位等许多优点,特别适用于商业及户外指纹应用系统。
3.2 指纹采集仪系统硬件设计
指纹采集仪基本原理如图2 所示,主要包含电源设计,单片机应用设计,指纹芯片应用设计。
图2.指纹采集仪基本原理图[page]
MC68HC908JB8 和FPS110 都可以支持5V 供电,而且 MC68HC908JB8 还可提供USB 接口所需的3.3V 参考电压,所以整板只采用外接5V 电源。设计中为了方便调试,提供了三套可选5V 电源输入,分别是USB 供电,仿真器接口供电,和单独电源供电。
2,时钟设计
MC68HC908JB8 和FPS110 分别供给时钟,MC68HC908JB8 采用6M 晶体接OSC1和OSC2 间,FPS110 采用12M 晶体接XTAL1 和XTAL2 之间3,FPS110 和MC68HC908JB8 接口设计
MC68HC908JB8 有五组通用接口PTA,PTB,PTC,PTD,PTE.。设计中选用PTB口和PTC 口于FPS110 连接,PTB 口用于数据通信,PTC 口用于控制。具体连接如图3 所示
图3.FPS110 和MC68HC908JB8 接口设计图
MC68HC908JB8 片上集成的是1.5MB 的低速USB 模块。根据USB 协议,需要在D-上加一个1.5k 的上拉电阻到3.3 伏,连接如图4 所示。
图4.低速USB 接口设计图
系统软件设计分为四个部分,分别是MC68HC908JB8 上的USB 固件设计,指纹采集程序设计,计算机上的USB 驱动设计和演示程序设计。
4.1 MC68HC908JB8 上的USB 固件设计
单片机的开发环境选用Metrowerks 的 CodeWarrior studio 集成开发软件,在线仿真和编程工具选用了P&E Microcomputer Systems 公司的MON08MULTILINK。
MC68HC908JB8 片上集成了遵循USB1.1 规范的低速USB 模块,该模块有三个端点,端点0 支持控制收发传输,端点1 支持中断数据发送传输,端点2 支持中断数据接收传输。对应的有USB 控制积存器,USB 中断寄存器,USB数据寄存器,USB 状态寄存器。为了实现MC68HC908JB8 和计算机之间的USB正常通信,必须在MC68HC908JB8 中设计USB 固件。如图5 所示,USB 固件主要包含控制传输和USB 标准请求命令的处理,端点数据读写处理,其他中断处理。
图5.USB 固件基本流程图
MC68HC908JB8 使用通用接口 PTB 和PTC 与FPS110 连接,通过控制FPS110片内的行寄存器和列寄存器就能很方便的完成整幅指纹或部分指纹的采集,指纹采集的基本流程如图6 所示。[page]
图6.指纹采集基本流程图
Windriver 是美国Jungo 公司出品的用于编写硬件驱动程序的一种工具软件,主要用于ISA 插卡、PCI 插卡和USB 的驱动程序开发。使用Windriver开发驱动程序的优点主要在于不需要了解太多的操作系统和驱动程序方面的知识,而且Windriver 带有功能强大的向导Driver Wizard,能帮助开发者进行硬件诊断和自动生成代码。所以采用Windriver 能让电子工程师在短时间内针对自制硬件开发出易用、兼容性好的驱动程序采用Windriver 来设计USB 驱动程序,如图7 所示,实际上只是在用户模式下调用了用了Windriver 通用驱动程序提供的API 函数,并不用编写WDM驱动程序。
图7 Windriver 应用结构图
4.4,WINDOWS 平台下演示程序设计
计算机上的演示程序主要包含计算机与MC68HC908JB8 通信的简单控制,采集到指纹图像的显示,以及指纹图像的一些如细化,二值化等的简单处理。采用的工具是VC6.0,图8 是一个演示界面的例子。
图8,演示界面
本文介绍了一种基于MC68HC908JB8 的便携式USB 指纹采集方案,实验表明,这种方案充分利用了USB 支持即插即用,有较强的纠错能力,能总线供电等优点,简化了设计,降低了成本,实现了灵活可靠的指纹图像传输,有很好的应用前景。(end)
上一篇:把32位微控制器性能带入工业和汽车应用
下一篇:基于Android的POS机刷卡器阅读芯片驱动研究
推荐阅读最新更新时间:2024-03-16 13:29