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

📄 rf.h

📁 使用RC531读卡芯片读取二代身份证的模块软件设计部分
💻 H
字号:
//[Includes.h]总头文件-----------------------------------------------------*
//本文件包含:                                                              *
//    主函数(main)文件中用到的头文件,外部函数声明及有关常量命名            *
//-------------------------------------------------------------------------*
//头文件
#include "Type.h"            //类型别名定义
#include "SPI.h"             //SPI函数头文件
#include "RICReg.h"          //RC531寄存器
#include "LED.h"             //该头文件中包含了LED驱动函数声明

#ifndef RF_H
#define RF_H

#ifndef TRUE
#define TRUE  1
#endif

#ifndef FALSE
#define FALSE 0
#endif

//MFRC531控制引脚定义
#define  RF_CTL_P	PTD      //MFRC531接在D口
#define  RF_CTL_D 	DDRD     //相应的方向寄存器
#define  RF_RST	 	2        //复位
#define  RF_IRQ		3        //外部中断

//1.驱动函数
//读寄存器
INT8U RFRegRead(INT8U addr);

//写寄存器
void RFRegWrite(INT8U addr, INT8U Data);

//操作缓冲区
INT8U Command_Send(INT8U *Send_Buf,INT8U Length,INT8U comm_set);//命令接口
INT8U Clear_FIFO(void);                                         //清空缓冲区
INT8U Read_FIFO(INT8U *Send_Buf);                               //读缓冲区
void  Write_FIFO(INT8U *Send_Buf,INT8U Length);                 //写缓冲区

//2.复位及初始化
//复位函数
INT8U RFReset(void);

//RC531初始化
void RC531_Init(void);

//3.读卡操作
//设置读AB模式,0 - ISO14443B; 1 - ISO14443A
void RC531_14443ABInit(INT8U type);

//读卡函数
INT8U ReadTag(INT8U n, INT8U *UIDLen, INT8U UID_Buf[]);

//3.1 ISO14443A电子标签操作
INT8U Request_TypeA(void);
INT8U Get_UID_TypeA(INT8U *UIDLen, INT8U UID_Buf[]);
INT8U Check_UID(INT8U Len, INT8U ReData[]);

//3.2 ISO14443B电子标签操作
INT8U Request_TypeB(void);
INT8U ATTRIB_TypeB(void);
INT8U Get_UID_TypeB(INT8U *UIDLen, INT8U UID_Buf[]);

#endif

⌨️ 快捷键说明

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