当前位置:中国高校自动化网 >> RIFI >> 浏览文章

调试CPU读卡器总结

文章来源:EDN博客 作者:佚名 访问次数:


文章导读:采用复旦微电子FM1208卡片的cpu读卡器,调试中遇到的一些问题。

 采用复旦微电子FM1208卡片的CPU读卡器经过调试,CPU读卡器终于可以工作了。卡片:一些问题:

1)复旦微电子的datasheet有错,软件使用SAK判断卡的类型出差,后使用示波器查看到实际的SAK值。标准CPU卡的SAK为0x20,兼容M1的CPU卡的SAK为0x28。 实际上仅仅通过SAk来判断是不够的,因为国内的CPU卡厂家对此定义比较混乱。应该通过ATS来判断。

2) 选卡成功后可发送RATS,然后就可以发送FMCOS命令了。发送RATS,PPS时不需要发送PCB,CID信息域,发送FMCOS命令时需要发送PCB+CID信息域,PCB的值每次要翻转最低位,CID的值就是RATS命令中所设置的值。

3)单片机采用PIC系列,读卡器芯片为RC632,支持多种协议ISO4443A/B以及ISO5693。当发送RATS时,CPU卡固定发送16字节的ATS信息,说明CPU卡不支持PPS命令参数调整。因为发送PPS命令时,无论怎样修改参数,CPU值返回同样的ACK。

4)下一步的工作一是是要支持NXP的DESfire EV1, 该卡片同时支持DES,AES算法。所以同样需要在PIC单片机上实现AES算法。二是降低成本,考虑用FM1702来代替RC632

5)关于认证算法,CPU卡采用3-Des或但-DES,相应的读卡器也要支持该算法。由于SAM模块价格较高,我采用的是软件DES认证,从开源的DES sourcecode移植到单片机,没有优化,耗时大约5毫秒。典型的CPU卡交易时间为350毫秒,增加5毫秒DES算法的是微不足道的。

 下面是制作的PCB板。

点击浏览下一页

上一篇:GPS设计全攻略转
下一篇:DDS_AWG710B生成宽带调制信号频射要点—相位连续
最近更新