防碰撞算法c语言,RFID防碰撞 二进制树形搜索算法 C语言实现
本篇文章只是简单的用C语言模拟出了二进制搜索算法的实现方法,但是并没有用到理论中的二叉树排序理论,所以并不是一个严格意义上的树形搜索算法
话不多说,先上一段A标签收到读写器发送的REQUEST命令的程序
if(a_val==0) //A读卡器是否被静默
{ //若没有,则检测A的UID是否小于此轮读写器发送的REQUEST命令
for(i = 0;i<8;i++)
{
if(a[i]<=o[i])
{
a1_val++;
}
}
if(a1_val==8)//若每一位都小于,则发送自身的UID到模拟的公共信道【j】上
{
for(i=0;i<8;i++)j[i]=a[i];
}}
而其他标签的处理函数与A类似,但需要注意的是,在发送自身UID到公共信道上时,需检测一下信道的值是否与自身UID位上的值相同,若不同,则把信道的值置'X',看如下代码:
if(b_val==0)
{
for(i=0;i<8;i++)
{
if(b[i]<=o[i])
{
b1_val++;
}
}
if(a1_val==8)//若信道已有标签发送自身的UID,则B只需与信道做比较即可,这也是因为本实验是用程序模拟导致,真正实际是不需要的
{
if(b1_val==8)
{
for(i=0;i<8;i++)
{
if(j[i]!=b[i])
j[i]='x';
}
}
}
else
{
if(b1_val==8){
for(i=0;i<8;i++)
{
j[i]=b[i];
}
}
}
}
而读写器接收到信道里的数据后开始进行解释,如下程序所示:
for(i=0;i<8;i++)
{
if(j[i]!='x')//若信道此位不是无法检测量,则直接当作读写器下一轮的命令值
o[i]=j[i];
else if(j[i]=='x')//若信道含有无法检测量
{
o1_val=1; //进行下一轮循环
if(o_val == 0)//若'X'是最高位,则置零
{
o_val=1;
o[i]='0';
}
else o[i]='1'; //否则置一
}
}
程序一共由两层do-while循环构成,最外层循环变量是检测是否所有的标签都已读写完毕,内层循环是是否检测到了剩余中最小的UID标签
具体的程序因为我第一次写博客,不知道怎么上传文件,所有需要的同学可以私聊我~~
第一次写博客,有很多不懂的地方,而且这个算法也不是标准意义上的二进制树形搜索算法,希望对您有所启发。
没有源代码啦,QAQ
防碰撞算法c语言,RFID防碰撞 二进制树形搜索算法 C语言实现相关推荐
- 二进制树形搜索算法_二进制搜索
二进制树形搜索算法 二进制搜索用于在 值的排序列表 . 它选择排序值数组中的中间元素,并将其与目标值进行比较: 这就是我们在数组中寻找的关键. 如果它小于目标值,则在中间元素之后搜索,直到数组末尾. ...
- 8-5 以下四个在读写器作用范围内的电子标签为例说明二进制树形搜索算法选择电子标签的迭代过程
8-5 以下四个在读写器作用范围内的电子标签为例说明二进制树形搜索算法选择电子标签的迭代过程.假设这四个电子标签的序列号分别为: 电子标签1: 10110010 电子标签2: ...
- c语言 整数转二进制取位,C语言位运算--将整数转换成二进制串以及反转整数后N位...
// c primer plus上的内容,位运算 #include char * itobs (int n,char * ps); void show_bstr(const char *); int ...
- RFID防碰撞算法学习记录
RFID防碰撞算法即是射频识别中多标签(tag)向唯一阅读器(reader)发其ID时,阅读器如何用尽量小的算力,控制不同标签,让其串行地发消息的算法. 本文是论文阅读记录. 实现方法主要分两类:确定 ...
- m基于可见光通信系统的RFID接口过程以及ALOHA防碰撞算法的matlab仿真
目录 1.算法描述 2.matlab算法仿真效果 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 射频识别技术(Radio Frequency Identification,RFID)是 ...
- 喜用神最正确的算法_关于RFID系统的防碰撞算法有哪些呢?
在超高频读写器的产品参数中经常会出现"防碰撞协议"等字眼,那么可以实现防碰撞协议的算法有哪些呢?下面就和小编一起来了解了解! 1.纯ALOHA算法 此算法主要采用标签先发言的方式, ...
- 韦冬雪计算机应用,捕获效应下RFID防碰撞算法的研究与应用
摘要: 作为物联网核心技术之一的射频识别(Radio Frequency Identification,RFID)技术,其应用市场正随着物联网的普及而拓宽.阅读器和标签是RFID系统的重要组成部分,阅 ...
- RFID防碰撞算法(三)
RFID防碰撞算法(三) (2012-02-10 11:08) 标签: 算法 http://blog.chinaunix.net/uid-10604457-id-3069619.html 1.2. ...
- 【RFID】基于MATLAB的RFID 系统的空中接口过程以及防碰撞算法仿真
1.软件版本 matlab2013b 2.本算法理论知识 RFID的接口过程满足如下的结构框图: 3.核心代码 clc; %清屏 close all; %关闭所有窗口 clear all; %清除所有 ...
最新文章
- 2020非全日计算机博士,在职攻读博士是不是非常难,免考在职博士和非全日博士有什么不同...
- c语言奇葩错误,6个奇葩的(hello,world)C语言版(转)
- Java实现点击导出excel页面遮罩屏蔽,下载完成后解除遮罩
- MySql通过Limit限制查询的行数
- 在混合开发框架模式中,简化客户端对Web API的频繁调用
- 2020-11-11 对象与类
- 情景规划(Scenario planning) (转载)
- 菜谱网 java 源码_基于JSP的美食网站食谱网站、javaweb源码
- python:实现希尔密码算法(附完整源码)
- 仿真动画是怎么制作的? 仿真动画类型有哪些?
- 【设计】Adobe Xd 简明教程 对比 Sketch
- 平均数编码:针对高基数定性特征(类别特征)的数据预处理/特征工程
- 纠正你读错的电脑英文词汇--(2)
- 中字符转换中文乱码的处理方法
- 简单航班查询系统java_基于jsp的航班信息查询-JavaEE实现航班信息查询 - java项目源码...
- 如何让VeryCD电驴下载完后,自动关机?
- 评价股票博客好坏的指标(第11期)
- 800G以太网强势来袭:你准备好了吗?
- 《中国棒球》:MLB谱写中国棒球·点燃全民运动
- Phalcon学习笔记 - 安装
热门文章
- userdel删除用户失败提示:userdel: user * is currently logged in 解决方法
- 利用PDF.JS插件解决了本地pdf文件在线浏览问题(根据需要隐藏下载功能,只保留打印功能)
- PHP json_encode中文乱码解决方法
- java.util.ConcurrentModificationException 异常问题详解
- 如何在回调中访问正确的“ this”?
- 确定两个日期范围是否重叠
- Win10电脑定时关机无效怎么办
- nginx 带宽_Nginx日志如何分析 GoAccess
- 【Spring第九篇】AOP
- CSS3盒子模型(CSS3)