射频 rc500代码完全注释(12)
alNo(4bytes)
1411.//寻卡?防冲突?选择卡返回卡类型?2bytes?+卡序列号(4bytes) 1412.status=M500PiccCommonRequest(RevBuffer[1],&RevBuffer[2]); 1413.if(status!=0)/*寻卡指令?应答信息*/ 1414.{/*寻卡不成功*/
1415.status=M500PiccCommonRequest(RevBuffer[1],&RevBuffer[2]);/*再次寻卡*/
1416.if(status!=0)
1417.{/*寻卡还是不成功*/ 1418.
1419.RevBuffer[0]=1;
1420.RevBuffer[1]=status;/*做出应答信息给上位机*/ 1421.break; 1422.} 1423.} 1424.
1425.if(RevBuffer[2]==2)//返回信息 1426.cardtype=mifarepro;//MifarePro卡 1427.elseif(RevBuffer[2]==4)
1428.{cardtype=mifare1;//MifareOne卡 1429. 1430.}
1431.elseif(RevBuffer[2]==16)
1432.cardtype=mifarelight;//MifareLight卡 1433.else
1434.cardtype=unknowncard; 1435.
1436.RevBuffer[0]=3;
1437.RevBuffer[1]=status;/*做出应答信息给上位机*/ 1438.
1439.break; 1440.
1441.case3://防冲突读卡的系列号MLastSelectedSnr 1442.{status=M500PiccCascAnticoll(0,&RevBuffer[2]); 1443.status=0;
1444.if(status!=0) 1445.{/*反冲突失败*/ 1446.RevBuffer[0]=1;
1447.RevBuffer[1]=status;/*做出失败的应答信息给上位机*/ 1448.
1449.break; 1450.}
1451./*反冲突成功*/
1452.memcpy(MLastSelectedSnr,&RevBuffer[2],4);/*存储序列号*/
1453.RevBuffer[0]=5;
1454.RevBuffer[1]=status;/*做出成功的应答信息给上位机*/ 1455. 1456.}
1457.break; 1458.
1459.case4://选择卡SelectCard
1460.status=M500PiccCascSelect(MLastSelectedSnr,&RevBuffer[2]); 1461.
1462.if(status!=MI_OK) 1463.{
1464.RevBuffer[0]=1;
1465.RevBuffer[1]=status;/*做出失败的应答信息给上位机*/ 1466.break; 1467.}
1468.RevBuffer[0]=3;
1469.RevBuffer[1]=status;/*做出成功的应答信息给上位机*/ 1470.
1471.break;
1472.case5://KeyloadingintotheMFRC500'sEEPROM 1473.//校验卡密码(E2)
1474.status=M500PiccAuthE2(RevBuffer[1],MLastSelectedSnr,RevBuffer[2],RevBuffer[3]);
1475.RevBuffer[0]=1;/*入口参数?AUTH_MODE:A/B卡型号?SNR:卡序列号?KEYNR:密钥所在EE扇区数?BLOCK:密钥所 在卡数据块*/
1476.RevBuffer[1]=status; 1477.break;
1478.case6://KeyloadingintotheMFRC500'sEEPROM 1479.//下载密码(E2)
1480.status=M500PcdLoadKeyE2(RevBuffer[1],RevBuffer[2],&RevBuffer[3]);
1481.RevBuffer[0]=1;
1482.RevBuffer[1]=status; 1483.break;
1484.case7://AuthenticationwithdirectkeyloadingfromtheuC 1485.//直接校验密码
1486.memcpy(&RevBuffer[9],&RevBuffer[3],6);
1487.M500HostCodeKey(&RevBuffer[9],&RevBuffer[3]);
1488.status=M500PiccAuthKey(RevBuffer[1],MLastSelectedSnr,&RevBuffer[3],RevBuffer[2]);
1489.RevBuffer[0]=1;/*入口参数?AUTH_MODE:A/B卡型号?SNR:卡序列号?KEYNR:密钥所在RAM地址?BLOCK:密钥所在 卡数据块*/
1490.RevBuffer[1]=status; 1491.break;
1492.case8://Readthemifarecard 1493.//读卡
1494.status=M500PiccRead(RevBuffer[1],&RevBuffer[2]); 1495.if(status==0) 1496.{
1497.if(cardtype==mifare1||cardtype==mifarepro)
1498.RevBuffer[0]=17;/*卡类型决定一次能读出的数据个数*/ 1499.elseif(cardtype==1)
1500.RevBuffer[0]=9;/*一次读出9个*/ 1501.else
1502.RevBuffer[0]=16;/*一次读出16个?MIFARE1?*/ 1503.} 1504.else 1505.{
1506.RevBuffer[0]=1; 1507.}
1508.RevBuffer[1]=status; 1509.break;
1510.case9://Writethemifarecard 1511.//写卡下载密码
1512.status=M500PiccWrite(RevBuffer[1],&RevBuffer[2]); 1513.RevBuffer[0]=1;
1514.RevBuffer[1]=status; 1515.break;
1516.case10://写卡改变卡内EEROM中数据块中的内容
1517.status=M500PiccValue(RevBuffer[1],RevBuffer[2],&RevBuffer[3],RevBuffer[7]);
1518.RevBuffer[0]=1;/*入口参数?三种命令?自增?自减?改变??卡块地址?要写入的值?卡块地址*/ 1519.RevBuffer[1]=status; 1520.break;
1521.case12://参数设置
1522.RevBuffer[0]=1;//contact 1523.RevBuffer[1]=0; 1524.break; 1525.} 1526.} 1527.
1528.///////////////////////////////////////////////////////////////////////
1529.//主函数
1530.///////////////////////////////////////////////////////////////
////////
1531.voidmain(void) 1532.{
1533.init(); 1534.while(1) 1535.{
1536.if(CmdValid) 1537.{
1538.CmdValid=FALSE;
1539.cmd_execution();//进入IC卡处理程序 1540.CALL_isr_UART(); 1541.} 1542.} 1543.}
…… 此处隐藏:1360字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [基础教育]2016-2022年中国钢芯铝绞线市场现状调
- [基础教育]语文部编版初一语文下册练习题 句式变
- [基础教育]南京继续教育参考答案--深入学习贯彻习
- [基础教育]国旗下讲话稿——珍惜时间好读书
- [基础教育]北师大版六年级数学下册圆锥的体积教学
- [基础教育]人教版-音乐-四年级下册-四年级下册音
- [基础教育]乔布斯2019年斯坦福大学毕业典礼致辞.d
- [基础教育]2015年加油站安全知识竞赛试题及答案
- [基础教育]2020年教师年度考核个人工作总结
- [基础教育]2019年中考历史试题-2019年大庆市初中
- [基础教育]初三仁爱英语第一轮总复习教案
- [基础教育]SG-A094电气配管安装工程隐蔽验收记录
- [基础教育]冀教版小学数学三年级下册第六单元教材
- [基础教育]青岛版(五制)小学科学二年级下册16《制
- [基础教育]2018-2019年初中科学初一中考真卷测试
- [基础教育]幼儿园大班期末简短评语精选
- [基础教育]2018云南临沧公务员考试申论技巧:这样
- [基础教育]学校食堂经营管理方案
- [基础教育]新中国砥砺奋进的七十年原文
- [基础教育]真空泵的选型及常用计算公式
- 高职田径课程教学现状与对策
- 全髋关节置换术在老年股骨颈骨折患者中
- 青人社厅函〔2016〕576号(附件)工资
- cp101-07砂子检验作业指导书 - secret
- 微观经济学 第八章 博弈论 习题
- 2014高考真题(词语运用)汇编及答案
- 2018年人教版七年级语文下册《第三单元
- 苏教版数学四年级上册第一单元试题 - M
- 四川大学新闻与传播考研2000-2010年真
- 浙江万里学院英语专业四年制本科教学计
- 最新2018马年事业祝福语-范文word版(2
- 最全模具行业术语英文翻译
- 皮亚杰的发展心理学理论
- 64篇高考情景式默写 练习题及答案
- 仿写(学生稿)
- 《SQL Server数据库技术》试卷A
- 第七章作业答案
- 江苏省赣榆县海头高级中学高中语文必修
- 浙江省2001年10月自考正常人体解剖学答
- 2012英语重点短语




