EPC Class0 Gen1标签识别代码C++

这篇博客介绍了EPC Class0 Gen1标签协议的细节,包括只读与可读写特性。作者通过C++代码展示了如何模拟阅读器随机选择标签的过程,使用梅森旋转算法提高随机数质量。博客还提供了代码链接,供读者进一步研究。
摘要由CSDN通过智能技术生成

写博客是一种积累!让优秀成为一种习惯!谨记每天要做的事!

 

Gen1标准是EPCglobal的前身Auto-IDCenter制定的。EPC的Gen1是第一代之意,Gen是generation(世代)的缩写。它包括Class0协议和Class1协议,其中Class0协议下的标签是只读的,不可以写入;而Class1协议下的标签虽是可读写的,但是只能写一次,写完后就成为只读标签,这两种协议下的标签都不具有保密性。Class1和Class2协议都是EPC的标准协议。

214805_H5r9_3649283.png

1.标签长度m作为一个常量;

2.标签个数n和各个标签s通过控制台cin控制流进行输入;

3.以系统时间作为随机数种子产生随机数,是模拟阅读器随机产生随机数的过程;

4.将满足rands的标签放到v中,是模拟标签响应阅读器的过程,没有响应的标签进入沉默状态;

5.将v覆盖到s,标签响应下一轮的随机数做准备,i++表示标签发送下一位的识别号,把k赋给n表示下一轮只需要从本轮响应的k个标签中选取;

6.由于以系统时间作为随机数种子,1秒钟之内所产生的随机数是相同的,为了提高效率,因此加入了“响应标签个数k”,当一秒钟之内产生的随机数使得没有标签响应时,立即执行abs(rands-1),使得剩余标签响应。

 

运行效果:

144953_F1Vw_3649283.png

 

随机函数使用梅森旋转算法,其随机性优于编译器rand函数。

EPC Class0 Gen1代码C++的源码地址:https://gitee.com/feistel/codes/jibxned32t6fs4ocv05hm53

 

荣耀给予世界,真实留给自己,致敬开源!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值