RC522 射频读卡器模块(MINI型)

RC522 射频读卡器模块(MINI型)一、硬件:二、[主芯片介绍]MFRC522是应用于13.56MHz非接触式通信中高集成度的读写卡芯片,是NXP公司针对“三表”应用推出的一款低电压、低成本、体积小的非接触式读写卡芯片,是智能仪表

大家好,又见面了,我是你们的朋友全栈君。

一、硬件:

二、[主芯片介绍]
MF RC522是应用于13.56MHz非接触式通信中高集成度的读写卡芯片,是NXP公司针对“三表”应用推出的一款低电压、低成本、体积小的非接触式读写卡芯片,是智能仪表和便携式手持设备研发的较好选择。 MF RC522利用了先进的调制和解调概念,完全集成了在13.56MHz下所有类型的被动非接触式通信方式和协议。支持14443A兼容应答器信号。数字部分处理ISO14443A帧和错误检测。此外,还支持快速CRYPTO1加密算法,用语验证MIFARE系列产品。MFRC522支持MIFARE系列更高速的非接触式通信,双向数据传输速率高达424kbit/s。 作为13.56MHz高集成度读写卡系列芯片家族的新成员,MF RC522与MF RC500和MF RC530有不少相似之处,同时也具备许多特点和差异。它与主机间通信采用连线较少的串行通信,且可根据不同的用户需求,选取SPI、IIC或串行UART模式之一,有利于减少连线,缩小PCB板体积,降低成本。

三、[WMFRC522模块介绍]
WMFRC522模块采用Philips MFRC522原装芯片设计读卡电路,使用方便,成本低廉,适用于设备开发、读卡器开发等高级应用的用户、需要进行射频卡终端设计/生产的用户。本模块可直接装入各种读卡器模具。模块采用电压为3.3V,通过SPI接口简单的几条线就可以直接与用户任何CPU主板相连接通信,可以保证模块稳定可靠的工作、读卡距离远;
注:模块接口座可以按客户需求更改:

目前提供UART TTL、RX232和RS485三种接口

1、RC522接口芯片电路

1

 

2、通信电路

image

 

 

3、PCB效果

image

 

4、焊接完后的效果图:

PCB

PCB6

 

PCB2

 PCB3

PCB4

PCB5

 

4、固件:

/********************************************************************************
  * @Brief  : 测试522读写M1卡, 完成操作后PC6的LED闪烁一下,并打印到USART2上
  * @Param  : None
  * @Retval : None
  */
u8 MFRC522Test(void)
{
    u8 i;
    static u8 WriteFlag;
    u8 CardType[2], CardSN[4];
                          //0   1    2    3    4    5    6    7    8    9    10   11  12   13   14    15
    u8 DefaultData[16] = {0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0x01,0xFE,0x01,0xFE};
    u8 DefaultKey[6] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF}; 
    u8 DataD[4]  = {0,0,0,0×01};
    u8 BlockData[16];

  LED0_OFF();
  BEEP_OFF();
    if(MI_OK != PcdRequest(PICC_REQALL, CardType))   //扫描卡
    {
        printf(“IC Card Type: %x\n”, *((u16 *)CardType));
        return 1;
    }
    if(MI_OK != PcdAnticoll(CardSN))                 //防冲撞
    {
        printf(” IC Card SN: %x\n”, *((u32 *)CardSN));
        return 2;
    }

    if(MI_OK != PcdSelect(CardSN))                    //选定卡片
        return 3;
     if(MI_OK != PcdAuthState(PICC_AUTHENT1A, 1, DefaultKey, CardSN))//验证卡片密码
    return 4;   
    if(MI_OK != PcdRead(1, BlockData))               //读块
    return 5;
    for(i = 0; i < 4; i++)  
        printf(“%x”, BlockData[i]);
    if(!WriteFlag)
    {
        if(MI_OK != PcdWrite(1, DefaultData))         //写块
         return 6;
        WriteFlag = 1;
        printf(“First Write Value\n”);
    }   
    if(MI_OK != PcdValue(PICC_DECREMENT, 1, DataD))  //扣款
    return 7;   
    if(MI_OK != PcdRead(1, BlockData))               //读块
    return 8;
    printf(“IC Card Type: %x\n”, *((u16 *)CardType));
    printf(” IC Card SN: %x\n”, *((u32 *)CardSN));
    printf(“Select Card!\n”);
    printf(“Check Pass Word Ok!\n”);
    printf(“Data Value decrease!\n”);

    for(i = 0; i < 4; i++)  
        printf(“%x”, BlockData[i]);
    printf(“\n”);
    LED0_ON();                   
    BEEP_ON();                   

    return 0;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/154561.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python安装jieba库教程_pygame库

    python安装jieba库教程_pygame库方法一:使用pycharm里的检索项(此方法适用于需要使用pycharm的小伙伴)1、打开pycharm,在File下打开Settings。2、在ProjectInterpret菜单栏下,点击”+”号。3、在上方的检索框中输入需要下载的库的库名,点击下方InstallPackage。4、如出现:package”jieba”installsuccessfully的字样,库安装成功。方法二:自行下载第三方库通过指令安装1、…

  • 你走后,我才真的爱上你

    你走后,我才真的爱上你你走后,我才真的爱上你

  • 我的世界java版和基岩版对比_我的世界:盘点基岩版与JAVA版的差异,看完后选谁就一目了然了…

    我的世界java版和基岩版对比_我的世界:盘点基岩版与JAVA版的差异,看完后选谁就一目了然了…大家好,今天我们来讲讲基岩版与JAVA版的差异,根据个人爱好不同,看完后选谁就一目了然了。1.基岩版与Win10版的特性是相同的。JAVA版与Win10没什么相同的地方。2.基岩版是没有活塞bud的,而JAVA有更多bud状态。3.基岩版在红石方面会比较便捷,如基岩版的活塞可以推动容器,而JAVA版则没有这个特性。4.JAVA版有比基岩版更多的MOD。5.JAVA版的命名牌改成某个名字(忘记是什么…

  • acwing-1080. 骑士(基环树dp)[通俗易懂]

    acwing-1080. 骑士(基环树dp)[通俗易懂]Z 国的骑士团是一个很有势力的组织,帮会中聚集了来自各地的精英。他们劫富济贫,惩恶扬善,受到了社会各界的赞扬。可是,最近发生了一件很可怕的事情:邪恶的 Y 国发起了一场针对 Z 国的侵略战争。战火绵延五百里,在和平环境中安逸了数百年的 Z 国又怎能抵挡得住 Y 国的军队。于是人们把所有希望都寄托在了骑士团身上,就像期待有一个真龙天子的降生,带领正义打败邪恶。骑士团是肯定具备打败邪恶势力的能力的,但是骑士们互相之间往往有一些矛盾。每个骑士有且仅有一个他自己最厌恶的骑士(当然不是他自己),他是绝对不

  • uboot、kernel和rootfs烧录「建议收藏」

    uboot、kernel和rootfs烧录「建议收藏」烧写主u-bootmw.b0x420000000xff0x100000tftp0x42000000master/image_glibc/u-boot-hi3536.binsfprobe0sferase0x00x100000sfwrite0x420000000x00x100000reset注:1)这里的mw.b以字节写入,0x42000000是ddr的起始…

  • .net AutoEventWireup介绍

    .net AutoEventWireup介绍ASP.NET页会引发诸如Init、Load、PreRender等生命周期事件。默认情况下,可以使用Page_事件名称的命名约定将页事件绑定到方法。例如,若要为页的Load事件创建处理程序,可以创建名为P…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号