当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于ARM7的多路韦根信号采集与处理

在门禁、安防、楼宇自动化等领域中,各类身份识别卡(如磁卡、射频IC卡)包含的ID信息经读卡器(Reader)读取后转化为二进制数据,一般采用标准韦根(Wiegand)接口或串行通信方式与各类控制设备相连,以实现相应的管理和控制功能。与串行通信相比,韦根信号具有响应速度快、数据保密性及兼容性好的优点,应用较为普遍。本文介绍了一种基于ARM7的多路韦根信号采集与处理的方法,具有实现方便、功能强的特点。

1 韦根信号简介

韦根信号是一种单工的串行异步通信协议。它的每个信息帧由一串不定长的二进制数据位构成。根据所表达的ID信息的长短,帧长度有26、34、42和66位4种常见的格式。其中,首位和末位为奇偶校验位,所以实际对应的ID信息字长分别为3、4、5和8个字节。韦根信号接口采用2线制输出,如图1所示。D0/D1分为“0”数据线和“1”数据线,信号高电平为+5 V,低电平有效(逻辑“1”)。例如,D1出现一次低电平表示1;D0出现一次低电平表示0。信号的脉冲宽度为40~100μs,脉冲周期为0.8~1.6 ms,相邻两帧发送时间间隔(帧间距)≥250 ms,通信距离小于150 m。

2 接口硬件构成

接收韦根信号的上层控制设备通常是一个单片机控制系统,承担了I/O口驱动、以太网通信、数据处理、液晶显示等任务。韦根信号脉冲宽度仅为40~100μs,如果采用扫描I/O口的方式,只有满足扫描周期<40 μs的条件(即采样频率高于25 kHz),才能够捕获一个信息帧内所有的下降脉冲信号,否则将因出现“脉冲遗漏”造成读数错误。如此高的扫描速度将极大地消耗CPU资源,阻塞单片机系统其他任务的正常执行,所以一般通过外部中断控制线INT接入韦根信号。每个韦根接头都连接到CPU的一个中断信号引脚上,以中断触发的方式处理。由于CPU外部中断数量的限制,一台控制设备最多只能接入1~2路韦根信号。

为了能够接收多路信号,可以由另一个独立的单片机构成一个从机系统,以循环扫描数据总线的方式工作,专门负责多路信号的采集与处理,并将处理后的ID信息通过串行或并行方式发给主控单片机。但是这种方式增加了系统的复杂度,从而给可靠性带来隐患,同时也增加了成本。

本设计中主控制器是NXP2214,采用中断触发综合扫描I/O的新方法,只用一个CPU的中断信号,实现多路韦根接口信号的采集。韦根接口硬件电路如图2所示。韦根接口是5 V的电平,而ARM内核的CPU是3.3 V的电平,因此韦根信号首先通过芯片SN74LVC4245转换成3.3 V电平。然后,输入到NXP2214的P0.8~P0.15引脚上,这些引脚通过I/O方式扫描信号。每个韦根信号通过8输入与非门SN74HC30D得到一个中断信号,输入到NXP2214的外部中断P0.16引脚。

当有任何一路韦根接口产生低电平时,经过SN74-HC30D都会产生中断;微控制器立刻响应中断,扫描输入信号获取完整的信号帧后退出中断。这样,只需要一个中断信号,只在有信号时扫描I/O,不但不会阻塞系统其他任务的正常执行,而且可以扩展出更多的韦根接口。

3 接口软件设计

为了快速响应,使用最高级的中断优先级,当外部4路韦根接口有任何一路信号产生有效电平时,NXP2214都可以产生中断。在中断处理程序中,并行扫描4路韦根接口,并分别保存到变量。如果大于脉冲周期的时间间隔内(如2.5 ms),都没有发现任何一路信号产生有效电平,则认为传输完毕。接着处理数据和发送消息通知其他任务,然后退出中断。并行I/O扫描的流程如图3所示。其中,WG[0]~WG[3]为全局变量;外部中断处理函数使用中断句柄调用。

