快捷搜索:  as  www.ymwears.cn

利用电容式固体指纹采集传感器MBF200实现指纹采

引 言

1、MBF200布局与机能

MBF200是富士通公司的电容式固体指纹采集传感器,能采集到500dpi的指纹图像。它的传感器是256×300的阵列,可以在3.3V~5V的宽电压范围内操作。MBF200的机能主要有以下几点:

① 集成了一个8位A/D变换器。A/D变换器的输入可所以MBF200的指纹传感器阵列的输出,也可所以由

MBF200的AIN引脚接入的模拟旌旗灯号。

② 带有3种总线接口,即8位微处置惩罚器(MCU)总线接口、集成的USB全速接口及串行周边设备接口(SPI),使芯片的利用设计加倍机动。

③ 特有自动指纹检测功能。

MBF200的内部布局如图1所示。

无论在哪一种总线接口模式下,对MBF200的节制都是经由过程写它的节制寄存器来完成的,包括CTRLA、CTRLB、CTRLC。MBF200共有19个寄存器。

值得提出的是,MBF200的时钟有两种选择。根据图1可以看出:“多谐振荡”和“晶体电路”便是它的两组可选的时钟源。CTRLB中的位1(XTALSEL)是用来在这两者之间进行选择的。XTALSEL=0,表示选用内部的“多谐振荡”作为MBF200的时钟;XTALSEL=1,表示时钟源来自芯片的XTAL1引脚,此时,芯片既可以外接有源晶体,也可以接无源晶体。CTRLB的各位含领悟在后面先容。

在MBF200的三种接口之中,SPI接口是对照简捷的一种,包括SCK、MISO、MOSI和SCS四条旌旗灯号线。此时,它的时钟源可以从外部输入;也可以在外接一个晶体后,使用MBF200内部的晶体电路来得到时钟源。图1中,在选择了SPI模式后,它的其它两种模式(USB、MCU)是自动禁止的。实际上,MBF200与节制芯片的SPI接口时,它只能事情在SPI的从模式下(slave),只有当MBF200事情于USB模式下时,它才是作为一个SPI的主设备(master)。

MBF200的一些状态寄存器,如DTR、DCR、PGC、THR等,必要在进行指纹采集之前被初始化。MBF200共有19个寄存器。这里仅仅对两个对照紧张的寄存器CTRLA、CTRLB进行阐明。

1.1 CTRLA(节制寄存器A)

写该寄存器来初始化图像转换;读该寄存器来读取A/D转换的结果。

GETSUB、GETIMG和GETROW三位选定了一种图像存取模式并且初始化了A/D转换器的转换序列。 AINSEL位选定了A/D转换器的滥觞。向GETSUB、GETIMG和GETROW中的随意率性一位写入一个“1”,都将放弃当前对应模式的图像摄取并从新开始新的该模式的图像摄取,而且这三位每次最多只能有一位被置成“1”。假如这三位中有多于一位被置成“1”,那么图像的转换就不会开始。当GETIMG被置成“1”后,MBF200会完成以下一系列动作:

◇行地址被置成0;

◇列地址被置成0;

◇自动开始图像的行摄取;

◇第一个象素的A/D转换自动开始。

当向CTRLA中写“0”时,除了会清除AINSEL之外,并不会使MBF200放弃当前的图像。读CTRLA的状态可以获得A/D的转换的结果。的上升沿会使A/D转换器开始下一次转换。

1.2 CTRLB(节制寄存器B)

CTRLB必须在法度榜样的最开始对它的位0和位2置“1”,以使能MBF200。

节制寄存器A、B的各位含意如表1所列。

2、 MBF200的SPI接口特征

SPI协议是一个同步串行数据传输协议,协议假定微节制器的SPI移位寄存器在SCLK的下降沿动作。对付MBF200而言,在时钟上升沿存MOSI引脚的数据,鄙人降沿将数据送至MISO引脚,如图2所示。MBF200的SPI通信协议的详细内容如下:

◇MOSI线上的数据在SCK的上升沿被采样;

◇MISO线上的数据在SCK的下降沿发生改变;

◇SCK在余暇状态时,可以为高电平,也可以为低电平;

