0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何与韦根读头或者韦根其他设备对接?

Q4MP_gh_c472c21 来源:21ic论坛 作者:yangjiaxu 2021-05-03 18:38 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

韦根是一种开放的通讯协议,具体官方介绍如下:

Wiegand协议是国际上统一的标准,有很多格式,标准的26-bit 应该是最常用的格式。此外,还有34-bit 、37-bit 等格式。格式的含义如下:当给出这一串数字,用户并不知道这串数字的含义,但如果说这是一个电话号码的时候,那么你可能就会说:哦,028是成都的区号,而88888888是电话号码。但是安防行业并不愿意把这些格式公开,而安防公司也常常变化这些格式来保证产品的保密性。

而标准26-bit 格式是一个开放式的格式,这就意味着任何人都可以购买某一特定格式的HID卡,并且这些特定格式的种类是公开可选的。26-Bit格式就是一个广泛使用的工业标准,并且对所有HID的用户开放。几乎所有的门禁控制系统都接受标准的26-Bit格式。

Wiegand(韦根)协议是由摩托罗拉公司制定的一种通讯协议,它适用于涉及门禁控制系统的读卡器和卡片的许多特性;其协议并没有定义通讯的波特率、也没有定义数据。长度韦根格式主要定义是数据传输方式:Data0和Data1两根数据线分别传输0和1.现应用最多的是26bit,34bit,36bit,44bit等等。

通俗的来说,韦根(Wiegand)协议又称韦根码,可以理解为是一种通信工具,其主要应用于读卡器(读头)到门禁控制器。当读卡器识别到有效卡后,将卡片的钥匙信息以韦根协议的方式传输,再而转换成数据发送给控制器,控制器验证钥匙信息有效后打开门。

韦根数据输出由二根线组成,分别是DATA0 和 DATA1 ,使用TTL电平传输,二根线分别为‘0’或‘1’输出。

输出‘0’时:DATA0线上出现负脉冲;

输出‘1’时:DATA1线上出现负脉冲;

负脉冲宽度TP=100微秒;周期TW=1600微秒;也就是说,无论传输“0”还是“1”,两条数据线上的电平都是“异或”关系。

a671d672-9b7a-11eb-8b86-12bb97331649.jpg

一般门禁常用的韦根协议是26/34,本次楼主想用STC89C52RC实现对韦根数据的接收,恰巧此单片机具有2路外部中断IO(具体为P3.2与P3.3)。

a693395c-9b7a-11eb-8b86-12bb97331649.png

本次,将韦根读头的D0接在MCU的P3.2,D1接在MCU的P3.3上,GND接在一起,之后就可以与韦根读头或者韦根其他设备对接了。

外部中断初始化程序如下:

