微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于ARM的SIM卡检测系统的研究

基于ARM的SIM卡检测系统的研究

时间:08-07 来源:互联网 点击:

3 软件检测系统的实现
SIM卡符合国际标准7816协议规范,因此本检测系统分为两个部分,第一部分是对于7816协议通信的固件部分,第二部分是上层软件部分。对于固件部分的操作应该包括接口设备激活电路,冷复位启动卡片应答、卡片与接口设备进行信息交换和接口设备释放电路卡片下电3个过程。
当卡片和接口设备物理连接以后,为启动机械连接的卡的互操作,接口设备需要激活卡片,初始时,所有端口皆处于低电平(L)态,电压范围0~0.4 V;VCC电源电压先上电(H态),VCC电源端稳定一段时间后,将IO端口置为接收方式(H态),电路的激活顺序结束,卡片进入复位过程。在Ta时间CLK开始提供时钟信号;卡应在时钟信号开始后至少200个时钟周期之内(延时时间为Ta)置IO口状态为接受状态。同时,从Ta开始,RST至少保持400个时钟周期(延时时间为Tb))的L态,即保持到时间Tb后RST置状态H,为了保证卡片正常复位,卡片要在400~40 000个时钟周期之内(延时时间为Tc)作出应答,即从IO口返回ATR。复位过程结束。时序如图6所示。


上电后,接口设备可根据卡片返回的ATR来选择工作模式,如果ATR中规定了TA2,则接口设备根据新的参数启动与卡片信息交换方式;如果ATR中没有规定TA2,则接口设备和卡之间可进行PPS过程或者接口设备根据TD1中的参数(T)选择采用哪种通信协议。如果接口设备与卡片停止数据交换,并且IO口保持H状态至少1 860(Tg)个clock,则接口设备可在Te时刻停止时钟,此时VCC保持供电,RST保持高电平。时钟停止时序如图7所示。


信息交互完毕卡片进行释放,RST置状态L:CLK置状态L(除非时钟已经停止在状态L上)IO置状态L:VCC被释放。
上层软件采用C++进行设计,由于卡片在刚刚出厂还没有交付给运营商使用的时候,ATR中有时候也会被写入生产商的相关信息,可以根据此信息来检测芯片,但是一旦被运营商投入市场,那么就会被下载运营商的cos,此时ATR也变成了运营商的了,那么就无法根据ATR来进行检测。但是卡片出厂的时候卡商会将自己的cos下载到NVR中,其中包含了卡片生产商的标志信息,例如卡片的商业代码、生产时间、lot号以及坐标等等。而这些内容一旦下载进去就不能被修改,因此可以据此来检测。检测流程如图8所示。

4 结束语
文中给出了一种基于ARM7内核的SIM卡检测系统,通过测试可以顺利的实现检测功能,本系统采用标准接触式卡片设计,兼容7816的A、B、C 3种卡,为接触和以后升级的非接触式卡片读取信息提供了可行的平台。

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

网站地图

Top