电子产品世界 » 论坛首页 » 综合技术 » 智能硬件与可穿戴 » 基于Stm32的RFID-RC522模块的对RFID读写使用

共1条 1/1 1 跳转至

基于Stm32的RFID-RC522模块的对RFID读写使用

菜鸟
2019-04-10 14:21:54    评分
声明:
Si522   主要优势点:
1. 直接PIN2PIN 兼容RC522,与FM17550/FM17520/RM522
2. 完全替换RC522,接收功耗下降10mA,相比新增了自动寻卡和定时唤醒,自动寻卡功耗为4.5uA,业界最低。
3.首创全新寻卡方式,读卡模组不再死机。 
4.联系:Tel 13823261387,企鹅 2355239035,黄生

正文:
    RFID-RC522是一个淘宝上比较常见的一个识别RFID的一个模块。他可以做到对RFID的读写。
    MF RC522 是应用于13.56MHz 非接触式通信中高集成度读写卡系列芯片中的一员。是NXP公司针对“三表”应用推出的一款低电压、低成本、体积小的非接触式读写卡芯片,是智能仪表和便携 式手持设备研发的较好选择
RFID读写卡的过程    读写卡主要有五个步骤:寻卡,防冲突,选卡,认证,读/写卡。
寻卡// REQ_ALL代表寻天线区内所有卡,TagType为返回的卡的类型status= PcdRequest( REQ_ALL , TagType );TagType返回的卡类型有:
0x4400 = Mifare_UltraLight
0x0400 = Mifare_One(S50)
0x0200 = Mifare_One(S70)
0x0800 = Mifare_Pro(X)
0x4403 = Mifare_DESFire
防冲突if(!status){    status = PcdAnticoll(SelectedSnr);    // ......}认证if(!status){    // 认证    snr = 1;    // 扇区号1    status = PcdAuthState(KEYA, (snr*4+3), DefaultKey, SelectedSnr);    // 校验1扇区密码,密码位于每一扇区第3块    // ......}四个参数分别是:验证A密钥,块地址,扇区密码,卡序列号
读写卡if(!status){    //读写卡    status = PcdRead((snr*4+0), buf);   // 读卡,读取1扇区0块数据到buf[0]-buf[16]    status = PcdWrite((snr*4+0), "way2");   // 写卡,将buf[0]-buf[16]写入1扇区0块    if(!status)     {        //读写成功        printf("read finish!\n");        printf("读到的值是: %s\n",buf);        WaitCardOff();    }}代码以下为核心代码:


作者:CqRoot




共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]