单片机/MCU论坛
直播中

蜗牛-123

10年用户 26经验值
私信 关注

有没有RC522与上位机通信软件?

   要做RC522模块,上位机测试软件打开老是出问题,求大神帮忙
  • 捕获28.PNG
已退回1积分

回帖(12)

胡飞

2015-4-3 09:11:14
有,到百度直接搜

举报

livingliving

2015-4-3 09:15:19
有的#include
#include "reg52.h"
#include "main.h"
#include "mfrc522.h"
#include
#define MAXRLEN 18                        
/////////////////////////////////////////////////////////////////////
//¹¦    ÄÜ£ºÑ°¿¨
//²ÎÊý˵Ã÷: req_code[IN]:Ѱ¿¨·½Ê½
//                0x52 = Ѱ¸ÐÓ¦ÇøÄÚËùÓзûºÏ14443A±ê×¼µÄ¿¨
//                0x26 = Ѱδ½øÈëÐÝÃß״̬µÄ¿¨
//          pTagType[OUT]£º¿¨Æ¬ÀàÐÍ´úÂë
//                0x4400 = Mifare_UltraLight
//                0x0400 = Mifare_One(S50)
//                0x0200 = Mifare_One(S70)
//                0x0800 = Mifare_Pro(X)
//                0x4403 = Mifare_DESFire
//·µ    »Ø: ³É¹¦·µ»ØMI_OK
/////////////////////////////////////////////////////////////////////
char PcdRequest(unsigned char req_code,unsigned char *pTagType)
{
   char status;  
   unsigned int  unLen;
   unsigned char ucComMF522Buf[MAXRLEN];
//  unsigned char xTest ;
   ClearBitMask(Status2Reg,0x08);
   WriteRawRC(BitFramingReg,0x07);

//  xTest = ReadRawRC(BitFramingReg);
//  if(xTest == 0x07 )
//   { LED_GREEN  =0 ;}
// else {LED_GREEN =1 ;while(1){}}
   SetBitMask(TxControlReg,0x03);

   ucComMF522Buf[0] = req_code;

   status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,1,ucComMF522Buf,&unLen);
//     if(status  == MI_OK )
//   { LED_GREEN  =0 ;}
//   else {LED_GREEN =1 ;}
   if ((status == MI_OK) && (unLen == 0x10))
   {   
       *pTagType     = ucComMF522Buf[0];
       *(pTagType+1) = ucComMF522Buf[1];
   }
   else
   {   status = MI_ERR;   }
   
   return status;
}

/////////////////////////////////////////////////////////////////////
//¹¦    ÄÜ£º·À³åײ
//²ÎÊý˵Ã÷: pSnr[OUT]:¿¨Æ¬ÐòÁкţ¬4×Ö½Ú
//·µ    »Ø: ³É¹¦·µ»ØMI_OK
/////////////////////////////////////////////////////////////////////  
char PcdAnticoll(unsigned char *pSnr)
{
    char status;
    unsigned char i,snr_check=0;
    unsigned int  unLen;
    unsigned char ucComMF522Buf[MAXRLEN];
   

    ClearBitMask(Status2Reg,0x08);
    WriteRawRC(BitFramingReg,0x00);
    ClearBitMask(CollReg,0x80);

    ucComMF522Buf[0] = PICC_ANTICOLL1;
    ucComMF522Buf[1] = 0x20;

    status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,2,ucComMF522Buf,&unLen);

    if (status == MI_OK)
    {
             for (i=0; i<4; i++)
         {   
             *(pSnr+i)  = ucComMF522Buf[i];
             snr_check ^= ucComMF522Buf[i];
         }
         if (snr_check != ucComMF522Buf[i])
         {   status = MI_ERR;    }
    }
   
    SetBitMask(CollReg,0x80);
    return status;
}
举报

peterliuh

2015-4-3 14:44:17
已经收藏了,十分感谢
举报

蜗牛-123

2015-4-3 20:04:43
引用: xianyoudian 发表于 2015-4-3 14:07
数据违背在该地址,重装一下

软件不用安装,打开就能用
举报

明日霏雨

2015-4-18 16:40:10
楼主串口可以通信吗,我上位机可以连接,但是读不到卡的信息
举报

岑辉

2015-10-12 13:16:04
我的也是,调半天出不来。
举报

inchengpp

2015-12-27 14:28:06
同样 N次都读不到东西 单片机有没有卡都能检到 就是读不来
举报

2016-7-6 14:42:09
引用: inchengpp 发表于 2015-12-27 14:28
同样 N次都读不到东西 单片机有没有卡都能检到 就是读不来

你好,请问现在解决了吗?我也遇到了同样的问题。。。。。。
举报

2016-7-6 15:10:19
引用: 岑辉 发表于 2015-10-12 13:16
我的也是,调半天出不来。

后来行了嘛?同样的问题头疼啊
举报

胡齐兵

2016-8-1 14:10:52
PRO1520  pin对pin 兼容 CV520,RC522,FM17520,FM17522质量第一,价格第二。 E-mail:bin.hu@profact.net  扣扣:1101521061 资料齐全 和我们取得联络
举报

咸鱼与梦想

2016-8-1 14:31:35
看看先~~,是了~
举报

麟无聂

2016-10-4 21:19:09
同样问题,求解决方法;谢谢!
举报

更多回帖

发帖
×
20
完善资料,
赚取积分