目前编写IC卡读写程序,有以下问题需要解决:1、如何获得IC卡的容量,即字节数;//Lib并未提供此接口
2、涉及到续写IC卡,如何数据末的起始位,
如:上次数据末尾地址为77H,那么下一次我需要从78H开始写数据,如何得到78H
这个值;//Lib并未提供此接口
3、如何清除IC卡的所有数据;//有的并没有提供清除接口,如AT24C系列的IC卡寻求经验之谈: IC卡存储的数据几乎全部是数字信息,只有少量的字符信息如".",请问您是如何
存储这样的数据的?
我想:用0 1 2 ...的字符存储未免太浪费空间,如果用16进制存储是不是可行?
如我用 10H表示十进制的10,而不用31H30H表示没有经验,请指教!
2、涉及到续写IC卡,如何数据末的起始位,
如:上次数据末尾地址为77H,那么下一次我需要从78H开始写数据,如何得到78H
这个值;//Lib并未提供此接口
3、如何清除IC卡的所有数据;//有的并没有提供清除接口,如AT24C系列的IC卡寻求经验之谈: IC卡存储的数据几乎全部是数字信息,只有少量的字符信息如".",请问您是如何
存储这样的数据的?
我想:用0 1 2 ...的字符存储未免太浪费空间,如果用16进制存储是不是可行?
如我用 10H表示十进制的10,而不用31H30H表示没有经验,请指教!
2、IC卡的容量我没有查过,但可以通过型号,或者如果读写兼容的话,你可以从第一页读到最后一页,用计数器来算容量,或者从第一段读到最后一段,许多IC卡分sector,block,page,来进行读写。MF卡的大小,估计不能通过这种方式读出来。
3、你可以建立一个相当于分区信息的表,比如将第一页作为记录你写到的位置计数,然后根据你的计数器来读写相应的位置,如果你觉得不安全,也可以放两份,我就是这样做的。
4、如果没有清除指令,那么就老实地写入0xFF,相当于格式化。
5、本来电脑全部是数字嘛,如果能存数字,就能存一切,既然能存数字,那么 对应的ASCII也就能存,那么也就无所谓什么数字还是字符了。
2、小弟没接触过IC卡,不知道怎么读sector,block,page信息,买卡和读写器时,随附
demo确实有页的信息
3、我现在就是这么做的,前6字节被固定使用了,1 2 字节存放记录数,9999条记录肯定
用不了的,3 4 5存放商场编号,000000,也差不多,6 存放每条记录长度,99差不多
4、我也是写入的0xFF,就是不知道容量,我怎么知道写到最后一个字节呢?
5、呵呵,我也是这么干的,节省空间嘛!各位大侠,在容量上再考虑一下!to ffwin() :能不能给点详细的,关于2
在DElphi中可以用inttohex函数来轮换Integer-->string,然后处理转换成ASCII,
to: csvmm
你可以去atmel网站down一个关于ATMEL24C64的说明书,pdf格式的,里面有详细的用法,上面有指令格式。这种卡我没有用过,我用的是atmel--at45db041AT24C64--我查了一下,共有两种容量,64K,你先看一下它的说明书吧,挺详细的。
AT24C32---32K,
我用的是512K的,只要是一种卡,容量是一定的。
你先看一下说明书,我没有仔细看,但这几种卡的操作方式挺类似的,挺好用的。
可以识别卡的容量,每页256个字节,不知道用delphi怎么实现?2、我做清除操作时(写入oxff),最多只能写入256个,并且不能跨页,是不是就是这样?3、我没找到关于ATMEL24C64的说明书,谁有能发给我吗?[email protected]
1。IC卡的容量不能获取,可根据卡类型作一些判断,如ATMEL24C64应该是64K
2。记住偏移位3。清空卡片写0XFF即可
ATMEL24C04 : 512字节
ATMEL24C02 : 256字节
ATMEL24C01A: 128字节市场上出现的AT24C系列非加密卡基本就这几种,听说有16k的新型卡已经上市,我得到的消息:还没有超过16k的卡,是不是?真的没有32k、64k甚至更大容量的卡吗?还有:我做清除操作时(写入oxff),最多只能写入256个,并且不能跨页,是不是就是这样?例如,我要清除8K的卡:不能一次性写入8192个0xff,只能写32次256个0xff,为什么?
去www.atmel.com网站,里面有个serch,敲入AT24C64 就可以下的说明书,没有多大,pdf格式