datasheet

SLE4418/SLE4428 IC卡及其应用

2008-03-07来源: 单片机及嵌入式系统应用关键字:字节  IC卡  应用方案  输入命令  操作  1  删除  PSC  校验

  摘要:详细介绍SLE4418/SLE4428 IC卡的操作逻辑,着重说明密码校验过程;给出操作流程和的应用示例以及全部的操作源代码。

  关键词:SLE4418/SLE4428 IC卡 校验程序

  概述

  随着国家“金卡工程”的不断发展,各种IC卡应用方案与系统不断涌现,涉及到各个领域各个行业与部门,如各地的IC卡预付费表、

  

  零售服务业的汀货与送化等;而这些系统在各行业的推广与实施,又进一步推动了IC卡的应用。目前,我国在用的IC卡卡就有1亿多,随着科学技术与经济的不断发展,IC卡必将得到更广泛的应用。

  SLE4418/SLE4428卡是西门子公司的产品,价格便宜,使用方便,比较适合于数量较小的应用,是我国使用较为广泛的一种IC卡。

  1 SLE4418/SLE4428 IC卡特点和操作时序分析

  1.1 SLE4418/SLE4428 IC卡的基本特征

  SLE4418 IC卡共有10248位EEPROM,可逐字节地进行写操作与删除操作,每个字节都有具有程序写保护位。SLE4428 IC除了以上功能外,还带有程序密码校验逻辑(PSC)。由于SLE4418/SLE4428 IC卡内置了高压产生器,因而只需即可进行操作,简化了接口电路的设计,可直接由单片机驱动,几乎不要其它和外接元件。此瞳的基本特点如下:

  ①具有10248位的EEPROM存储器;

  ②以字节为编址单位;

  ③具有10241位保护存储器,保护存储器设置后不可撤消;

  ④三线串行总线;

  ⑤可进行10万次擦写操作;

  ⑥数据保存10年;

  ⑦卡内具有2个字节的PSC程序加密位,数据仅在密码检验正确后,方可进行写操作。

  

  

  1.2 操作时序分析

  SLE4418/SLE4428 IC卡通过三线串行总线性与芯片接口进行信息交换。数据在程序控制器的统一协议下,进行数据序列转换与安全逻辑校验。SLE4418/SLE4428 IC卡的引脚配置及功能说明如图1和表1。

  表1 IC卡引脚功能

  引脚名称 功 能

  VCC 工作电压

  RST 复位端

  CLK 时钟

  N.C 空

  GND 地

  I/O 数据线

  (1)复位与复位应答

  IC卡在上电时,芯片进入到上电复位状态(POR),POR由一个复位操作(Reset)终止。当RST引脚由“0”状态变换变换为“1”状态时结束。复位时,将终止所有当前的操作命令。

  上电复位(POR)后,地在写数据或删除数据前,必须先进行一次读操作。芯片复位时,地址计数器偏移置被设置为“0”,第一个数据位出现在数据线(I/O)上中,如图2所示。

  (2)命令输入逻辑

  SLE4418/SLE4428共有5条控制命令,SLE4428另有3条密码操作命令,如表2所列。

  表2 SLE4418/SLE4428IC卡操作命令

  字节1 字节2 字节3 操作内容

  S0 S1 S2 S3 S4 S5 A8 A9 A0~A7 D0~D7  

  1 0 0 0 1 1 地址高位

  地址低位

  

  输入数据 带保护位写与删除

  1 1 0 0 1 1 输入数据 不带保护写或删除

  0 0 0 0 1 1 比较数据 带信号位写(校验)

  0 0 1 1 1 1 忽略 带保护位数(读9位)

  0 1 1 1 0 0 忽略 (不带保护位读(读8位)

  0 1 0 0 1 1 1 1 253 位掩码 写错误计数器

  1 0 1 1 0 0 1 1 254 PSC字节1 校验第一个PSC字节

  1 0 1 1 0 0 1 1 255 PSC字节2 校验第二个PSC字节

  由表2可看出,每条命令由6位控制位,10位地址位和1个字节的数据组成。进行写数据时,数据字节即是所要写入的数据,可见SLE4418/SLE4428不能进行一次性多字节的数据,可见SLE4418/SLE4428不能进行一次性多字节的写操作;读数据时,数据忽略不计,一次性可读出多字节。当RST由“0”状态变为“1”状态,CLK由“0”状态变为“1”状态时命令输入逻辑启动。命令输入完成后,设置RST为“0”状态,时序如图3所示。

  

  

  (3)写操作/删除操作逻辑

  对IC卡进行写操作,意味着数据位由“1”状态变为“0”状态;删除操作意消味着数据位由“0”状态变为“1”状态。SLE4418/SLE4428 IC卡在进行写操作与删除操作时,时钟(CLK)必须进行延续。一般来说,单独的写操作或者单独的删除操作,数据输入后,时钟须延续103个脉冲,数据删除后立即进行写操作则需要延续203个时钟脉冲。SLE4418/SLE4428 IC卡具有三种擦写操作,即删除操作后立即写操作、单独的写操作与单独的删除操作三种方式。如图4所示。写保护位时,只须将数据重写一次,当第二次写入的数据与前一次写入的数据相同时,设置保护位。保护位一旦设置便不能更改。

  (4)读操作逻辑

  

  

  按表2配置好读命令后,输入命令即启动读操作。当CLK为“0”状态变为“1”状态时,第一位数据出现在I/O数据线上,此后每个CLK脉冲即接收1位数据。接收8位或9位数据(带保护位时,第9位为保护位)时即为1个字节。每读完1个字节,IC卡地址计数器偏移量自动加1。当RST为“0”状态转变为“1”状态时,读操作结束。读时序逻辑如图5所示。

  (5)密码校验逻辑

  SLE4428 IC卡具有2个字节的密码保护字节(地址偏移量分别为1022、1023)以及1个错误计数器(地址偏移量为1021)。如果没有进行密码校验,则SLE4428 IC卡只能读出,不能写入,也不能读取密码字节。在没有通过密码校验即读取密码字节,将返回“00”.进行密码校验时,必须按以下步骤进行。

  *改变一个没有写入的位(没有写入的位,其当前状态为“1”,改变一个没有写入的位即使期由“1”状态变为“0”状态);

  

  

  *写入第一位密码;

  *写入第二位密码;

  *删除错误计数器。

  密码校验的时序逻辑如图6所示。(写错误计数器请参看写时序逻辑)。

  

  

  对于密码校验,虽然操作流程说得很清楚,但实际使用时如何实现,还是有一些技巧,因而同时列出图7所示的操作流程,以供参考。

  

  

  2 SLE4418/SLE4428在予付费系统中的应用

  预付费系统最先是为了解决电能表收费难而提出的一种收费管理方式,在得到用户的认可后,逐步在水、气行业得到推广,并有在其它行业得到应用的趋势。不管其行业如何,预付费管理系统,归根到底是收费问题,因而管理与操作方式上具有一般性。下面以飞利浦的87LPC764处理器芯片为例进行介绍。

  图8

  预付费系统基本电路原理如图8所示。

  

  

  图8中,J1为IC卡卡座;U1为87LPC764单片机;U2为串行存储器,用于保存现场数据;SIGN为信号输入;BIT、STAGE、DATA为显示输出线,以串行的形式驱动LED显示器 Power为显示输出线,以串行的形式驱动LED显示器;Power为电源监控,以保护电源电压切断时导至的数据安全问题;Ctrl为控制输出线,用于控制受器件。主程序流程如图9所示。

关键字:字节  IC卡  应用方案  输入命令  操作  1  删除  PSC  校验

编辑:ssb 引用地址:http://www.eeworld.com.cn/afdz/2008/0307/article_378.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:Mifare 1非接触式IC卡读写核心模块MCM200
下一篇:多线制楼宇对讲系统与普通楼宇对讲系统

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

STM32 字节对齐 #pragma pack

1、对齐原则min(sizeof(word ), 4) = 2,因此是 2 字节对齐,而不是我们认为的 4 字节对齐。1)每个成员分别按自己的方式对齐,并能最小化长度;2)复杂类型(如结构)的默认对齐方式是它最长的成员的对齐方式,这样在成员是复杂类型时,可以最小化长度;3)对齐后的结构体整体长度必须是成员中最大的对齐参数的整数倍,这样在处理数组时可以保证每一项都边界对齐。对于数组,比如 char a[3]:它的对齐方式和分别写 3 个 char 是一样的,也就是说它还是按 1 个字节对齐;如果是 typedef char Array3[3]:Array3 这种类型的对齐方式还是按 1 个字节对齐,而不是按它的长度;不论类型是什么
发表于 2019-04-01

