导航:首页 > 源码编译 > rfid算法实现

rfid算法实现

发布时间:2025-03-02 17:17:37

Ⅰ rfid技术标准采用了哪些crc检验算法

一般用CRC16的C语言算法:
#define PRESET_VALUE 0xFFFF
#define POLYNOMIAL 0x8408
unsigned int uiCrc16Cal(unsigned char const * pucY, unsigned char ucX)
{
unsignedchar ucI,ucJ;
unsignedshort int uiCrcValue = PRESET_VALUE;
for(ucI = 0; ucI < ucX; ucI++)
{
uiCrcValue = uiCrcValue ^ *(pucY + ucI);
for(ucJ = 0; ucJ < 8; ucJ++)
{
if(uiCrcValue& 0x0001)
{
uiCrcValue= (uiCrcValue >> 1) ^ POLYNOMIAL;
}
else
{
uiCrcValue= (uiCrcValue >> 1);
}
}
}
return uiCrcValue;
}
pucY是要计算CRC16的字符数组的入口,ucX是字符数组中字符个数。
上位机收到数据的时候,只要把收到的数据按以上算法进行计算CRC16,结果为0x0000表明数据正确。像UR6258 UR5002等超高频读写器都是用这样的算法的

Ⅱ 关于RFID防碰撞算法中的Q值算法

Q=S/G,CN=1/Q,so C=G/(S*N)

Ⅲ 求解释RFID的防碰撞算法中的查询树QT算法麻烦详细说一下算法原理,如何防碰撞的谢谢~

查询树QT(QueryTree)是一种典型的树结构算法,其算法原理:读写器发送长度为k的prefix(前置代码,一般为置于一组号码前的数字或字母,表示所属区域等);标签ID中前kbit与prefix匹配的tag反馈第(k+1)bit至最后1bit。如果读写器收到的标签ID碰撞,再分别将prefix加“1”和“0”,作为新的prefix发送出去。如果没有碰撞,就表明一个标签被识别了。


举例:设有三个标签ID分别为“010”,“011”,“100”,读写器的查询序列首先置为“0”、“1”,读写器先发送序列“0”进行查询,发生碰撞,此时将序列置为“00”、“01”,再次分别发送,序列“00”没有响应,序列“01”发生碰撞,将序列置为“010”、“011”,成功识别。回溯到序列“1”,只有标签“100”响应,成功识别。如图所示

阅读全文

与rfid算法实现相关的资料

热点内容
ade7755与单片机 浏览:523
hp服务器管理口地址不知道怎么弄 浏览:16
程序员面试数据结构 浏览:72
androidstudio多版本 浏览:199
ofo服务器波动是什么意思 浏览:524
app不见了怎么恢复华为 浏览:891
和家欢商城APP怎么样 浏览:49
嗷呜app怎么老师没有网络 浏览:51
域名如何划分阿里云服务器 浏览:971
程序员应会开发技术 浏览:853
pdf带链接 浏览:699
中兴手机加密失败怎么办 浏览:606
六大算法之三动态规划csdn 浏览:121
linux如何使用静态库 浏览:495
ubuntu安装驱动命令行 浏览:763
pdf修改字体大小 浏览:861
scrm源码下载 浏览:29
印尼孕妇溯源码燕窝的价钱 浏览:905
mel和python 浏览:758
vb背单词软件源码 浏览:801