打印

IC卡存储器区分,求算法哥

[复制链接]
1217|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
阮天宇00|  楼主 | 2012-6-1 10:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
手上有4张老版的IC卡需要把他们用程序区分开。
分别是at24Cxx系列 :01 02 04 16

读写它们的没有权限限制,唯一有差别的是物理地址:
01:0~0x7f
02:0~0xff
04:0~0x1ff
16:0~0x7ff

本来是想这样实现的,控制最高字节:读它们最高字节,存起来,然后写一个字节,再取出来,看能写进去的匹配否。最后把原始数据返回给卡。
这样一来,我先读写0x7ff,匹配就跳出了
然后是1FF FF 7F依次次判断

可是这样一来,有一个问题,对于这几个牛B的IC卡存储器,它们会上卷,例如对于01卡,它的0x7f和0xff地址是一样的……高位无效……。

然后又想了第二套方案,往7ff中写16,然后往1ff中写04,然后往ff中写02,7f中写01,再读7ff,读出来的数能判断是哪张卡了。可是这IC卡本来就慢,底层驱动做成这样行么?
这是我的第一次啊!

相关帖子

沙发
hotyong| | 2012-6-4 15:00 | 只看该作者
第二套方案不挺好的嘛,速度慢没事呀,你这里本来就没什么数据量。。
要注意一点的是,我觉得应该先按8位和16位地址的方式分别读一次数据并缓存起来,再进行下面的。

使用特权

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

本版积分规则

38

主题

592

帖子

3

粉丝