如何读写接触式IC卡 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

如何读写接触式IC卡

来源:中国一卡通网  作者:中国一卡通收录  发布时间:2012-03-23 09:54:04  字体:[ ]

关键字:IC卡  微控制器  嵌入式处理器  

摘   要:随着金卡工程的推进,IC卡已经已经十分广泛地应用于包括金融、交通、社保、会员卡等很多领域。

  随着金卡工程的推进,IC卡已经已经十分广泛地应用于包括金融、交通、社保、会员卡等很多领域。

  IC卡 (Integrated Circuit Card,集成电路卡)是继磁卡之后出现的又一种新型信息工具。IC卡在有些国家和地区也称智能卡(smart card)、智慧卡(intelligent card)、微电路卡(microcircuit card)或微芯片卡等。它是将一个微电子芯片嵌入符合ISO7816标准的卡基中,做成卡片形式。根据卡中的集成电路的不同,IC卡可以分为三类。

  (1)存储卡

  主要应用的是卡中的集成电路为EEPROM 。

  它仅有数据存储能力,没有数据处理功能。如:

  AT24C01A、AT24C02、93C46、AT45D041等。

  (2)逻辑加密卡

  主要应用的是卡中的集成电路包括具有加密逻辑和EEPROM。如:SLE4442、SLE4428、AT88SC102等。

  (3)CPU卡

  主要应用的是卡中的集成电路包括CPU 、EEPROM 、RAM 以及固化在ROM 中的COS ( 片内操作系统)。

  IC卡读写器是IC卡与应用系统间的桥梁,在ISO国际标准中称之为接口设备IFD(Interface Device)。IFD内的CPU通过一个接口电路与IC卡相连并进行通信。

  本文将以AT24C01存储卡为例,介绍如何利用M051控制接触式IC卡。

  一、MuMicro M051概述

  N u M i c r o M051系列为ARM C o r t e x - M 0 内核的32位微控制器。Cortex-M0是ARM最新的32位嵌入式处理器,拥有可与传统8位单片机匹敌的价格优势。NuMicro M051系列包括M052、M054、M058和M0516。

  NuMicro M051内核系列最高可运行至50MHz,特别适用于需要高速控制的工业领域,NuMicro M051系列内嵌有8K/16K/32K/64K字节的flash存储器, 4kBflash用于ISP, 及 4kB SRAM。

  多种系统级外设功能, 如I/O Port, EBI(外部总线接口)、Timer、UART、SPI、I2C、PWM、ADC、看门狗定时器和欠压检测功能, NuMicro M051系列内建这些功能可以减少系统外围元器件, 节省电路板空间和系统成本,这些功能使NuMicro M051系列适用于广泛应用。

  同时, NuMicro M051 内建在线编程功能ISP及在系统编程功能ICP,提供用户多样的编程方式。用户可以直接在电路板上对芯片进行升级。

  二、选择M051的理由

  1. 宽操作电压

  M051系列CPU和其他ARM系列CPU相比支持宽操作电压 (2.5~5.5V),现在市场上大量的IC卡都是5V的,这样就省去了电压转换问题。

  2. I/O有准双向功能

  GPIO具有准双向功能,兼容8051,操作IC卡的数据I/O口,省去了每次选择方向的问题,简化IC卡的读写程序。

  3. 较大的SRAM

  和普通8位单片机相比,具有较大的SRAM,我们可以从IC卡上读取比较大的数据块和CPU卡比较大的数据块的处理,数据处理的速度就相应的加快。

  三、AT24C01卡介绍

  1. 芯片特点

  容量为128×8(1KB)、双线串行接口(双线为:时钟线SCL,串行数据线SDA)、双向数据传送协议、支持ISO/IEC7816-3同步协议、高可靠性,擦写次数可达10万个周期,数据保存期达100年。

  2. IC卡芯片的触点描述

  IC卡芯片各引脚、芯片触电及功能描述见图1与表1。 



  图1 AT24C01 芯片触点 

  3. AT24C01卡基本操作

  时钟和数据传送:SDA上的数据仅在SCL为高电平时有效,在低电平时允许数据变化见图2。当SCL为高电平时,数据的变化表示“开始”或“停止”两种状态见图3。开始状态和停止状态的定义如下。 



  图2 有效时序图 

  图3 开始和停止状态

  开始状态:SCL处于高电平时,SDA从高电平转向低电平表示一种操作的开始,所以该状态应在其他命令之前执行。

  停止状态:SCL处于高电平时,SDA从低电平转向高电平表示一种操作的结束,将停止所有通信。

  确认(ACK):总线数据传送时每成功地传送一个字节数据后,接收器都必须产生一个应答信号,应答的器件在第9个时钟周期时将SDA线拉低,表示其已收到一个8位数据见图4。 



  图4 数据接收和确认


  四、IC卡接口原理图

  本系统采用NuMicro M05132位微控制器实现与IC卡的接口,负责卡时钟和数据的存储与读取,预留了其他种类IC卡所需要的RST、FUS、PGM等信号,IC卡的插入与拨出是通过IC卡适配插座上的开关来识别,其硬件接口电路图如图5所示。 



  图5 硬件接口电路图

  五、软件设计

  以读命令为例,介绍了AT24C01卡的操作,其C语言程序在电子制作网站下载。

  本文采用最新ARM Cortex-M0内核的32位微控制器,具有很高的性价比,本方案已在NuTiny-SDKM051开发板验证。

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