[资料分享与下载] RFID RC522电子钱包 测试成功

[复制链接]
 楼主| 奥德赛 发表于 2015-11-3 09:50 | 显示全部楼层 |阅读模式
电子钱包初始化程序。
Card_Data2[17] 要写入数据的数组缓冲
Section        要进行电子钱包初始化的块区
  1. memset(Card_Data2,0,17);
  2. Card_Data2[15] = ~0x05;
  3. Card_Data2[14] = 0x05;
  4. Card_Data2[13] = ~0x05;
  5. Card_Data2[12] = 0x05;

  6. Card_Data2[4]  = 0XFF;
  7. Card_Data2[5]  = 0XFF;
  8. Card_Data2[6]  = 0XFF;
  9. Card_Data2[7]  = 0XFF;
  10. status = PcdWrite(Section*4+1,Card_Data2);                   //写入0XAA,0X01,0X01……


  11. 电子钱包充值
  12. Last_Money_Vual[4]  充值前电子钱包的数值
  13. Money_Vual[4]          要充值的充值数值
  14. Now_Money_Vual[4] 充值后的钱包数值
  15. status = PcdRead(Section*4+1,Card_Data2);                  
  16. if(status == MI_OK)
  17. {
  18.         Last_Money_Vual[0]= Card_Data2[3];
  19.         Last_Money_Vual[1]= Card_Data2[2];
  20.         Last_Money_Vual[2]= Card_Data2[1];
  21.         Last_Money_Vual[3]= Card_Data2[0];
  22.         status = PcdValue (0xc1,Section*4+1,Money_Vual); 主要操作 (充值)
  23.         if(status == MI_OK)
  24.          {
  25.             status = PcdRead(Section*4+1,Card_Data2);                    //再一次把它读取出来16字节的卡片数据
  26.             if(status == MI_OK)
  27.              {
  28.                 Now_Money_Vual[0]= Card_Data2[3];
  29.                 Now_Money_Vual[1]= Card_Data2[2];
  30.                 Now_Money_Vual[2]= Card_Data2[1];
  31.                 Now_Money_Vual[3]= Card_Data2[0];
  32.                                                                                    
  33.                }                                                                        
  34.         }

  35. }
  36. 电子钱包扣款
  37. Last_Money_Vual[4]  充值前电子钱包的数值
  38. Money_Vual[4]          要充值的充值数值
  39. Now_Money_Vual[4] 充值后的钱包数值
  40. status = PcdRead(Section*4+1,Card_Data2);                  
  41. if(status == MI_OK)
  42. {
  43.         Last_Money_Vual[0]= Card_Data2[3];
  44.         Last_Money_Vual[1]= Card_Data2[2];
  45.         Last_Money_Vual[2]= Card_Data2[1];
  46.         Last_Money_Vual[3]= Card_Data2[0];
  47.         status = PcdValue (0xc0,Section*4+1,Money_Vual);  主要操作(扣款)
  48.         if(status == MI_OK)
  49.          {
  50.             status = PcdRead(Section*4+1,Card_Data2);                    //再一次把它读取出来16字节的卡片数据
  51.             if(status == MI_OK)
  52.              {
  53.                 Now_Money_Vual[0]= Card_Data2[3];
  54.                 Now_Money_Vual[1]= Card_Data2[2];
  55.                 Now_Money_Vual[2]= Card_Data2[1];
  56.                 Now_Money_Vual[3]= Card_Data2[0];
  57.                                                                                    
  58.                }                                                                        
  59.         }

  60. }


FSL_TICS_ZJJ 发表于 2015-11-3 10:58 | 显示全部楼层
楼主可以放一些源代码文件出来,这样大家可以看到你具体的函数内容。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

46

主题

397

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部

46

主题

397

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部