具体的扫描判断过程如下:在定时器没有超时时,首先读入韦根信号引脚的电平到cur变量;接着判断pre是否等于(cur&pre),即判断是否产生1到0变化的有效电平,通过下降沿判断的方式,防止误把1次0当成多个0读入。如果产生了下降沿,则判断信号是哪路韦根信号,对应存入变量WG[0]~wG[3]。如果是DATA0产生,则直接把变量左移1位;如果是DATA1产生,则变量加1后再左移。

该并行扫描处理的方法,能够保证韦根接口在同时有多路信号产生的情况下,也可以正确操作。中断触发扫描过程,一个扫描结束后信号都保存到WG[0]~WG[3]中。

本文采用的是标准韦根输出,信号帧由26位二进制数组成,帧格式如下:

奇偶校验判断正确后,将变量中的数据去除校验位变成有效数据;然后调用OSMboxPost函数发送消息,以通知其他任务处理。

4 结 论

本文的程序和硬件均在实际产品中调试通过。实验表明,在8个通道同时完成输入连续的韦根信号的情况下,微控制器NXP2214不仅能够全部正确接收读卡器的韦根数据,还能同时完成处理TCP/IP、液晶显示以及其他任务,达到了设计要求。单中断触发并行I/O扫描的方法,不仅可满足应用要求,扩展出多个韦根接口,而且具有成本低、易实现、功能强等特点。

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

联发科下一代旗舰芯片天玑9400的传闻近期在数码圈掀起了不少讨论。知名博主数码闲聊站爆料称,为确保天玑9400在性能和能效上占据优势,联发科深入参与了Armv9“Blackhawk黑鹰”CPU架构的设计,并指出这种新架构...

关键字: 天玑9400 CPU

5月11日消息,Arrow Lake、Lunar Lake还没有发布,Intel再下一代处理器Panther Lake的消息就传出来了,CPU方面没啥惊喜,GPU又一次要飞跃。

关键字: GPU CPU 芯片

Optiver通过包括EPYC CPU、Solarflare以太网适配器、Virtex FPGA和Alveo加速卡在内的高性能AMD解决方案搭建其业务基础

关键字: CPU 数据中心 以太网

利用LogiCoA™微控制器,以更低功耗实现与全数字控制电源同等的功能

关键字: 微控制器 电源 CPU

2024年4月18日 – 提供超丰富半导体和电子元器件™的业界知名新品引入 (NPI) 代理商贸泽电子 (Mouser Electronics) 很荣幸地宣布与Edge Impulse建立新的全球合作关系。Edge Im...

关键字: 机器学习 MCU CPU

无论您是在研究如何使用 10GigE 还是寻求所需考虑事项的建议,本文均提供有实践,帮助确保单相机 10GigE 视觉系统设置顺利并拥有良好性能。 我们列出了主机系统配置、布线和相机设置的实践。

关键字: 视觉系统 CPU 存储器

Apr. 16, 2024 ---- NVIDIA新一代平台Blackwell,包含B系列GPU及整合NVIDIA自家Grace Arm CPU的GB200等。TrendForce集邦咨询指出,GB200的前一代为GH2...

关键字: CPU GPU

人工智能是集合众多方向的综合性学科,在诸多应用领域均取得了显著成果[1]。随着航空领域人工智能技术研究的不断深入,面向开放式机载智能交互场景,人工智能的应用可解决诸多问题。例如智能感知、辅助决策等,可利用人工智能算法对多...

关键字: 人工智能 PCIe CPU

CPU针脚弯了,用工具调正就不会有影响。开机自检也通过,CPU 再出问题就不是针脚引起的问题。针脚只要不断就没有问题,有的CPU出厂的时候针脚就有点弯,这并不是什么大问题,只要用镊子轻轻地弄直就可以了。

关键字: CPU 针脚 开机自检

瑞典乌普萨拉,2024年3月27日 – 全球领先的嵌入式系统开发软件解决方案供应商IAR自豪地宣布:公司备受全球数百万开发者青睐的开发环境再次升级,已率先支持瑞萨首款通用32位RISC-V MCU,该 MCU 搭载了瑞萨...

关键字: MCU RISC-V CPU
关闭
关闭