资源简介
本代码实现了MFRC522与89C52的通信,删除了一些不必要的部分,整合了网上的代码,添加了具体的注释和意义,可读性更大,能够帮助初学者快速的掌握MFRC522和89C52的通信协议,实现射频打开的功能,本例程可采用1602和12864实时观察输出效果。

代码片段和文件信息
#include
#include
#include
unsigned char UID[5]Temp[4];
unsigned char code DefaultKey[6] = {0xFF 0xFF 0xFF 0xFF0xFF0xFF};
unsigned char datain[16] = {0x320x300x310x350x340x300x360x300x340x300x360x380x360x360x360x36};
unsigned char dataout[16];
unsigned char status;
void feeb(){ //寻卡成功响应函数
ff=0;
delay_10ms(1);
ff=1;
delay_10ms(1);
}
void show(void)
{
unsigned char i;
init_1602();
for(i=0;i<16;i++)
{
write_data(dataout[i]);}
}
void Auto_Reader(void){
while(1){
if(PcdRequest(0x52Temp)==MI_OK){ //
xun=0;
if(PcdAnticoll(UID)==MI_OK){ //
fang=0;
if(PcdSelect(UID)==MI_OK){
xuan=0;
if(PcdAuthState(0x606DefaultKeyUID)==MI_OK)
{
yan=0;
if(PcdRead(6dataout)==MI_OK){
if(status==MI_OK) {read=0;}
if(PcdHalt()==MI_OK)
xiu=0;
break;}}}}
}else P1=0xff;
}
}
void InitializeSystem(){
ES=0; //关中断
SCON = 0x50; // REN=1允许串行接受状态,串口工作模式1
//10位UART(1位起始位,8位数据位,1位停止位,无奇偶校验),波特率可变
TMOD = 0x21; // 定时器1工作于方式2,1weiyugongzuofangshi1 8位自动重载模式 用于产生波特率
TH1=TL1=0xFD; // 波特率9600 (本次测试采用晶振为11.0592)
PCON &= 0x7f; // 波特率不倍增
TR1 = 1; //定时器1开始工作,产生波特率
//发送标志位置0
TI=0; //接收标志位置0
RI=0;
ES=1;
PcdReset();
PcdAntennaOff();
PcdAntennaOn();
M500PcdConfigISOType( ‘A‘ );
}
void isr_UART(void) interrupt 4 using 1{
unsigned char i;
if(TI){
TI=0;
for(i=0;i<16;i++){
SBUF=dataout[i];
while(!TI);
TI=0;
}
REN=1;
}
}
void main( ){
InitializeSystem( );
Auto_Reader();
show();
send(dataout);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-05-07 14:42 89C52_RC522 - 读卡\
文件 2013 2017-05-07 14:42 89C52_RC522 - 读卡\MAIN.c
文件 1288 2017-05-01 10:28 89C52_RC522 - 读卡\MAIN.H
文件 5058 2017-05-07 14:42 89C52_RC522 - 读卡\MAIN.LST
文件 13906 2017-05-07 14:42 89C52_RC522 - 读卡\MAIN.OBJ
文件 5666 2017-05-01 12:44 89C52_RC522 - 读卡\MFRC522.H
文件 43619 2017-05-07 14:42 89C52_RC522 - 读卡\RC522
文件 16703 2017-05-01 12:44 89C52_RC522 - 读卡\RC522.C
文件 7167 2017-05-07 14:42 89C52_RC522 - 读卡\RC522.hex
文件 55 2017-05-07 14:42 89C52_RC522 - 读卡\RC522.lnp
文件 27420 2017-05-07 14:42 89C52_RC522 - 读卡\RC522.LST
文件 36369 2017-05-07 14:42 89C52_RC522 - 读卡\RC522.M51
文件 36345 2017-05-07 14:42 89C52_RC522 - 读卡\RC522.OBJ
文件 2554 2017-05-01 17:24 89C52_RC522 - 读卡\RC522.Opt
文件 2216 2017-04-29 17:51 89C52_RC522 - 读卡\RC522.Uv2
文件 2519 2017-05-01 14:01 89C52_RC522 - 读卡\RC522_Opt.Bak
文件 2289 2016-01-06 00:12 89C52_RC522 - 读卡\RC522_Uv2.Bak
文件 6376 2005-03-22 15:22 89C52_RC522 - 读卡\STARTUP.A51
文件 14061 2014-01-31 11:51 89C52_RC522 - 读卡\STARTUP.LST
文件 749 2014-01-31 11:51 89C52_RC522 - 读卡\STARTUP.OBJ
- 上一篇:CCS5.1-5.4可用licence
- 下一篇:简易交通灯的仿真电路图
相关资源
- 数字电压表(源程序 protues仿真)
- EESkill NRF24L01 无线模块用户手册
- 基于STC89C52的瓦斯检测及红外控制系统
- 基于51单片机的智能十字路口交通灯系
- RC522读写MI卡程序,STC89C52RC调试通过,
- STC89C52+LCD12864+18B20+1302万年历
- 单片机89c52与MLX90614红外的测温程序
- proteus仿真、keil4、DHT11、LCD1602
- [Altium_Designer]_STC89C52单片机最小系统原
- 51单片机控制步进电机软硬件实现
- 基于STC89C52的GSM智能家居报警系统
- 基于STC89C52单片机的数字时钟
- 基于STC89C52单片机空气PM2.5系统设计资
- STC89C52中文资料
- 基于STC89C52单片机智能温控风扇设计资
- 内含RC522与51单片机硬件设计与程序,
- 单片机89c52rc最小系统电路图资料
- MFRC522射频卡,RFID,非接触式IC卡,感
- 基于STC89C52和DS18B20的温控系统
- 基于STC89C52的温湿度检测
- stc89些列单片机手册
- 89C51的全自动洗衣机控制系统论文加
- 单片机红外遥控知识打包
- 基于STC89C52单片机温度系统控制资料
- 基于stc89c52红外语音通信装置
- stc89c52原理图及PCB布局图
- MAX7219数码管驱动89C52控制
- RFID-RC522+STC89C52+串口通信+新手教程+中
- 多功能小车 51单片机控制 超声测距
- 基于STC89C52 16*16点阵贪吃蛇
评论
共有 条评论