PCSC可以开发非接触式IC卡的读写器程序吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PCSC可以开发非接触式IC卡的读写器程序吗相关的知识,希望对你有一定的参考价值。

参考技术A 可以的,PCSC读卡器YW-606就可以接受非接触IC卡的

接触式IC物理特性及传输协议

1. 接触式IC卡的电信号和传输协议

ISO/IEC 7816-3/10中规定了电源及信号的结构,以及IC卡和读写器之间的信息交换,包括信号频率,电压电平,电流值,奇偶校验协定,操作过程,传送机制以及读写器与IC卡之间的通信协定等。

IC卡支持两种协议,同步传输协议和异步传输协议,前者适用于逻辑加密卡,后者适用于内含微处理器的智能卡。

 

1.1 触点的功能

在ISO 7816-2只不过对于IC卡的8个触点做了如下规定

  • IO:IC卡的数据输入输出端口
  • VCC:电源电压输入端口。电压容错范围为百分之10
  • GND:地
  • VPP:EEPROM的编程电压输入端。一般IC卡内都有升压电路,将Vcc的电压升到EEPROM的编程电压,VPP触点就无用了。
  • CLK:时钟或定时信号输入端
  • RST:复位信号,可以由读写器提供复位信号给RST触点;由IC卡内部的复位控制电路加电时产生内部复位信号。

 

1.2 IC卡的操作过程和卡的复位

  1.21 读写器与卡之间对话的操作顺序

  1. 读写器连接卡,并激活IC卡。
  2. 卡的冷复位。
  3. 卡对复位应答
  4. 在卡与读写器之间进行连续的信息交换。
  5. 读写器停活IC卡。

  1.22 读写器激活IC卡的操作顺序

  1. RST处于L状态。
  2. VCC加电。
  3. 读写器的IO端处于接收状态。
  4. 提供稳定的CLK。

  1.23 IC卡的复位

  复位有冷复位和热复位两种

  (1)冷复位:当IC卡的电源电压和其他信号从静止状态按照一定的顺序加上时,称为冷复位,IC卡发回应答信号ATR。

  (2)热复位:在电源电压Vcc和时钟CLK处于激活状态下,读写器发出的复位称为热复位,IC卡回应应答信号ATR。

    卡与读写器的交互,总是始于冷复位,之后,读写器可启动热复位但非必须。

   1)冷复位

  1. 加时钟信号
  2. IO端口要在200个时钟周期内被拉高
  3. 至少在加时钟信号400个周期后将RST拉高
  4. 等待IC应答(将IO端口拉低)

   2)热复位

  1. 稳定的CLK和VCC
  2. 将RST拉低至少400个时钟周期
  3. RST拉高后等待IC卡应答(将IO拉低);

  1.24 停活

  当信息交换结束或者失败时(如卡无响应或者发现卡被移除),读写器应按照以下顺序停活IC卡。

  1. RST状态为L
  2. CLK状态为L
  3. IO状态为A
  4. VCC被降到0

 

1.3 异步传输和复位应答

  复位应答是以字符为单位进行传输。

1.31 字符帧

  技术分享图片

  在传输字符帧前,IO处于状态Z。

  每个字符帧由10位组成:一位起始位为状态A,8位数据位,一位校验位。每一位在IO触点上持续的时间定义为基本基本时间单元etu,在复位应答期间,1etu=372个时钟周期,即1etu=372/f。

  接收方在每一位中间0.5+-2etu采样,采样时间应少于0.2etu。

  连个连续的字符之间的延时至少为12个时间单元包括10个etu和一段保护时间。在保护时间内,读写器和卡都处于接收状态,因此触点IO处于状态Z。

  在复位应答期间,卡发出的连续两个字符的起始位下降沿之间的延时不能超过9600etu,这是最大初始等待时间。

  当奇偶校验不正确时,从起始位下降沿之后的10.5个etu开始,接收方发送状态A做出错误信号,该信号的宽度为一个etu或则2个etu,发送方在起始位下降沿11个etu处检查IO,如果IO为Z那么正确,如果IO为A那么有错,可能要重发,T=0异步传输协议的卡必须重发。

 

1.32 卡复位信息

  主要包括IC卡的发行者,应用标识符已经传输的基本参数。假如读写器发行问题,可立即停止操作或为后面操作提供指示。

  卡产生的复位应答信息按以下顺序传输,初始字符TS,格式字符T0,接口字符TAi~TDi,历史字符T1~T15。具体参考TS 102 211手册。

 

1.33 协议和参数选择PPS

  在复位应答后,如果处于协商模式,则允许读写器向卡发送PPS请求。其过程如下

  1. 读写器发送PPS请求。
  2. 若卡接收到正确的PPS请求,则发送PPS确认信号来响应,否则将超出等待时间。
  3. 或卡成功交换PPS请求和PPS响应,这就选择好了新的协议类型和传输参数,然后按规定将数据从读写器送到卡中。
  4. 若卡收到错误PPS请求,则不发送PPS响应。
  5. 若读写器收到错误PPS响应,将卡复位或则拒绝。

 

 

以上是关于PCSC可以开发非接触式IC卡的读写器程序吗的主要内容,如果未能解决你的问题,请参考以下文章

非接触式IC卡

接触式IC物理特性及传输协议

身份证阅读器的工作原理是啥?

M1卡和IC卡各自的优缺点是啥啊?

STM32+MFRC522完成IC卡号读取密码修改数据读写

STM32+MFRC522完成IC卡号读取密码修改数据读写