(2)命令方式

每个命令由起始条件、1个3字节长的命令和停止条件构成。命令方式时序如图3所示。

起始条件:CLK处于高状态H期间,I/O的下降沿。

停止条件:CLK处于高状态H期间,I/O的上升沿。

(3)输出数据方式

在这种试上,IC卡发送数据至接口设备IFD。在CLK上第一个下降沿后,I/O上第一位有辩效,最后一个数据位之后,需要一个额外的时钟脉冲,以设置I/O处于高状态,同时准备IC卡接收新的命令。在这种方式下,任何开始和停止条件均被禁止。输出数据方式时序如图4所示。

(4)处理方式

在第一个CLK的下降沿,将I/O线从高状态H切换至低状态L并开始处理,直到低状态L的I/O被设置成高状态H结束。在这种方式下,任何开始和停止条件均被禁止。处理方式时序如图5所示。SLE4442卡共有7个命令,每个命令包括3个字节,其命令格式及功能如表1所列。

这里只介绍比较可编程密码PSC命令的使用。比较过程由4个步骤组成:

①写错误计数器EC(至少1位)。地址0。密码比较结果将在错误计数器中反馈,3次密码出错IC卡被阻塞。

②比较PSC字节1,地址1。写完错误计数器之后,以不同的命令格式送入3个密码字节。密码比较成功,将通过刷新错误计数器来识别,然后施加上操作电压,就可以对所有存储器进行读写操作了。

③比较PSC字节2,地址2。

④比较PSC字节3,地址3。

芯片在出厂时可根据用户的专门要求将可编程加密代码(PSC)存储器中编入一个专用代码。这样在使用时,就必须合法地得到这个代码,从而防止非法窃用或伪造卡片。

2.系统组成及工作原理

本系统的硬件主要由单片机、串行EEPROM、电磁阀和IC卡读/写插座组成。具体电路如图6所示。

电路中的单片机AT89C2051是89C51的简化体。20引脚为DIP封装。片内有2K字节闪烁存储器,128字节RAM,15条I/O线,全双工串行口。P1.0、P1.1分别作为片内精确模拟电压比较器的正、负输入端;P1.2作为IC卡的复位端;P1.3、P1.4分别作为IC卡的时钟线与数据线;P3.7作为IC卡工作指示灯的控制端;P1.5作为非法操作的声音报警控制;P3.4作为电磁阀门SW1的控制端。图中的U5是串行EEPROM--AT24C01,它的作用是用来随机存储每个IC卡的密码等;U4为电压比较器,用来监测电源电压:如果电源电压下降至4.5V左右就会产生报警信号。为了使系统更可靠地工作,采用CD4060设计了单片机“看门狗”电路,由4060定时产生一个复位脉冲,对单片机进行复位操作。整个电路设计中,充分考虑了能源的节约问题,所以在IC卡插入前整个电路的大部分芯片没有供电,只有门电路U1工作;当IC卡插入后,由于IC卡座的开关接通,促使门电路U1触发翻转,由T1导通使其他芯片得到供电。如果在使用过程中客人忘记拔出IC卡,电路除了要产生报警信号外,还会在30s(秒)后自动停止供电。