⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ricreg.h

📁 使用RC531读卡芯片读取二代身份证的模块软件设计部分
💻 H
字号:
//[RICReg.h]---------------------------------------------------------------*
//本文件包含:                                                              *
//    (1)MF RC531映像寄存器名                                              *
//    (2)RC531命令集                                                       *
//-------------------------------------------------------------------------*

#ifndef RICREG_H
#define RICREG_H

#ifdef __cplusplus
extern "C"
{
#endif

//------------------------------------------------------------------------*
//1.MC RC531映像寄存器名(8页、共64个寄存器)                               *
//------------------------------------------------------------------------*
//第0页 命令和状态
#define     RegPage               0x00   //页寄存器
#define     RegCommand            0x01   //命令寄存器
#define     RegFIFOData           0x02   //FIFO数据寄存器
#define     RegPrimaryStatus      0x03   //主状态寄存器
#define     RegFIFOLength         0x04   //FIFO长度寄存器
#define     RegSecondaryStatus    0x05   //第二状态寄存器
#define     RegInterruptEn        0x06   //中断允许寄存器
#define     RegInterruptRq        0x07   //中断请求寄存器

//第1页 控制和状态
//#define     RegPage               0x08   //页寄存器
#define     RegControl            0x09   //控制寄存器
#define     RegErrorFlag          0x0A   //错误标志寄存器
#define     RegCollPos            0x0B   //冲突位置寄存器
#define     RegTimerValue         0x0C   //定时器值寄存器
#define     RegCRCResultLSB       0x0D   //CRC低字节寄存器
#define     RegCRCResultMSB       0x0E   //CRC高字节寄存器
#define     RegBitFraming         0x0F   //位封装寄存器

//第2页 传送器和编码控制
//#define     RegPage               0x10   //页寄存器
#define     RegTxControl          0x11   //传送器控制寄存器
#define     RegCwConductance      0x12   //天线电导系数寄存器
#define     RegModConductance     0x13   //驱动电导系数寄存器
#define     RegCoderControl       0x14   //编码器控制寄存器
#define     RegModWidth           0x15   //脉冲宽度寄存器
#define     RegModWidthSOF        0x16   //预留
#define     RegTypeBFraming       0x17   //TypeB帧设置寄存器

//第3页 接收器和解码控制
//#define     RegPage               0x18   //页寄存器
#define     RegRxControl1         0x19   //接收器控制寄存器1
#define     RegDecoderControl     0x1A   //解码器控制寄存器
#define     RegBitPhase           0x1B   //位相寄存器
#define     RegRxThreshold        0x1C   //接收器阈值寄存器
#define     RegBPSKDemControl     0x1D   //BPSK解调控制寄存器
#define     RegRxControl2         0x1E   //接收器控制寄存器2
#define     RegClockQControl      0x1F   //Q时钟控制寄存器

//第4页 射频时间和通道冗余
//#define     RegPage               0x20   //页寄存器
#define     RegRxWait             0x21   //接收器等待寄存器
#define     RegChannelRedundancy  0x22   //通道冗余寄存器
#define     RegCRCPresetLSB       0x23   //CRC预置值低字节寄存器
#define     RegCRCPresetMSB       0x24   //CRC预置值高字节寄存器
#define     RegTimeSlotPeriod     0x25   //预留
#define     RegMfOutSelect        0x26   //MFOU选择寄存器
#define     RFU27                 0x27   //预留

//第5页 FIFO、定时器及中断引脚配置
//#define     RegPage               0x28   //页寄存器
#define     RegFIFOLevel          0x29   //FIFO大小寄存器
#define     RegTimerClock         0x2A   //定时器时钟寄存器
#define     RegTimerControl       0x2B   //定时器控制寄存器
#define     RegTimerReload        0x2C   //定时器重载寄存器
#define     RegIRqPinConfig       0x2D   //中断引脚配置寄存器
#define     RFU2E                 0x2E   //预留
#define     RFU2F                 0x2F   //预留

//第6页 预留
//#define     RegPage               0x30   //页寄存器
#define     RFU31                 0x31   //预留
#define     RFU32                 0x32   //预留
#define     RFU33                 0x33   //预留
#define     RFU34                 0x34   //预留
#define     RFU35                 0x35   //预留
#define     RFU36                 0x36   //预留
#define     RFU37                 0x37   //预留

//第7页 测试控制
//#define     RegPage               0x38   //页寄存器
#define     RFU39                 0x39   //预留
#define     RegTestAnaSelect      0x3A   //天线模拟测试寄存器
#define     RFU3B                 0x3B   //预留
#define     RFU3C                 0x3C   //预留
#define     RegTestConfiguration  0x3C
#define     RegTestDigiSelect     0x3D   //天线数字测试寄存器
#define     RFU3E                 0x3E   //预留
#define     RegTestEE             0x3E
#define     RegTestDigiAccess     0x3F   //预留

#define  DEF_FIFO_LENGTH    64           //FIFO最大长度

//------------------------------------------------------------------------*
//2.MC RC531命令集                                                        *
//------------------------------------------------------------------------*
#define PCD_IDLE           0x00 //取消当前操作
#define PCD_WRITEE2        0x01 //从FIFO中读取数据写入到EEPROM中
#define PCD_READE2         0x03 //读取EEPROM,存入FIFO中
#define PCD_LOADCONFIG     0x07 //从EEPROM中读取数据初始化RC531
#define PCD_LOADKEYE2      0x0B //复制EEPROM中的密码到密码缓冲区
#define PCD_AUTHENT1       0x0C //使用Cryptol1算法执行卡片认证的第一部分
#define PCD_CALCCRC        0x12 //启动CRC协处理器。计算结果在CRCResultXXX中
#define PCD_AUTHENT2       0x14 //使用Cryptol1算法执行卡片认证的第二部分
#define PCD_RECEIVE        0x16 //启动接收器
#define PCD_LOADKEY        0x19 //从FIFO中取密码到密码缓冲区
#define PCD_TRANSMIT       0x1A //将FIFO中的数据发送给电子标签
#define PCD_TRANSCEIVE     0x1E //发送并接收
#define PCD_RESETPHASE     0x3F //复位及初始化(上电或硬件复位)

#ifdef __cplusplus
}
#endif

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -