Sim Module Profile

按照AT命令的规范,普通的AT命令在命令发送后到收到应答期间,不能收发其他AT命令.

本实施例中,由于SIM卡数据AT命令的收发时间是不定的,所以另外启用了一个线程(第一线程)专门处理SM卡数据AT命令(SM卡的交互命令),与普通AT命令区分开来,

保证在任何时候都可以处理SM卡数据的AT命令。

具体来讲,SIM卡数据的AT命令由第一线程进行处理,普通AT命令由第二线程进行处理,当第一线程和第二线程同时存在时,将第二线程进行压栈,优先处理第一线程。

当第一线程处理完毕后,再将第二线程出栈以处理第二线程。这样就很好地解决了当第一线程在处理SM卡数据的AT命令和第二线程在处理普通AT命令同时存在时发生的冲突问题。

—般发送给SIM卡命令后,一定会收到SIM卡返回的结果。但是,由于SIM卡和通讯模块不是直接连接的,无论采用其他什么方式,数据的传输都不可能100%成功。

在传输过程中,有可能会出现数据丢失问题,在这种情况下,则就收不到SIM卡返回的结果,为了处理数据在传输时出现丢失的问题,为此,本实施例中,增加了 SIM卡数据的超时重传机制。

当发出SIM卡数据的AT命令后在一设定时间内未收到应答,则重新发送SIM卡数据的 AT命令;当连续发送设定次数仍未收到应答时,则注册网络以对后续的命令不进行响应。

本实施例中,上述设定时间为5秒,设定次数为三次,当然,根据实际需要可对设定时间和设定次数进行调节。

具体来讲,当第一次发出SIM卡数据的AT命令后在5秒内未收到应答, 则重新发送SIM卡数据的AT命令,

当第二次发出SM卡数据的AT命令后在5秒内未收到应答,则重新发送SM卡数据的AT命令,

当第三次发出SM卡数据的AT命令后在5秒内未收到应答,也即连续发送三次仍未收到应答,则表示SIM卡的连接断开,

这时通讯模块去注册网络,告知网络此时SM卡的连接不正常,以对后续的命令不进行响应。

这种超时重传机制解决了传输时可能造成的SIM卡数据丢失问题。

在SIM卡进行复位时,对SIM 卡进行初始化。当SIM卡收到SIM卡复位命令后,SIM卡开始初始化,并进行简化的产生复位应答数据并发送。

本实施例中,复位应答包括ATR(Answer To Reset,复位响应)和PPS (Protocol and Parameter Selection,协议参量选择)。

本实施例中,ATR和PPS数据交互的过程按照将第一格式的数据或命令转换成第二格式的数据或命令的方式进行简化的复位应答的。

例如将远端的ATR数据转换成ATR数据的AT命令,并通过网络将ATR数据的 AT命令传输到近端,在近端将ATR数据的AT命令转换成ATR数据;

将近端的PPS数据转换成PPS数据的AT命令,并通过网络将PPS数据的AT命令传输到远端,在远端将PPS数据的 AT命令转换成PPS数据。

本实施例中,上电复位,原则是先接通SM卡触点,后启动冷复位,若冷复位失败, 启动热复位,若热复位也不成功,则释放触点并报错。

冷复位或热复位成功后,SIM卡应输出 ATR (即复位响应)。ATR是指SIM卡通过一系列的字符串来作出响应的一种行为,也称响应复位,

SM卡在最初被终端复位后,通过一串ATR来做出响应。这些字符包括一个初始字符 TS,然后跟随有最多32个附加字符。

这些字符一起为终端提供如何与SM卡进行后续工作通信的信息。本步骤中,进行ATR过程的数据交互,也就是说当SM卡复位命令后发送ATR。

X技术网 原文链接:http://www.xjishu.com/zhuanli/62/201210445810.html

SIM ATR:

接口字节采用逐层嵌套的方式来表示的,第一层TA1、TB1、TC1、TD1是否存在由T0的高4位决定.

第二层TA2、TB2、TC2、TD2是否存在则由TD1的高4位决定.

依此类推,每层的TDi的高4位都决定了下一层的TA(i+1)、TB(i+1)、TC(i+1)、TD(i+1)是否存在。

如果卡片在ATR里给出的信息表明其可以支持若干种通讯协议,终端该如何和它打交道呢?相当于卡片用默认的“英语”告诉终端“I  can speak English, Chinese, Japanese, French。”

这个时候终端可以进行协议选择(PPS)也可以不选择直接使用默认协议,如果进行协议选择的话,那么PPS就是终端在收到ATR后发出的第一个指令,

