基于ARM的SIM卡检测系统的研究
2.4 UART部分
通信接口是系统与外界进行信息交互的通道和桥梁,因此通信接口的设计在系统中是必不可少的,通过目前主流的儿种通信方式设计比较,本系统采用了UART方式。UART电路的关键是实现STR711FR2与PC电平匹配,PC机电平是12 V而STR711FR2的电平为3.3 V,这就需要进行电平转换,目前此类电平转换芯片有很多,如MAX3232及ST3232等等,本系统采用MAX3232芯片进行转换,MAX3232不仅能保证主机需要,而且单一3.3 V供电,可以同时实现发送转换和接受转换功能。芯片提供了2个UART通道,可以接2个RS3232,本系统只采用一个UART,只用选择第一个通道,另外一个不接。其电路设计如图5。
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种卡,为接触和以后升级的非接触式卡片读取信息提供了可行的平台。
- 基于DSP的音频会议信号合成算法研究(05-10)
- 基于定点DSP的MP3间频编码算法研究(07-04)
- DSP的并联电力有源滤波器的仿真研究(02-15)
- PCI总线数据采集系统的硬件研究(09-12)
- PIC单片机在温度测量领域的应用及仿真研究(11-23)
- 嵌入式软PLC 的设计与研究(06-27)