打印

[MCU方案]CC2530无线 IC 卡考勤机

[复制链接]
1528|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 sharknarduo 于 2015-6-12 19:02 编辑

IC 卡 (Integrated Circuit Card,集成电路卡),有些国家和地区
也称智能卡(smart card)、智慧卡(intelligent card)、微电路卡
(microcircuit card)或微芯片卡等。它是将一个微电子芯片嵌入符合 ISO
7816 标准的卡基中,做成卡片形式。 IC 卡读写器是 IC 卡与应用系统间
的桥梁,在 ISO 国际标准中称之为接口设备 IFD(Interface Device)。 IFD
内 CPU 通过一个接口电路与 IC 卡相连并进行通信。 IC 卡接口电路是 IC
卡读写器中至关重要的部分,根据实际应用系统的不同,可选择并行通信、
半双工串行通信和 I2C 通信等不同的 IC 卡读写芯片。
非接触式 IC 卡又称射频卡,成功地解决了无源(卡中无电源)和免
接触这一难题,是电子器件领域的一大突破。主要用于公交、轮渡、地铁
的自动收费系统,也应用在门禁管理、身份*明和电子钱包。

相关帖子

沙发
sharknarduo|  楼主 | 2015-6-12 18:55 | 只看该作者
一:在裸机上完成对 IC 卡的的防冲突处理,读卡号。
我们先来看看 IC 卡的读写流程,再通过代码控制 CC2530 完成对 IC 卡的操
作。
开始
RC522初始化
寻卡
寻到卡片
结束
选卡
Y
N
验证卡片
读卡 写卡
结束卡片操作

使用特权

评论回复
板凳
sharknarduo|  楼主 | 2015-6-12 18:57 | 只看该作者
1. #include "variable.h"
2. #include"delay.h"
3. #include "KEY.h"
4. #include "UART.h"
5. #include "IC_w_r.h"
6. void Initial()
7. {
8. CLKCONCMD &= ~0x40; //设置系统时钟源为 32MHZ 晶振
9. while(CLKCONSTA & 0x40); //等待晶振稳定为 32M
10. CLKCONCMD &= ~0x47; //设置系统主时钟频率为 32MHZ
11. UartInitial();
12.
13. …
14. …
IC_SCK = 1;
IC_CS = 1;
15. }
16. void IC_test()
17. {
18. uint
19. uchar qq[4];
20. uchar find=0xaa;
21. uchar ar;
22.
23. while(1)
24. {
25. /***16 进制转 ASC 码*****/
26. uchar
27. asc_16[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','
D','E','F'},i;
28. uchar Card_Id[8]; //存放 32 位卡号
29. ar = PcdRequest(0x52,qq);//寻卡
30. if(ar != 0x26)
31. ar = PcdRequest(0x52,qq);
32. if(ar != 0x26)
33. find = 0xaa;
34. if((ar == 0x26)&&(find == 0xaa))
35. {
36. if(PcdAnticoll(qq) == 0x26);//防冲撞
37. {
38. UartSend_String("The Card ID is: ",16);
39.
40. /****16 进制转 ASC 码********/
41. for(i=0;i<4;i++)
42. {
43. Card_Id[i*2]=asc_16[qq[i]/16];
44. Card_Id[i*2+1]=asc_16[qq[i]%16];
45. }
46. UartSend_String(Card_Id,8); //打印 IC 卡号
47. UartSend_String("\n",1);
48. find = 0x00;
49. }
50. }
51. }
52. }
53. void main()
54. {
55. Initial();
56. PcdReset();
57. M500PcdConfigISOType('A'); //设置工作方式
58. while(1)
59. {
60. IC_test();//IC 卡检测
}
61. }
我们留意主函数代码:
第 55~56 行:初始化工作。
第 57 行:设置 IC 卡模块工作方式。
第 60 行:检测 IC 卡。
大家可以在工程里进入具体函数看代码,理解 IC 卡初始化及读取卡号的过程。

使用特权

评论回复
地板
Thor9| | 2015-6-12 20:07 | 只看该作者
这个好,赞一个

使用特权

评论回复
5
309030106| | 2015-6-12 21:06 | 只看该作者
那个蓝色的小卡是什么做的,内部有电路吗

使用特权

评论回复
6
poponianhua| | 2015-7-22 20:25 | 只看该作者
哪里看源码?

使用特权

评论回复
7
尤彼卡| | 2015-7-29 09:50 | 只看该作者
这应该是磁电式的吧

使用特权

评论回复
8
JY-DX-JY| | 2015-7-29 09:54 | 只看该作者
顶一个。。。。。。

使用特权

评论回复
9
米尔豪斯| | 2015-7-30 09:19 | 只看该作者
这种方案在楼宇门禁系统比较常见

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

58

主题

416

帖子

7

粉丝