一种多路门禁控制器韦根数据采集方法

文档序号:6659067阅读:688来源:国知局
专利名称:一种多路门禁控制器韦根数据采集方法
技术领域
本发明涉及信号采集技术领域,具体地说是ー种多路门禁控制器韦根数据采集方法。
背景技术
韦根(Wiegand)协议是国际上统ー的标准,它适用于涉及门禁控制系统的读卡器和卡片的许多特性,它有26-bit、34-bit、37-bit等格式。韦根26格式是ー个广泛使用的エ业标准,几乎所有的门禁控制器系统都支持标准的韦根26格式。韦根协议在数据的传输中主需要两条数据线,一条为数据O (DATA0),一条为数据I (DATA1),协议规定,两条数据线在无数据时均为高电平,如果DATAO为低电平代表数据0,DATAl为低电平代表数据1(低电平小于IV,高电平大于4V),低电平脉冲宽度在20us至200us之间(一般选取IOOus左右), 两个脉冲见间隔在200us至20ms (—般选取Ims左右)之间。目前门禁控制器系统的门禁控制器支持的韦根接ロ普遍较少,其中韦根数据的采集一般采取MCU (MCU :微型控制器,包括8bit、16bit、32bit等嵌入式微型处理器)接ロ扫描方法或用MCU接口中断方法,由于韦根信号是低速、串行、异步通信信号,采用扫描方法需要较长时间的占用MCU的CPU,采用中断方法接收I条韦根26数据MCU需要需要响应26次中断。这两种方法都大量的占用了微型处理器的CPU资源和中断(INT)资源。对于需要支持多路(4路以上)韦根数据采集的大容量(5万卡片ID信息)门禁控制设备,CPU开销和中断资源都非常宝贵,这两种韦根数据采集方法不管是从实时性还是可靠性上都存在着弊端,不适合应用于多路大容量门禁控制设备。