◇串行传输历程中,高位在前(最先被移出)。

3、 MBF200的SPI接口利用

下面结合MBF200的SPI接口特征,先容若何以TMS320VC5402(简称5402)作为主节制器,完成MBF200对指纹数据的采集。5402的McBSP是与SPI兼容的。这里,把5402设置设置设备摆设摆设成SPI的主设备(master),MBF200事情在SPI协议下的从模式(slave)。多通道缓冲串行口McBSP的功能是供给器件内外数据的串行互换。同曩昔的串口比拟,McBSP串口具有相昔时夜的机动性。表2给出了有关5402的McBSP引脚阐明。

5402供给的时钟竣事模式可用于SPI协议通信。当McBSP被设置设置设备摆设摆设为时钟竣事模式时,发送器和接管器在内部是同步的,即可将发送数据帧时钟(BFSX)用作从器件使能(即),而将发送数据位时钟(BCLKX)用作SPI协议中SCK。因为接管数据位时钟(BCLKR)和接管数据帧时钟(BFSR)在内部分手与BFSX和BCLKX相连,是以,该引脚不能用于SPI模式。

当McBSP被设置设置设备摆设摆设为一个主设备时,发送输出旌旗灯号(BDX)被用作SPI协议的MOSI旌旗灯号,而接管输入旌旗灯号(BDR)则被用作MISO旌旗灯号。McBSP用作主设备时,与MBF20的SPI接口如图3所示。DSP的CLKX用作SPI的串行位同步时钟;BDX用作SPI的主节制器的输出;BDR用作SPI的主节制器的输入;BFSX用作SPI的串行帧同步旌旗灯号。当5402的McBSP被用于时钟竣事模式,并且设置CLKSTP=10,CLKXP=1时,McBSP的SPI时序与MBF200的时序吻合,如图4所示。

4、 采集系统的设计与实现

4.1 硬件设计

5402外扩RAMROM。RAM用来寄放指纹数据,ROM用来寄放DSP法度榜样。采集系统的各部分连接如图5所示。此中,MAX3111是供给一个RS232接口,经由过程这个接口,指纹采集系统可以向外(如PC机)供给指纹数据。DSP和MBF200都是3.3V供电。MBF200无需外接晶体,而是选用内部12MHz振荡器来供给时钟。

4.2 软件设计

要完成MBF200与5402之间的SPI接口通信,还必须在5402上运行法度榜样。这个法度榜样对付5402的工程师来说很简单,软件流程如图6所示。只是有一点值得留意:当使用5402接管指纹数据时,因为MBF200在某一行没有完成之前,帧旌旗灯号必须不停有效,便是说这一帧的长度为256×8位。以是,只能用5402的DMA来接管,DMA的接管帧长应该设置设置设备摆设摆设为128×16位。5402的部分汇编法度榜样如下:

……;(MCBSP的初始化)

*打开自动缓冲单元(ABU),打开DMA进行128字×16位帧的DMA接管,通道0

STM #DMSRC1,DMSA ;设置源地址为DRR10

STM #DRR10,DMSDN

STM #DMDST1,DMSA ;设置目的地址为3200H

STM #3200H,DMSDN

STM #DMCTR1,DMSA ;设置缓冲区的大年夜小为80H个单字

STM #80H,DMSDN

STM #DMSFC1,DMSA

STM #0001000000000000B,DMSDN

STM #DMMCR1,DMSA

STM #0101000001001101B,DMSDN

STM #DMIDX0,DMSA

STM #0001H,DMSDN

STM #0000001000000011B,DMPREC

……;(这里是INT0的中断办事,用于接管MBF200的数据)

RET

整个代码已经经由过程了调试,可以取得MBF200 的指纹数据,实现指纹采集的目的。图7是由MBF200采集到的指纹图像。该图是将原始数据经由过程RS232传送给PC机,然后使用Matlab对象把这些数据转化成图像的。

5、结 语

基于MBF200的指纹采集系统应用起来很方便,易于嵌入到其它的系统傍边。该采集系统已经用于一款指纹锁的设计之中。

责任编辑:gt

您可能还会对下面的文章感兴趣: