关键词:MBF200 指纹传感器 自动检测 接口
1 引言
指纹识别技术是新近发展起来的一项高新技术。指纹识别是利用人体指纹的唯一性与不变性生理特征,将指纹作为人的一种“活的身份证”或一个随身携带的特殊印章来进行身份识别的一种技术。MBF200是富士通公司推出的一款固态指纹传感器芯片,该芯片具有自动指纹检测功能,可支持多种接口模式,设计方便。本文详细介绍了MBF200的特性,给出了其在USB总线接口模式下的电路实现方法,以及读取所采集数据的软件流程。该设计可用于便携式指纹数据采集系统、智能卡系统、数据库、网络和当地存储的安全进入系统,以及其它安全访问控制系统。
2 MBF200的主要特点
MBF200具有高性能、低功耗和低成本等特点,属于电容性传感器。其电容性传感器阵列由二维金属电极组成,所有金属电极充当一个电容板,接触的手指充当第二个电容板,器件表面的钝化层作为两板的绝缘层。当手指触摸传感器表面时,指纹的高低不平就会在传感器阵列上产生变化的电容,从而引起二维阵列上电压的变化,并形成指纹传感图像。其主要特点有:
●是采用标准COMS技术的电容性固态器件;
●具有500dpi的分辨率;
●传感器面积为1.28cm×1.50cm;
●传感器阵列为256×300点;
●具有自动指纹检测能力;
●内含8位模数转换器;
●可提供三种总线接口形式;
●带有8位微处理器总线接口;
●带有全速USB接口和SPI接口;
●可提供3.3V~5V的工作电压;
●5V工作电压下的功耗小于70mW。
MBF200的内部结构如图1所示。其中256×300点传感阵列用于产生感应电压;功能寄存器用于对芯片进行操作控制;控制电路用于传感器与外部接口电路的控制,主要负责数据的读出与写入;地址索引寄存器与数据寄存器分别用于对功能寄存器的地址选择及数据的读写;采样保持及AD转换电路用于对传感阵列所产生的电压进行采样。另外,多频振荡电路用于为芯片提供时钟信号。
3 器件功能
3.1 功能寄存器
MBF200是可编程的传感器芯片,它所具有的强大功能是通过内部寄存器设置完成的。表1所列是这些功能寄存器的地址和功能。在对这些寄存器进行操作时,先向地址寄存器内写入所要访问寄存器的地址,然后读写数据寄存器即可。
表1 MBF200中的功能寄存器
地 址 | 标 识 | 功 能 |
0x00 | RAH | 行地址高位 |
0x01 | RAL | 行地址低位 |
0x02 | CAL | 列地址低位 |
0x03 | REH | 行末地址低位 |
0x04 | REL | 行末地址低位 |
0x05 | CEL | 列末地址低位 |
0x06 | DTR | 放电时间寄存器 |
0x07 | DCR | 放电电流寄存器 |
0x08 | CTRLA | 控制寄存器A |
0x09 | LTRLB | 控制寄存器B |
0x0A | CTRLC | 控制寄存器C |
0x0B | SRA | 状态寄存器 |
0x0C | PGC | 可编程增益控制寄存器 |
0x0D | ICR | 中断控制寄存器 |
0x0E | ISR | 中断状态寄存器 |
0x0F | THR | 门限寄存器 |
0x10 | CIDH | 芯片标识高 |
0x11 | CIDL | 芯片标识低 |
0x12 | TST | 测试模式寄存器 |
由于列地址最大为256,所以,MBF200只有一个列开始寄存器CAL和一个列结束寄存器CEL。另外,THR用于在自动检测指纹时设置门限电压。PGC用于在A/D转换时设置放大器的增益。
3.2 MBF200的工作过程
MBF200的传感器阵列由256列300行的传感器单元组成。每一列有两个采样保持电路,每次捕获一行指纹图像数据。行捕获分为两个阶段,第一阶段,将电容板的被选行充电到3.3V或5V,在充电的同时,一个内部信号使能一个采样保持电路以采样被选行的电容单元电压;第二阶段是传感器板放电阶段,放电快慢由放电电流寄存器决定。放电阶段结束后,可由一个内部信号使能另一个采样保持电路去采样电容单元的最后电压,充电电压与放电电压之差就是所要测量的有用传感信号电压。行捕获结束之后,接着对该信号进行数字化,从而完成一次采样。实际上,该芯片的灵敏度是由放电电流和放电时间寄存器来调节的。
3.3 MBF200的接口模式
MBF200支持三种接口形式和四种操作模式,这四种操作模式相互独立,不能同时工作。其功能如表2所列。
表2 MBF200的操作模式
MODE[1,0] | 描 述 |
00 | 微处理器接口模式 |
01 | SPI接口模式 |
10 | USB模式,用内部ROM |
11 | USB模式,用外部ROM |
在微处理器接口模式中,可将MFB200与51系列8位单片机相连,且其接口形式非常简单。需要说明的是,在该芯片中,地址选择与数据写入是分两步完成的,先通过A0置0来写地址索引寄存器,然后再对A0置1来读写对应地址的数据寄存器。其操作真值表如表3所列。SPI是工业标准的同步串行接口,它允许8位数据同时、同步地被发送和接收,而且只用到如下信号:SCLK、SCS、MOSI、MISO、EXINT。可将系统配置为SPI主操作(Master)与从操作(Slave),其接口形式与一般的串行外围接口方式一致,故此不再赘述。
表3 微处理器接口读写真值表
CS0 | CS1 | A0 | RD | WR | 方 式 | 数据线 |
H | X | X | X | X | 无效 | 高阻 |
X | L | X | X | X | 无效 | 高阻 |
L | H | X | H | H | 任意 | 高阻 |
L | H | L | L | H | 读地址寄存器 | 输出 |
L | H | L | H | L | 写地址寄存器 | 输入 |
L | H | H | L | H | 读数据寄存器 | 输出 |
L | H | H | H | L | 写数据寄存器 | 输入 |
USB接口有两种模式:一种是用芯片内部的ROM来存储设备信息,一种是用外部串行ROM来存储设备信息。
4 MBF200的应用
4.1 MBF200与USB的接口
由于USB总线接口具有即插即用特性,而且目前应用比较广泛,所以本文设计了MBF200在USB模式下的接口电路(如图2所示)。其中MODE分别置为1、0,采用12MHz晶振,AIN用于模拟信号输入方式选择,ISET用于设置内部参考电流,FSET用于设置内部多频振荡器及自动指纹检测速率。需要注意的是,在USB模式中,为芯片提供的电压必需在3.3V~3.6V之间,由于该芯片的低功耗特点,所以在设计中可以使用USB总线电源来满足系统设计要求。
USB接口使用三个端点:其中端点0是控制端点,用来控制对功能寄存器的读写;端点1是读端点,用来读取经过AD转换后的指纹图像数据,它是以块方式进行读取的,每次64个字节;端点是2是中断端点,当ISR(Interrupt Status Register)被置位时,由它向端点2发送中断信号。
4.2 软件控制流程
该传感器有多种接口方式及多种图像获取形式,这些都是通过内部功能寄存器的设置来完成的。
首先要对传感器进行初始化:主要是启动内部ADC并对特殊功能寄存器CTRLB的第2位置位,以确定ADC后的地址是否自动增加,同时设置芯片时钟源并使能传感器。其流程如图3所示。
其次是调整参数,其流程如图4所示,其中DTR是放电时间寄存器,DCR则是用来设置放电电流速率的寄存器,PGC是可编程增益控制寄存器,主要用来设置放大器的增益。
最后就是获取指纹图像数据,在该传感器芯片中,共有三种指纹图像数据获取方式,分别为:
(1)获取子图(GETSUB)方式。在CPU和SPI接口模式中,子图的大小可以从任意位置开始设置,甚至可以从一个像素点到整幅图像;在USB接口模式中,子图列的开始必须是64的倍数。
(2)获取整幅图像(GETIMG)方式是把数据采集方式初始化为从行0列0到行299列255,以获取整幅图像数据。
(3)获取行数据(GETROW)方式主要捕获特定的几行数据。
MBF200芯片内部提供有6个寄存器,可用来设置图像数据捕获的位置。其中RAL是行地址低位,RAH是行地址高位,CAL是列地址,REL是行末地址低位,REH是行末地址高位,CEL是列末地址。
在USB接口方式下获取整幅指纹图像数据的流程如图5所示。在USB模式中,数据是以块为单位进行传输的,每块数据大小必须为64字节。
其它两种接口方式的指纹图像数据获取流程基本相似,只是没有数据块的限制,它们可以读取任意字节的指纹数据。
5 小结
随着信息技术的发展,计算机安全技术和身份认证技术对于人们的工作与生活来说越来越重要。生物特征识别技术为信息社会日益迫切的安全需求提供了一个较好的解决方案。文中基于MBF200的指纹传感器具有自动指纹检测功能,可支持多种接口模式,而且设计方便,故将得到广泛的应用,具有一定的实用价值。