来源:中国一卡通网 作者:邢中柱 发布时间:2008-01-15 14:57:49 字体:[大 中 小]
关键字:曼码调制 非接触ic卡 e5550 u2270b ic卡读写程序
摘 要:非接触IC卡技术有十分良好的应用前景。本文从应用角度介绍了e5550/U2270B器件组构成的一种低频非接触IC卡系统,并对采用曼彻斯特码调制进行信息交互时的读写操作做了详尽分析,最后给出用C语言编写的相应源程序。
图4 写操作时的信号流
注:域时钟(TEMIC公司提供的资料用fC表示)为一时间间隔,若频率为125kHz,fC=1/125kHz=8μs。
图4写操作时的信号流非接触IC卡插入基站后,射频线圈的耦合产生载波振荡,利用两次相邻停振之间的不同时间间隔,区分位数据"1"和位数据"0"的编码。停振间隙约在50~150域时钟;位数据"0"的持续振荡时间间隔为24域时钟;位数据"1"的持续振荡时间间隔为56域时钟。当停振间隙结束后,持续振荡的时间间隔高于64域时钟,则IDIC退出写操作方式。
考虑到写操作启动(start)时,有一频率稳定过程,写操作停止(stop)时,有一EEPROM的写入过程约16ms,于是将start和stop两个阶段均以20ms计。图4中标注的trnssqnc为发送顺序编号,启动阶段为0,位数据流发送阶段为1,发送结束阶段为2。
基站读写器上有三个引脚:bsout、bscfe和bsin,它们的含义见表5。
向e5550写位数据时,有四种合法的数据流,具体如图5所示。其中,OP为操作类型码,包含两位,"10"表示即将进行的是写操作,"11"为终止IDIC操作码。多IDIC操作情况下,用这一特性可逐一控制应答器,使待控应答器逐一产生稳定的射频振荡。当方式数据区的第28位(usePWD)为"1"时,在写操作码"10"之后,即须将32位的口令(password)写入EEPROM的第7区。位数据流有33位,是按区写入的。其中的第一位为锁定位L,L="1"表示该区为只读区,L="0"表示该区为读写区,其余的32位为位数据。ADR为该位数据流的存放数据区,取值范围为0~7。
根据上述的载波振荡特性,利用carriercnst参数进行界定(见表6),读操作即不难实现。读写操作过程中,均使用了2μs为单位的计数值作为定时单位,目的是要使用MCS-51系列的微控制器的定时器。
结束语
通过以上说明,再认真地研读有关的技术资料,采用曼码调制的非接触IC卡读写程序便不难编制。当然,实现IDIC的完整功能,还需要其他的一些程序模块,如数据存储格式、编码的加密算法,一次读/写操作中若出错,则须重复进行读/写操作、究竟重复几次、读/写操作过程在超时后退出等,这些均可根据应用对象的需求予以相应的解决。有关采用曼码调制的非接触IC卡读写程序请见程序清单。
推荐文章
论坛热帖