相当于终端告诉卡片“OK, Let’s speak in Chinese  !”,然后它们“就可以用中文拉呱了”。

如果不进行协议选择的话,终端则使用默认的协议给卡片发送其他的APDU指令,相当于二者使用默认的英语进行后续对话,

“Could you please bring me  a cup of coffee? ”,“OK, What’s your prefer?

时间: 2024-10-07 09:36:25

Sim Module Profile的相关文章

I.MX6 Android U-blox miniPCI 4G porting

/************************************************************************** * I.MX6 Android U-blox miniPCI 4G porting * 声明: * 在移植U-blox的4G模块的过程中遇到了不少的问题,有不少是自己的这边疏忽 * 的问题,无论怎么说,问题解决了就行. * * 2015-1-11 深圳 南山平山村 曾剑锋 *************************************

Android蓝牙完全学习手册

1.前言 市面上关于Android的技术书籍很多,几乎每本书也都会涉及到蓝牙开发,但均是上层应用级别的,而且篇幅也普遍短小.对于手机行业的开发者,要进行蓝牙模块的维护,就必须从Android系统底层,至少框架层开始,了解蓝牙的结构和代码实现原理.这方面的文档.网上的各个论坛的相关资料却少之又少.分析原因,大概因为虽然蓝牙协议是完整的,但是并没有具体的实现.蓝牙芯片公司只负责提供最底层的API,与上层的适配和其他元件的兼容,需要各个厂家自己去实现,因此并未出现适用非常广泛的标准API供各个领域的公

蓝牙Bluetooth技术手册规范下载【转】

蓝牙Bluetooth技术手册规范下载 http://www.crifan.com/summary_bluetooth_specification_download/ [背景] 之前就已经整理和转帖了和蓝牙技术相关的一些内容: [资源下载]bluetooth 协议 spec specification 蓝牙1.1.蓝牙1.2.蓝牙2.0(蓝牙2.0+EDR)区别 但是发现上述spec下载地址失效了. 所以继续重新找蓝牙的spec. [整理过程] 1.google搜: bluetooth spec

ICON案例运行

1.案例介绍 2.配置ICON的编译脚本 3.运行编译脚本 4.配置ICON的运行脚本 5.执行运行脚本 1.案例介绍 ICON案例处理流程 检查和执行ICON编译脚本 复制ICON运行脚本.设置脚本参数 检查ICON输入文件 执行ICON运行脚本 检查ICON输出文件及日志文件 2.配置ICON的编译脚本 A:进入ICON目录,复制bldit.icon并重命名: >cd $M3HOME/scripts/Icon >cp bldit.icon bidit.icon.profile B:对bld

配置管理系统

项目地址:https://github.com/melin/super-diamond super-diamond 配置管理系统提供系统参数配置管理,例如数据库的配置信息等,配置参数修改以后可以实时推送到客户端(基于netty4), 方便系统动态修改运行参数. 可以建多个项目,每个项目分为三种profile(development.test.production), 能够控制profile 级别的权限. 所有参数均由development profile配置,test和production pr

Atitit jsr规范有多少个  407个。Jsr规范大全

Atitit jsr规范有多少个  407个.Jsr规范大全 1.1. JCP维护职能是发展和更新.1 1.2. Java技术规范.参考实现(RI).技术兼容包(TCK)1 1.3. JCP维护的规范包括J2ME.J2SE.J2EE,XML,OSS,JAIN等1 1.4. 所有的jsr规范大全407个..2 2. 900开头的java 核心规范  30个11 1.1. JCP维护职能是发展和更新. 1.2. Java技术规范.参考实现(RI).技术兼容包(TCK) 1.3. JCP维护的规范包括

bluetooth service uuid

转自:https://www.bluetooth.com/specifications/assigned-numbers/service-discovery service discovery ???Use Assigned Numbers in the Service Discovery Protocol (SDP) for searching for services, a browse group list, documentation URL, and an icon URL. Serv

JSR规范大全

J2ME 配置规范=========JSR 30 --- Connected Limited Device Configuration 1.0http://jcp.org/en/jsr/detail?id=30 JSR 139 --- Connected Limited Device Configuration 1.1http://jcp.org/en/jsr/detail?id=139 JSR 36 --- Connected Device Configuration 1.0http://jc

蓝牙协议英文缩写——记录

参考wili百科:https://en.wikipedia.org/wiki/List_of_Bluetooth_profilesContents1 Advanced Audio Distribution Profile (A2DP)2 Attribute Profile (ATT)3 Audio/Video Remote Control Profile (AVRCP)4 Basic Imaging Profile (BIP)5 Basic Printing Profile (BPP)6 Com