void InterruptInit(){ IT0 = 1; // 外部中断源选择为下降沿触发 EX0 = 1; // 开外部中断 0 IT1 = 1; EX1 = 1; EA = 1; // 开总中断}

外部中断处理函数如下:

void GetD0 () interrupt 0{ if(count == 0) // 获取偶校验码 { firstbit = 0; } else if(count 《 9) // 获取前八位 HID码 { CardId[0] = (CardId[0] 《《 1) & 0xfe; } else if(count 《 17) // 获取 PID的前八位 { CardId[1] = (CardId[1] 《《 1) & 0xfe; } else if(count 《 25) // 获取 PID的后八位 { CardId[2] = (CardId[2] 《《 1) & 0xfe; } else { lastbit = 0; // 获取奇校验码,使能标志位 r_done = 1; }

count++;

if(count == 26) count = 0;}void GetD1 () interrupt 2{ if(count == 0) { firstbit = 1; } else if(count 《 9) { CardId[0] = (CardId[0] 《《 1) | 0x01; } else if(count 《 17) { CardId[1] = (CardId[1] 《《 1) | 0x01; } else if(count 《 25) { CardId[2] = (CardId[2] 《《 1) | 0x01; } else { lastbit = 1; r_done = 1; }

count++;

if(count == 26) count = 0;}

将获取到的数据,可以通过串口发出来,也可以正常通过程序处理数据。本次使用串口将数据打印出来。

串口初始化程序如下:

void UartInit(void){ TMOD = 0x20; TL1 = 0xfd; TH1 = 0xfd; TR1 = 1; SCON = 0xd0; EA = 1;}

最终,将韦根获取到的数据通过串口打印出来。

前三个字节是16进制的数据,后五个字节是通过程序转换的BCD码。

至此,基于51单片机的韦根数据接收已经完成了,那么,你看懂了么?欢迎在下方评论区讨论哦。

原文标题:基于STC89C52的韦根数据接收

文章出处:【微信公众号:嵌入式ARM】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6074

    文章

    45341

    浏览量

    663715
  • 数据
    +关注

    关注

    8

    文章

    7315

    浏览量

    93993

原文标题:基于STC89C52的韦根数据接收

文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式微处理器】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    德国图林州代表团一行访问保隆科技

    ,图林州经济、农业与乡村发展部,州发展局、州工程师协会、行业协会、德国埃尔福特工商会等政府成员以及图林州著名企业、高校、创新中心成员,此行目标是促进德国图林州高科技企业与中国的产业对接
    的头像 发表于 10-28 10:55 454次阅读

    罗克尔自动化接连斩获行业重要奖项

    近日,作为工业自动化、信息化和数字化转型领域的全球领先企业之一,罗克尔自动化接连斩获行业重要奖项。罗克尔 ArmorKinetix 分布式伺服驱动器先后荣膺《MM 现代制造》颁发的“创新产品奖
    的头像 发表于 10-27 09:50 332次阅读

    技术生态,为何需要云上繁荣?

    云上技术生态,科技自立自强的下一个目标
    的头像 发表于 07-01 10:11 2365次阅读
    <b class='flag-5'>根</b>技术生态,为何需要云上繁荣?

    六类双绞线6和12的区别大吗

    六类双绞线没有6芯线的标准规格,常见规格为4对(8)芯线,12芯线不属于标准六类双绞线结构。 一、六类双绞线的标准结构 芯线数量: 六类双绞线(Cat 6)的标准结构为4对(8
    的头像 发表于 04-17 10:16 4215次阅读
    六类双绞线6<b class='flag-5'>根</b>和12<b class='flag-5'>根</b>的区别大吗

    罗克尔携手百事食品加速数字化转型

    作为工业自动化、信息化和数字化转型领域的全球领先企业之一,罗克尔自动化与百事食品(中国)有限公司(简称“百事食品”)于近日成功举办了为期三天的研学活动,罗克尔各部门技术专家与百事食品多工厂技术人员积极参与。
    的头像 发表于 04-14 09:22 640次阅读

    罗克尔自动化以AI技术赋能未来产业创新

    近日,由上海市研发公共服务平台管理中心与漕河泾开发区联合主办的“沪小科”上海科技创新资源开放日系列活动——漕河泾·罗克尔自动化净零智造联创中心专场在上海科技绿洲举行。作为工业自动化、信息化和数字化转型领域的全球领先企业之一,罗克尔自动化受邀出席。
    的头像 发表于 03-18 10:01 772次阅读

    网线怎么接水晶

    网线接水晶的方法通常遵循国际标准T568B或T568A线序,以下是基于T568B标准的详细步骤: 一、准备工具和材料 压线钳 水晶网线(已剥去外皮,露出内部线芯) 二、线
    的头像 发表于 03-03 11:03 3873次阅读

    网线怎么分电话和网络

    ,实际上只使用了其中的4(白橙、橙、白绿、绿)来传输数据。因此,剩余的4芯线可以被用来作为电话线使用。以下是将一网线分为电话和网络的具体步骤: 所需材料 网线钳 电话水晶 网络
    的头像 发表于 02-19 11:30 3409次阅读

    罗克尔自动化发布2024可持续发展报告

    近日,工业自动化、信息化和数字化转型领域的全球领先企业罗克尔自动化,正式发布了其《可持续发展2024年度报告》。该报告全面展示了罗克尔自动化在推动可持续发展方面的战略思考、实践成果与未来蓝图
    的头像 发表于 02-18 10:06 811次阅读

    罗克尔自动化荣获“优秀供应商”称号

    近期,罗克尔自动化作为引领创新的生产性服务业链主,在赋能产业转型升级的赛道上再获殊荣。罗克尔自动化(中国)有限公司荣获了全球轨道交通行业首座“灯塔工厂”——太原重工轨道交通设备有限公司颁发的“优秀供应商”称号,有力彰显出其积
    的头像 发表于 02-12 11:39 722次阅读

    罗克尔采用智能制造技术赋能员工发展(下)

    在上一篇文章中,罗克尔自动化为各位分享了如何运用自动化缩小技能差距、提高效率。承接上期,罗克尔将继续为您介绍运用自动化大幅提高员工效率的方法。
    的头像 发表于 02-07 10:58 785次阅读

    防止文件系统破坏,OverlayRootfs 让你的设备更安全

    多个文件系统层合并成一个单一的视图,在Linux系统中广泛应用。使用OverlayRootfs的设备可以很轻松的实现:文件系统写保护、恢复出厂设置功能。文件系
    的头像 发表于 01-08 16:33 2462次阅读
    防止<b class='flag-5'>根</b>文件系统破坏,OverlayRootfs 让你的<b class='flag-5'>设备</b>更安全

    AB变频器和罗克尔变频器图纸

    AB变频器,罗克尔变频器图纸
    发表于 01-07 18:22 13次下载

    罗克尔自动化莅临赛象科技考察交流

    近日,罗克尔自动化中国区总裁石安一行莅临赛象科技考察交流,并出席“罗克尔自动化与赛象科技联合创新示范基地”揭牌仪式,赛象科技高级顾问张建浩、副董事长史航接待来宾并出席揭牌仪式。罗克尔自动化智能
    的头像 发表于 12-20 17:05 1131次阅读

    网线有6怎么回事

      网线中存在6线芯的情况,可以从以下几个方面来理解。
    的头像 发表于 12-14 11:32 3024次阅读