stm32 hal 库读写字节代码

void Single_WriteI2C(uint8_tREG_Address,uint8_t REG_data)//写入一个字节的代码{    uint8_t TxData[2] = {REG_Address,REG_data};   while(HAL_I2C_Master_Transmit(&hi2c1,0xa6,(uint8_t*)TxData,2,1000)!= HAL_OK)    {        if (HAL_I2C_GetError(&hi2c1) !=HAL_I2C_ERROR_AF) 
发表于 2019-03-28

STM32学习笔记10——stm32中结构体字节对齐问题

stm32做串口或网络传输数据时,经常需要用结构体定义帧格式。如果按照keil默认的对齐方式(4字节对齐),经常会出现结构体中补零的问题,造成帧格式错误。所以,在定义结构体类型时,最好把结构体对齐方式改为1字节对齐,防止出错。#pragma pack(4)   //按4字节对齐,但实际上由于结构体中单个成员的最大占用字节数为2字节,因此实际还是按2字节对齐typedef struct{    char buf[3];//buf[1]按1字节对齐,buf[2]按1字节对齐,由于buf[3]的下一成员word a是按两字节对齐,因此buf[3]按1字节对齐后,后面只需补一空字节 
发表于 2019-02-19

STM8S105系列单片机管脚复用配置(选项字节的配置)

