微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 消费类电子 > AT88SC1604卡的应用

AT88SC1604卡的应用

时间:09-01 来源:互联网 点击:
(6)擦除密码区(EZn ,n=l.2,3,4)

该区用于存储擦除应用区操作的控制密码。这些密码一般由发行商使用。在个人化处理时输入的最后一组“擦除密码”,在芯片熔丝FUSE2熔断之后将使“擦除密码”保存在该区内。该区不再能读出、写入和擦除,只能进行比较操作。在使用过程中如需对应用区进行擦除操作,都必须首先对相应的EZ区输送一个“擦除密码”与之比较,在“擦除密码比较计数器”不为“00H”的情况下,如果相比较的两代码完全一致,则相应的应用区的单元允许擦除,否则将禁止执行擦除操作。

(7) 擦除密码比较计数区(EnAC ,n=l,2,3,4)

擦除密码比较计数区的作用与SCAC的作用相类似。它对各应用区擦除密码连续输入错误的次数进行累计。最多连续8次不正确的密码比较之后,该区所控制的应用区的擦除操作即被锁死,从而导致该应用区有可能成为只读和允许单次写入的状态。

(8) 应用数据区(AZn ,n=1,2,3,4)

该区主要给用户使用。用于存储系统的相关数据记录和卡片标识等信息。应用数据区的写入与读出分别由该区的前两位Pn和Rn以及SV标志的状态控制,擦除操作则由该区的擦除密码控制。AT88SC1604设计了四个完全隔离的分区,其中1至3分区的单元容量分别是4K位、第4分区的单元容量为3.6K位。

(9) 存储区测试区(MTZ)

该区主要用于芯片生产后对EEPROM单元阵列进行各项性能测试该区不受任何控制区状态和标志状态的保护,允许对这个区进行读出、写人和擦除操作,但不能进行比较操作。

应用实例

基于上述1604芯片的特点,在石化系统的加油电路设计中,我们利用单片机芯片89C2051与IC卡电路组成一个独立系统,控制IC卡芯片的各项操作,该系统通过标准RS232通讯接口,与主控制板实现数据交换,这种电路设计在硬件方面兼容性较好,只要通过协调双方的IC卡通讯协议,可与任何带有RS232接口的控制板或微机相连接。



单片机芯片89C2051的6个端口通过IOC卡座与IC卡相连接,P1.2口控制IC卡5V电源的通断,上电时单片机芯片处于复位状态, 6个端口均输出“1”,IC卡电源处于断开状态,ICSW为IC卡的检测端,当IC卡插入后,该端口与地相接,P1.3口检测到IC 卡已插入卡座,即接通IC卡电源,IC卡操作完毕后,切断IC卡电源,并提示用户可以拔卡。单片机芯片其他4个端口在接通IC卡电源后,根据对卡操作的需要,对IC卡进行复位,读卡,校对密码,擦卡,写卡等操作。

硬件电路

芯片的操作模式时序及设计程序

AT88SCl604芯片的操作模式有五种。它们是通过配PGM、RST、CLK等引脚信号及内部地址计数器(IAC)的状态组合来实现。

(1) 芯片复位操作: AT88SCl604有两种复位方式:上电复位和控制复位。上电复位: 上电复位是当芯片加电时的最初状态。上电复位属于芯片内部复位。它将使芯片内部所有的隐含标志复位到"0"状态。并使地址计数器复位到0位。控制复位: 当CLK为低时,在RST脚上的一个下降沿将便芯片产生复位操作。控制复位是将地址计数器复位到0位,而不影响任何内部标志的状态。

注:1)RST为高时禁止计数2)在CLK端降低之后,延迟一个"复位维持时间"Trh(min 0.1 s)RST端复位(下降沿),同时地址计数器清零。地址计数器清零后延迟一个“数据复位有效时间”Tdvr(max 2 s)第0位单元的数据被送上I/O线。

(2)读出操作: 在进行读出操作时,必须保证使RST脚和PGM脚同时保持为低。如果对芯片各密码控制区进行读出操作,只能是在FUSE2未熔断且SV标志“1”时才能进行。如果对芯片各标识数据区进行读出操作,除FZ和IZ区外,需要使SV标志置“1”后才能执行。如果对芯片各应用数据区进行读出操作,需要在SV=1且Rn=1(n=1,2,3,4)状态下才能执行。

注:在CLK的下降沿时,地址计数器加1,地址计数器当前所指的地址单元的数据被输出到I/O线上。因此,在整个时钟周期Tdk期间,包含了地址加1(INC)和读出(REA)两项操作。读IC数据子程序(R2:需读IC卡字节数,R0:数据区存放低位首地址)


(3)比较操作:在进行比较操作时,必须保证使RST脚和PGM脚同时保持为低。比较操作只能对芯片密码控制区执行,且由芯片内部来判断。在FUSE2未熔断时,只能在SV=0时,对SC区进行比较操作,对其它区的比较操作均为无效操作。SV=1时,芯片不做任何比较操作。在FUSE2熔断后,只能在SV=0时,对SC区进行比较操作,对其它区的比较操作均为无效操作。

注:上述芯片密码比较时序图中是假设密码计数器中前两位为0,第三位寻到1的处理时序。 有关芯片SC的时序关系如图2"5图所示:









从操作(B)到(F),地址计数器不变,密码比较的过程是:

(A)比较安全密码/擦除密码序列

(B)在密码输入比较计数器中找出一位为“1”的位

(C)在这个为“1”的单元写“0”

(D)芯片输出“0”

(E)如果比较成功,在PGM的上升沿安全密码/擦除密码的相应标志,(SV,Sn或En)被置“1”,同时安全密码/擦除密码输入比较计数器,(SCAC,SnAC或EnAC)被擦除。

(F)如果擦除成功,相应安全密码/擦除密码标志被置“1”,芯片将输出“1”,否则芯片输出“0”。
(G)在CLK的下降沿,地址计数器加1,并输出下一位的状态。




(4)写入操作:写入操作实际包含着两种:当写入的数据为“0”时,本次操作称为“写入操作”。当写入的数据为“1”时,本次操作称为“擦除操作”。“写入操作”可以按位进行。但“擦除操作”只能按字节进行。即使操作时只对单独一位进行擦除,但执行的结果将使这一位所在的字节的所有8位全部置成“1”。对芯片的任何一个允许写入或擦除的区域,其执行写入和擦除的必要条件是芯片的SV标志为“1”状态。  



注:在CLK为低的状态下,PGM端从“0”到“1”,并延时一段“编程建立时间”(Tspr)之后,CLK端从“0”到“1”(这时是写入/擦除操作的开始),在此刻之前的Tds(数据建立时间)由外部向I/O线给出写入数据。CLK端在“1”状态应至少保持5ms(Tchp)之后,CLK端从“1”到“0”(这时是写入/擦除操作的结束)。应特别注意结束写入操作的CLK端的下降沿并不会使地址计数器加1,而只是将刚写入的“数据”读出, 以便外部验证刚才的“写入操作”。



Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top