发明内容
本发明的目的是要解决上述方法在多路大容量门禁控制器韦根数据采集应用上的不足,而提供的ー种支持多路韦根接ロ、实时性高、可靠性高、低成本的多路韦根数据采集方法。为了实现上述目的,本发明一种多路门禁控制器韦根数据采集方法包括微型控制器MCU与韦根接ロ之间构造一个韦根总线桥接电路(以下简称宰根总线桥),MCU与韦根总线桥之间通过并行总线构成电连接,韦根接ロ与韦根总线桥接电路之间通过IO线构成电连接。所述韦根总线桥包括时序逻辑电路,内部可定义韦根通道数据寄存器、韦根通道数据状态寄存器、韦根数据计数器、去抖计时器、韦根数据超时控制定时器。所述韦根总线桥外接I只低频有源晶振和I只高频有源晶振,其中低频率有源晶振用于韦根数据采集的扫描去抖定时、超时控制等;高频率有源晶振作为韦根总线桥与MCU之间并行通信时序的主频。所述韦根总线桥接外接多路(N)韦根数据接ロ。所述韦根总线桥采用“中断+扫描去抖+移位+奇偶校验+超时控制”的方法采集韦根数据,如图I所示,具体包括以下步骤步骤I :所述韦根总线桥通过韦根数据接ロ实时检测端ロ电平状态,如果第η(0〈n ( N)路韦根数据端ロ(DATA0或DATAl)有高电平到低电平的下降沿跳变,则经过扫描去抖、移位、计数和超时控制等处理。所述扫描去抖,指下降沿跳变的同时启动去抖定时器,去抖定时器溢出后停止并再次检测该端ロ电平,如果电平未变化则为有效位信号。所述移位,指韦根通道数据寄存器左移I位后将有效位值写入低I位。所述有效位值指产生有效位信号的数据线如果是DATAl则有效值为1,如果是DATAO则有效值为O。所述计数,指韦根数据计数器加I。所述超时控制,指经过扫描去抖判断信号有效后,韦根数据超时控制定时器开启, 或清零并重新开始计吋。如果超时控制定时器溢出则将韦根通道数据状态寄存器、韦根数据计数器清零、超时控制定时器清零并停止计时,如果超时控制定时器在溢出前检测到韦根数据端ロ有有效信号则清零并重新计时。步骤2 :如果韦根数据计数器的值与韦根数据格式N位相同并且数据位校验正确则将韦根通道数据状态寄存器第η位标志位置1,同时根据韦根通道数据状态寄存器之前的值是否为O输出中断信号到MCU中断输入(INT)端ロ,等待MCU中断响应后读取数据。所述校验,指根据韦根协议格式进行的奇偶校验,采用组合逻辑方法实现。韦根协议N位数据格式中第I位为第2至Ν/2位的偶校验,第η位为Ν/2+1至N-I位的奇校验。采用组合逻辑实现的方法韦根协议N位数据I至Ν/2位按位异或后为O且Ν/2+1至N位按位异或后为I则数据正确。所述输出中断,韦根总线桥输出中断信号的唯一判断条件是韦根通道数据状态寄存器第η位标志位置I之前寄存器的值是否等于0,如果等于O则产生一次中断,如果不等于O则不产生中断信号。所述MCU,范围适用于8bit、16bit、32bit等各种类型嵌入式微型处理器。步骤3 =MCU响应中断、通过与韦根总线桥之间的并行总线,采用标准时序读取韦根通道数据状态寄存器的值,井根据该寄存器的置I标志位读取对应韦根通道数据寄存器的有效数据(去掉校验位),读后将该标志位清零。所述并行总线包括数据线总线、地址线总线和控制总线,控制总线包括片选信号、读写使能信号,MCU通过片选信号选通韦根总线桥,并完成微控制器外部物理地址映射,MCU通过内置静态存储控制器对韦根总线桥内部寄存器进行读或写操作。所述标准时序需要符合MCU内置静态存储控制器读写数据时序,如果没有内置静态存储控制器,需要根据MCU指令和主频特征自定义该时序。所述读取对应韦根通道数据寄存器的有效数据的方法在读时序的片选和读地址使能信号有效后,韦根总线桥将韦根通道数据寄存器的有效数据(去掉校验位)锁存到并行数据总线上等待MCU读取,其中数据总线接ロ低字节对应韦根寄存器数据低字节,字节高位在前,最高字节的值等于该韦根通道数据寄存器所对应的通道号。步骤4 :继续判断韦根通道数据状态寄存器值是否等于零,如果不为零则继续读取韦根通道数据状态寄存器并根据该寄存器的置I标志位读取对应韦根通道数据寄存器的值,读后将该标志位清零,直到该寄存器值等于零。
本发明ー种多路门禁控制器韦根数据采集方法的优点是支持多路韦根数据采集,需要占用的MCU资源少。数据的采集、去抖、移位、计数、校验、超时控制等工作都由韦根总线桥处理,不占用MCU的CPU开销和中断资源,即使多路韦根接ロ同时工作,MCU也只需要响应一次中断后一次性读取多路韦根数据,具有实时性高、可靠性高、低成本的特点。


图I为多路韦根数据采集方法的流程图;图2为多路韦根数据采集方法的韦根总线桥连接示意图;图3为,根总线桥接ロ逻辑不意图;
图4为多路韦根数据采集方法的实施例的流程图;图5为多路韦根数据采集方法的实施例的数据处理流程示意图。
具体实施例方式韦根协议有26-bit、34-bit、37_bit等格式,韦根26格式是ー个广泛使用的エ业标准,几乎所有的门禁控制器系统都支持标准的韦根26格式,下面以16路韦根26格式数据为采集对象,结合附图和实施例对本发明作进ー步的说明如图2所示,微型控制器MCU与韦根接ロ之间构造一个韦根总线桥,韦根总线桥与MCU之间通过并行总线,包括控制总线(CB)、地址总线(AB)、数据总线(DB)和中断信号线(IRQ)构成电连接;韦根总线桥与韦根26接ロ(WG26)的数据线DATAO (DO)和DATAl (Dl)之间通过IO信号线构成电连接。所述MCU,范围适用于8bit、16bit、32bit等各种嵌入式微型处理器,实施例采用ARM9处理器。所述韦根总线桥是ー种时序逻辑电路,实施例采用可编程逻辑器件(PLD),包括复杂可编程逻辑器件(CPLD)或现场可编程门阵列(FPGA)等。本发明实施例的韦根总线桥有两个时钟源、分别是IM低频和50M高频有源晶振。低频用于韦根数据采集的扫描去抖定时、超时控制等;高频率有源晶振作为韦根总线桥与MCU之间并行通信时序的主频。韦根总线桥接ロ逻辑如图3所示,内部定义韦根通道数据寄存器WG_Reg (η)、韦根通道数据状态寄存器WG_RStatusReg、去抖定时器Rtimer (η)、韦根数据计数器Ctimer (η)、韦根数据超时控制定时器Otimer等。本发明实施例的韦根总线桥寄存器定义如表I所示,其中WG_Reg (η)数据寄存器格式如表2所示,WG_RStatusReg寄存器格式如表3所示。Rtimer (η)是3位定时器、Ctimer (η)是5位计数器、Otimer是16位定时器。Rtimer (η)和Otimer定时器采用低频有源晶振输入计时,最小周期为Ius,定时器溢出时间分别为Sus和65. 35ms。其中寄存器名后綴〃(η) 〃表示寄存器组,每个韦根通道对应ー个寄存器。表I ,根总线桥寄存器定义
权利要求
1.一种多路门禁控制器韦根数据采集方法,其特征在于微型控制器MCU与韦根接ロ之间构造一个韦根总线桥接电路,MCU与韦根总线桥之间通过并行总线构成电连接,韦根接ロ与韦根总线桥接电路之间通过IO线构成电连接;韦根总线桥采用“中断+扫描去抖+移位+奇偶校验+超时控制”的方法采集韦根数据,具体包括以下步骤 步骤I :所述韦根总线桥通过韦根数据接ロ实时检测端ロ电平状态,如果第η(0〈η く N)路韦根数据端ロ DATAO或DATAl有高电平到低电平的下降沿跳变,则经过扫描去抖、移位、计数和超时控制处理; 步骤2 :如果韦根数据计数器的值与韦根数据格式N位相同并且数据位校验正确则将韦根通道数据状态寄存器第η位标志位置1,同时根据韦根通道数据状态寄存器之前的值是否为O输出中断信号到MCU中断输入INT端ロ,等待MCU中断响应后读取数据; 步骤3 :MCU响应中断、通过与韦根总线桥之间的并行总线,采用标准时序读取韦根通道数据状态寄存器的值,井根据该寄存器的置I标志位读取对应韦根通道数据寄存器的有效数据,读后将该标志位清零; 步骤4 :继续判断韦根通道数据状态寄存器值是否等于零,如果不为零则继续读取韦根通道数据状态寄存器并根据该寄存器的置I标志位读取对应韦根通道数据寄存器的值,读后将该标志位清零,直到该寄存器值等于零。
2.根据权利要求I所述的ー种多路门禁控制器韦根数据采集方法,其特征在于所述的韦根总线桥是时序逻辑电路,包括复杂可编程逻辑器件CPLD或现场可编程门阵列FPGA等,内部可定义韦根通道数据寄存器、韦根通道数据状态寄存器、韦根数据计数器、去抖计时器、韦根数据超时控制定时器。
3.根据权利要求I所述ー种多路门禁控制器韦根数据采集方法,其特征在于韦根总线桥外接I只低频有源晶振和I只高频有源晶振,其中低频率有源晶振用于韦根数据采集的扫描去抖定时、超时控制;高频率有源晶振作为韦根总线桥与MCU之间并行通信时序的主频。
4.根据权利要求I所述的ー种多路门禁控制器韦根数据采集方法,其特征在于所述的超时控制的方法经过扫描去抖判断信号有效后,韦根数据超时控制定时器开启,或清零并重新开始计时;如果超时控制定时器溢出则将韦根通道数据状态寄存器、韦根数据计数器清零,超时控制定时器清零并停止计时,如果超时控制定时器在溢出前检测到韦根数据端ロ有有效信号则清零并重新计时。
5.根据权利要求I所述的ー种多路门禁控制器韦根数据采集方法,其特征在于所述的输出中断的方法韦根通道数据状态寄存器第η位标志位置I之前寄存器的值是否等于O,如果等于O则产生一次中断,如果不等于O则不产生中断信号。
6.根据权利要求I所述的ー种多路门禁控制器韦根数据采集方法,其特征在于所述的读取对应韦根通道数据寄存器的有效数据的方法在读时序的片选和读地址使能信号有效后,韦根总线桥将韦根通道数据寄存器的有效数据锁存到并行数据总线上等待MCU读取,其中数据总线接ロ低字节对应韦根寄存器数据低字节,字节高位在前,最高字节的值等于该韦根通道数据寄存器所对应的通道号。
7.根据权利要求I所述的ー种多路门禁控制器韦根数据采集方法,其特征在于其中MCU范围适用于8bit、16bit、32bit等各种类型嵌入式微型处理器。
全文摘要
一种多路门禁控制器韦根数据采集方法,包括微型控制器MCU与韦根接口之间构造一个韦根总线桥接电路,MCU与韦根总线桥之间通过并行总线构成电连接,韦根接口与韦根总线桥接电路之间通过IO线构成电连接。韦根总线桥采用“中断+扫描去抖+移位+奇偶校验+超时控制”的方法采集韦根数据.其优点是支持多路韦根数据采集,需要占用的MCU资源少。数据的采集、去抖、移位、计数、校验、超时控制等工作都由韦根总线桥处理,不占用MCU的CPU开销和中断资源,即使多路韦根接口同时工作,MCU也只需要响应一次中断后一次性读取多路韦根数据,具有实时性高、可靠性高、低成本的特点。
文档编号G07C9/00GK102693568SQ20121015749
公开日2012年9月26日 申请日期2012年5月21日 优先权日2012年5月21日
发明者付厚奎, 袁行船, 郑贤忠, 陆德波 申请人:中船重工(武汉)凌久高科有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1