RFID 寻卡的 0x0100卡片类型
时间: 2024-04-26 08:24:14 浏览: 16
0x0100是ISO/IEC 14443A标准中定义的一个位掩码,用于指定PcdRequest指令中寻卡的卡片类型。当PcdRequest指令的第二个字节设置为0x0100时,表示寻卡的卡片类型为MIFARE Classic卡片。
MIFARE Classic卡片是一种常见的非接触式智能卡,工作频率为13.56MHz,符合ISO/IEC 14443A标准。MIFARE Classic卡片通常用于门禁、公交卡、储值卡等应用中。
在进行RFID寻卡操作时,可以使用0x0100位掩码来指定寻找MIFARE Classic卡片。此时,PcdRequest指令会向周围发出射频信号,寻找附近的MIFARE Classic卡片,并建立通信连接。
相关问题
rfid寻卡代码 keil5
在Keil5中,你可以使用RC522模块来实现RFID寻卡功能。下面是一个示例代码:
```c
#include <reg52.h>
#include <stdio.h>
#include <string.h>
#define uchar unsigned char
#define uint unsigned int
sbit SDA = P2^0; // SDA引脚
sbit SCL = P2^1; // SCL引脚
// RC522命令字
#define PCD_IDLE 0x00 // 取消当前命令
#define PCD_AUTHENT 0x0E // 验证密钥
#define PCD_RECEIVE 0x08 // 接收数据
#define PCD_TRANSMIT 0x04 // 发送数据
#define PCD_TRANSCEIVE 0x0C // 发送并接收数据
#define PCD_RESETPHASE 0x0F // 复位
#define PCD_CALCCRC 0x03 // CRC计算
// Mifare_One卡片命令字
#define PICC_REQIDL 0x26 // 寻天线区内未进入休眠状态
#define PICC_REQALL 0x52 // 寻天线区内全部卡
#define PICC_ANTICOLL 0x93 // 防冲撞
#define PICC_SElECTTAG 0x93 // 选卡
#define PICC_AUTHENT1A 0x60 // 验证A密钥
#define PICC_AUTHENT1B 0x61 // 验证B密钥
#define PICC_READ 0x30 // 读块
#define PICC_WRITE 0xA0 // 写块
#define PICC_DECREMENT 0xC0 // 扣款
#define PICC_INCREMENT 0xC1 // 充值
#define PICC_RESTORE 0xC2 // 块数据备份
#define PICC_TRANSFER 0xB0 // 块数据传输
#define PICC_HALT 0x50 // 沉默
// MF522命令字
#define MFRC522_IDLE 0x00 // 取消当前命令
#define MFRC522_MEM 0x01 // 存储器
#define MFRC522_GENID 0x02 // 生成随机ID号
#define MFRC522_CALCCRC 0x03 // CRC计算
#define MFRC522_TRANSMIT 0x04 // 发送数据
#define MFRC522_RECEIVE 0x08 // 接收数据
#define MFRC522_TRANSCEIVE 0x0C // 发送并接收数据
#define MFRC522_AUTHENT1A 0x0E // 验证A密钥
#define MFRC522_AUTHENT1B 0x0F // 验证B密钥
#define MFRC522_RESETPHASE 0x0F // 复位
// MF522寄存器定义
#define MFRC522_REG_CONTROL 0x0C // 控制寄存器
#define MFRC522_REG_STATUS1 0x0D // 状态寄存器1
#define MFRC522_REG_DATA 0x12 // 数据寄存器
#define MFRC522_REG_FIFO_LEVEL 0x0A // FIFO状态寄存器
#define MFRC522_REG_MODE 0x11 // 模式寄存器
#define MFRC522_REG_BIT_FRAMING 0x0D // 位帧调节寄存器
#define MFRC522_REG_COLL 0x0E // 冲突检测寄存器
// MF522位定义
#define MFRC522_BIT_RFU 0x80 // 保留位
#define MFRC522_BIT_FIFO 0x40 // 用来判断FIFO的状态
#define MFRC522_BIT_MODE 0x7C // 用来设置MF522的工作模式
#define MFRC522_BIT_CRC_RESULT 0x40 // 用来判断CRC校验的结果
#define MFRC522_BIT_RFU2 0x08 // 保留位
#define MFRC522_BIT_TEMP 0x04 // 用来判断是否执行了温度校准
#define MFRC522_BIT_RFU3 0x02 // 保留位
#define MFRC522_BIT_RFU4 0x01 // 保留位
// MF522寄存器位定义
#define MFRC522_MASK_CRCOK 0x04 // CRC校验成功
#define MFRC522_MASK_CRCERROR 0x08 // CRC校验失败
#define MFRC522_MASK_IRQ 0x80 // 中断请求
#define MFRC522_MASK_TXIRq 0x40 // 发送中断请求
#define MFRC522_MASK_RXIRq 0x20 // 接收中断请求
#define MFRC522_MASK_IDLEIRq 0x10 // 空闲中断请求
#define MFRC522_MASK_HIALERTIRq 0x08 // 高级别警报中断请求
#define MFRC522_MASK_LOALERTIRq 0x04 // 低级别警报中断请求
#define MFRC522_MASK_ERRIRq 0x02 // 错误中断请求
#define MFRC522_MASK_TIMERIRq 0x01 // 定时器中断请求
#define MFRC522_MASK_ALL 0x7F // 全部中断请求
// MF522错误代码定义
#define MFRC522_OK 0x00 // 成功
#define MFRC522_ERR 0xFF // 错误
// MF522 FIFO长度定义
#define MFRC522_FIFO_SIZE 64 // FIFO长度
// MF522寄存器定义
#define MFRC522_REG_FIFO_DATA 0x00 // FIFO数据寄存器
#define MFRC522_REG_FIFO_LEVEL 0x01 // FIFO状态寄存器
#define MFRC522_REG_CONTROL 0x0C // 控制寄存器
#define MFRC522_REG_BIT_FRAMING 0x0D // 位帧调节寄存器
#define MFRC522_REG_COLL 0x0E // 冲突检测寄存器
#define MFRC522_REG_MODE 0x11 // 模式寄存器
#define MFRC522_REG_TX_CONTROL 0x14 // 发送控制寄存器
#define MFRC522_REG_TX_AUTO 0x15 // 发送自动寄存器
#define MFRC522_REG_VERSION 0x37 // 版本寄存器
#define MFRC522_REG_TX_CRC_RESULT 0x22 // 发送CRC校验结果寄存器
#define MFRC522_REG_RX_CRC_RESULT 0x23 // 接收CRC校验结果寄存器
#define MFRC522_REG_RF_CONTROL 0x26 // RF控制寄存器
#define MFRC522_REG_RF_STATUS 0x27 // RF状态寄存器
#define MFRC522_REG_RX_CONTROL 0x28 // 接收控制寄存器
#define MFRC522_REG_RX_MODE 0x2A // 接收模式寄存器
#define MFRC522_REG_SERIAL_SPEED 0x2B // 串行速率寄存器
#define MFRC522_REG_CRC_PRESET_LSB 0x31 // CRC预设值低字节寄存器
#define MFRC522_REG_CRC_PRESET_MSB 0x32 // CRC预设值高字节寄存器
// MF522命令字
#define MFRC522_CMD_IDLE 0x00 // 取消当前命令
#define MFRC522_CMD_MEM 0x01 // 存储器
#define MFRC522_CMD_GENID 0x02 // 生成随机ID号
#define MFRC522_CMD_CALCCRC 0x03 // CRC计算
#define MFRC522_CMD_TRANSMIT 0x04 // 发送数据
#define MFRC522_CMD_RECEIVE 0x08 // 接收数据
#define MFRC522_CMD_TRANSCEIVE 0x0C // 发送并接收数据
#define MFRC522_CMD_AUTHENT1A 0x0E // 验证A密钥
#define MFRC522_CMD_AUTHENT1B 0x0F // 验证B密钥
#define MFRC522_CMD_RESETPHASE 0x0F // 复位
// MF522寄存器位定义
#define MFRC522_MASK_CRCOK 0x04 // CRC校验成功
#define MFRC522_MASK_CRCERROR 0x08 // CRC校验失败
#define MFRC522_MASK_IRQ 0x80 // 中断请求
#define MFRC522_MASK_TXIRq 0x40 // 发送中断请求
#define MFRC522_MASK_RXIRq 0x20 // 接收中断请求
#define MFRC522_MASK_IDLEIRq 0x10 // 空闲中断请求
#define MFRC522_MASK_HIALERTIRq 0x08 // 高级别警报中断请求
#define MFRC522_MASK_LOALERTIRq 0x04 // 低级别警报中断请求
#define MFRC522_MASK_ERRIRq 0x02 // 错误中断请求
#define MFRC522_MASK_TIMERIRq 0x01 // 定时器中断请求
#define MFRC522_MASK_ALL 0x7F // 全部中断请求
// MF522错误代码定义
#define MFRC522_OK 0x00 // 成功
#define MFRC522_ERR 0xFF // 错误
// MF522 FIFO长度定义
#define MFRC522_FIFO_SIZE 64 // FIFO长度
// MF522寄存器定义
#define MFRC522_REG_FIFO_DATA 0x00 // FIFO数据寄存器
#define MFRC522_REG_FIFO_LEVEL 0x01 // FIFO状态寄存器
#define MFRC522_REG_CONTROL 0x0C // 控制寄存器
#define MFRC522_REG_BIT_FRAMING 0x0D // 位帧调节寄存器
#define MFRC522_REG_COLL 0x0E // 冲突检测寄存器
#define MFRC522_REG_MODE 0x11 // 模式寄存器
#define MFRC522_REG_TX_CONTROL 0x14 // 发送控制寄存器
#define MFRC522_REG_TX_AUTO 0x15 // 发送自动寄存器
#define MFRC522_REG_VERSION 0x37 // 版本寄存器
#define MFRC522_REG_TX_CRC_RESULT 0x22 // 发送CRC校验结果寄存器
#define MFRC522_REG_RX_CRC_RESULT 0x23 // 接收CRC校验结果寄存器
#define MFRC522_REG_RF_CONTROL 0x26 // RF控制寄存器
#define MFRC522_REG_RF_STATUS 0x27 // RF状态寄存器
#define MFRC522_REG_RX_CONTROL 0x28 // 接收控制寄存器
#define MFRC522_REG_RX_MODE 0x2A // 接收模式寄存器
#define MFRC522_REG_SERIAL_SPEED 0x2B // 串行速率寄存器
#define MFRC522_REG_CRC_PRESET_LSB 0x31 // CRC预设值低字节寄存器
#define MFRC522_REG_CRC_PRESET_MSB 0x32 // CRC预设值高字节寄存器
// MF522命令字
#define MFRC522_CMD_IDLE 0x00 // 取消当前命令
#define MFRC522_CMD_MEM 0x01 // 存储器
#define MFRC522_CMD_GENID 0x02 // 生成随机ID号
#define MFRC522_CMD_CALCCRC 0x03 // CRC计算
#define MFRC522_CMD_TRANSMIT 0x04 // 发送数据
#define MFRC522_CMD_RECEIVE 0x08 // 接收数据
#define MFRC522_CMD_TRANSCEIVE 0x0
14443A卡片类型代码
14443A卡片类型代码是ISO/IEC 14443标准中定义的一种射频识别(RFID)卡片类型代码,它是一种高频智能卡标准,工作频率为13.56MHz。这种卡片类型代码主要用于非接触式智能卡和近场通信(NFC)应用中。在14443A标准中,卡片可以分为Type A和Type B两种类型,其中Type A卡片的类型代码为0x01。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)