手上有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卡本来就慢,底层驱动做成这样行么?
这是我的第一次啊! |