以STM8S105K4T6C为例,实现PB0管脚复用成TIM1_CH1N(1)STM8S复用功能(芯片引脚加"[ ]"的功能):通过配置flash中的选项字节来实现         除了ROP(读出保护)字节,每个选项字节必须被保存两次,一个通常的格式(OPTx)和一个用来备份的互补格式(NOPTx)        参见STM8S105xx数据手册(如下图),可知备选功能重映射选项5(AFR5)负责管理PB0端口的重映射功能,将其设置为1即实现PB0重映射为TIM1_CH1N    
发表于 2019-02-13
STM8S105系列单片机管脚复用配置(选项字节的配置)

如何解决STM32F407串口无法发送第一个字节问题

///* CPU的小缺陷:串口配置好,如果直接Send,则第1个字节发送不出去// 如下语句解决第1个字节无法正确发送出去的问题 */ /* 清发送完成标志,Transmission Complete flag */USART_ClearFlag(USART1, USART_FLAG_TXE);    USART_ReceiveData(USART1); //读DR USART_ClearFlag(USART1,USART_FLAG_ORE); //读SR    USART1_SendOneByte(0xff);
发表于 2019-01-31

百度霸气回应:暂不考虑收购字节跳动

外媒称,字节跳动或于百度合并,合并后与阿里腾讯组成新的BAT,而且还说的有理有据。对此传闻,百度霸气回应:暂不考虑收购字节跳动。近日路透社报道称,“ByteDance will take over B in China's BAT(字节跳动将接管中国BAT中的B)”,对此有媒体将其引申为百度和字节跳动将合并,据腾讯新闻报道,对此百度方面回应称:暂不考虑收购字节跳动。 路透社文章指出,目前字节跳动估值已经达到750亿美元,甚至比百度现阶段市值还要高,后者12月初在公开市场的市值约为650亿美元。根据百度官方公布的前三季度财报和第四季度预期,百度今年年收入预计达1000亿元,而有媒体报道字节跳动2018年收入将达
发表于 2018-12-29
百度霸气回应:暂不考虑收购字节跳动

小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 视频监控 智能卡 防盗报警 智能管理 处理器 传感器 其他技术 综合资讯 安防论坛

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved