数据传输系统及方法与流程

文档序号:12740946阅读:371来源:国知局
数据传输系统及方法与流程

本发明涉及通信技术领域,尤其涉及一种数据传输系统及方法。



背景技术:

随着移动通信技术的发展,越来越多的移动终端如智能手机具有双卡双通的功能,使得用户在实现语音业务的待机同时,能建立数据业务链接。现有的移动终端可以实现两张SIM(Subscriber Identity Module,用户身份识别卡)卡同时上网,但是如果一张SIM卡上4G(the 4th Generation Mobile Communication Technology,第四代移动通信技术),如LTE(Long Term Evolution,长期演进技术),另一张卡只能上3G(3rd Generation,第三代移动通信技术)的网络或者2G(2-Generation wireless telephone technology,第二代手机通信技术规格),即两张SIM卡不能同时使用4G网络。由于移动终端中的两张卡全开时,只有一张卡以使用4G网络,另一张卡只能使用2G或3G网络,导致移动终端中数据传输的效率较低。若两张SIM卡要同时使用4G网络,需要两个调制解调器,而移动终端中只有一个调制解调器。

因此,为了使移动终端中的两张SIM卡同时支持双LTE,以提高数据传输效率,移动终端可与外接设备连接(该外接设备中设置有调制解调器),以使移动终端的两张SIM卡对应不同的调制解调器,从而实现双LTE通信功能。

但是,目前移动终端和外接设备进行数据包传输过程中,如果外接设备向移动终端传输数据包的速度太快,移动终端会将外接设备发送的多个数据包识别为一个数据包,导致移动终端和外接设备之间数据交互出现识别错误的情况。



技术实现要素:

本发明的主要目的在于提出一种数据传输系统及方法,旨在解决移动终端通过外接设备实现双LTE通信功能过程中,移动终端和外接设备之间数据交互出现识别错误的技术问题。

为实现上述目的,本发明提供的一种数据传输系统,所述数据传输系统包括移动终端和外接设备,所述移动终端通过预设接口与所述外接设备连接,所述移动终端包括第一应用处理器、与嵌入式用户识别卡和实体用户识别卡连接的第一调制解调器、以及第一计时器,所述外接设备包括第二应用处理器、第二调制解调器和第二计时器;

所述第二应用处理器,用于当处于唤醒状态侦测到数据发送指令,且检测到所述预设接口中未存在处于发送状态的数据包时,初始化所述第二计时器;当所述第二计时器的值等于或者大于第一预设时间时,通过所述预设接口将待发送数据包发送给处于唤醒状态的所述第一应用处理器。

可选地,所述第二应用处理器还用于当处于休眠状态,且接收到数据交互请求时,从所述休眠状态进入唤醒状态,通过所述预设接口发送探测包给所述第一应用处理器,并初始化所述第二计时器;当所述第二计时器的值等于或者大于第二预设时间时,检测是否侦测到数据发送指令。

可选地,所述第一应用处理器还用于当处于休眠状态接收到所述探测包时,根据所述探测包从所述休眠状态进入所述唤醒状态,并初始化所述第一计时器;当所述第一计时器的值等于或者大于所述第三预设时间时,接收所述待发送数据包,并处理所述待发送数据包,其中,所述第二预设时间和所述第三预设时间之间的差值等于或者小于预设数值。

可选地,所述第一应用处理器还用于判断所述第一计时器的值是否等于或者大于第三预设时间;若所述第一计时器的值小于所述第三预设时间,且接收到所述待发送数据包,则丢弃所述待发送数据包。

可选地,所述第二应用处理器还用于当所述第二计时器的值小于所述第三预设时间时,在间隔预设时长后再次通过所述预设接口发送所述探测包给所述第一应用处理器。

此外,为实现上述目的,本发明还提出一种数据传输方法,所述数据传输方法应用于移动终端以及通过预设接口与所述移动终端连接的外接设备,所述移动终端包括第一应用处理器、与嵌入式用户识别卡和实体用户识别卡连接的第一调制解调器、以及第一计时器,所述外接设备包括第二应用处理器、第二调制解调器和第二计时器;

当处于唤醒状态的所述第二应用处理器侦测到数据发送指令,且检测到所述预设接口中未存在处于发送状态的数据包时,初始化所述第二计时器;

当所述第二计时器的值等于或者大于第一预设时间时,所述第二应用处理器通过所述预设接口将待发送数据包发送给处于唤醒状态的所述第一应用处理器。

可选地,所述当处于唤醒状态的所述第二应用处理器侦测到数据发送指令,且检测到所述预设接口中未存在处于发送状态的数据包时,初始化所述第二计时器的步骤之前,还包括:

当所述第二应用处理器处于休眠状态,且所述第二应用处理器接收到数据交互请求时,所述第二应用处理器从所述休眠状态进入唤醒状态,通过所述预设接口发送探测包给所述第一应用处理器,并初始化所述第二计时器;

当所述第二计时器的值等于或者大于第二预设时间时,所述第二应用处理器检测是否侦测到数据发送指令。

可选地,所述第二应用处理器从所述休眠状态进入唤醒状态,通过所述预设接口发送探测包给所述第一应用处理器,并初始化所述第二计时器的步骤之后,还包括:

当处于休眠状态的所述第一应用处理器接收到所述探测包时,所述第一应用处理器根据所述探测包从所述休眠状态进入所述唤醒状态,并初始化所述第一计时器;

所述第二应用处理器通过所述预设接口将待发送数据包发送给处于唤醒状态的所述第一应用处理器的步骤之后,还包括:

当所述第一计时器的值等于或者大于所述第三预设时间时,所述第一应用处理器接收所述待发送数据包,并处理所述待发送数据包,其中,所述第二预设时间和所述第三预设时间之间的差值等于或者小于预设数值。

可选地,当所述第一计时器的值等于或者大于所述第三预设时间时,所述第一应用处理器接收所述待发送数据包,并处理所述待发送数据包的步骤之前,还包括:

所述第一应用处理器判断所述第一计时器的值是否等于或者大于第三预设时间;

若所述第一计时器的值小于所述第三预设时间,且所述第一应用处理器接收到所述待发送数据包,所述第一应用处理器则丢弃所述待发送数据包。

可选地,所述第二应用处理器从所述休眠状态进入唤醒状态,通过所述预设接口发送探测包给所述第一应用处理器,并初始化所述第二计时器的步骤之后,还包括:

当所述第二计时器的值小于所述第三预设时间时,所述第二应用处理器在间隔预设时长后再次通过所述预设接口发送所述探测包给所述第一应用处理器。

本发明提供一种数据传输系统及方法,所述数据传输方法应用于移动终端以及通过预设接口与所述移动终端连接的外接设备,所述移动终端包括第一应用处理器、与嵌入式用户识别卡和实体用户识别卡连接的第一调制解调器、以及第一计时器,所述外接设备包括第二应用处理器、第二调制解调器和第二计时器;当处于唤醒状态的所述第二应用处理器侦测到数据发送指令,且检测到所述预设接口中未存在处于发送状态的数据包时,初始化所述第二计时器;当所述第二计时器的值等于或者大于第一预设时间时,所述第二应用处理器通过所述预设接口将待发送数据包发送给处于唤醒状态的所述第一应用处理器。实现了移动终端通过外接设备实现双LTE通信功能过程中,当预设接口中未存在处于发送状态的数据包时,只有在第二计时器的值等于或者大于第一预设时间时,第二应用处理器才发送待发送数据包发送给第一应用处理器。避免了移动终端和外接设备在数据包传输过程中,如果外接设备向移动终端传输数据包的速度太快,移动终端会将外接设备发送的多个数据包识别为一个数据包的情况出现,提高了移动终端识别外接设备所发送的数据包的准确率。

附图说明

图1为本发明一实施例的LTE网络架构的示意图;

图2为本发明实施例中移动终端和外接设备通讯连接的一种硬件结构示意图;

图3为本发明实施例中移动终端和外接设备通讯连接的一种实体结构示意图;

图4为本发明实施例中第一应用处理器和第二应用处理器之间数据传输的第一种示意图;

图5为本发明实施例中第一应用处理器和第二应用处理器之间数据传输的第二种示意图;

图6为本发明实施例中第一应用处理器和第二应用处理器之间数据传输的第三种示意图;

图7为本发明实施例中第一调制解调器和第二调制解调器之间数据传输的一种示意图;

图8为本发明数据传输方法第一实施例的流程示意图;

图9为本发明数据传输方法第二实施例的流程示意图;

图10为本发明数据传输方法第四实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。

图1是本发明一实施例的LTE网络架构的示意图。本发明一实施例的LTE网络架构包括:一个或多个移动终端(user equipment,UE)100、E-UTRAN(Evolved UMTS Terrestrial Radio Access Network,演进的UMTS陆地无线接入网)(图中未标号)、演进分组核心(EPC)(图中未标号)、归属订户服务器(HSS)107、网络(例如,因特网)(图中未标号)以及电路交换系统(图中未标号)。

E-UTRAN包括演进B节点(eNodeB)101和其它eNodeB 102。eNodeB 101提供朝向移动终端100的用户面和控制面的协议终接。eNodeB 101可经由X2接口连接到其他eNodeB。eNodeB 101也可称为基站、基收发机站、无线电基站、无线电收发机、收发机功能、基本服务集、扩展服务集、或其他某个合适的术语。eNodeB 101为移动终端100提供去往EPC的接入点。

eNodeB 101通过S1接口连接到EPC。EPC包括移动管理实体(EEM)104、其他移动管理实体106、服务网关103,以及分组数据网络(PDN)网关105。移动管理实体104是处理移动终端100与EPC之间的信令的控制节点。移动管理实体104提供承载和连接管理。所有用户IP分组通过服务网关103来传递,服务网关103自身连接到PDN网关105。PDN网关105提供UE IP地址分配以及其他功能。PDN网关105连接到网络,例如,因特网。

电路交换系统包括交互解决方案模块(IWS)108、移动交换中心(MSC)109、基站110和移动站111。在一个方面,电路交换系统可以通过IWS和MME(Mobility Management Entity,移动管理实体)与EPS(Evolved Packet System,演进的分组系统)进行通信。

图2为本发明实施例中移动终端和外接设备通讯连接的一种硬件结构示意图。在本发明实施例中,移动终端100通过预设接口与外接设备200连接。移动终端100包括第一处理芯片001和与第一处理芯片001连接的第一射频模块12。其中,第一处理芯片001包括第一应用处理器(Application Processor)10、与嵌入式用户识别卡13和实体用户识别卡14连接的第一调制解调器11(modem1)、RPM(Resource Power Manager,资源电源管理器)15和第一计时器16,实体用户识别卡14为SIM卡。外接设备200包括第二处理芯片002和与第二处理芯片002连接的第二射频模块22。其中,第二处理芯片002包括第二应用处理器20、第二调制解调器(modem2)21和第二计时器26。

第一应用处理器10和第二应用处理器20的内部框架包括应用层、框架层等,可处理复杂的逻辑操作以及进行任务分配等。在本发明实施例中,应用处理器指Android操作系统,以及基于Android操作系统的各种apk(Android Package,安卓安装包)。第一应用处理器10和第二应用处理器20通过预设接口实现连接,为用户提供交互接口,将用户输入的操作指令(例如,用户通过用户界面输入的有关启动视频通话的操作指令)传输给第一调制解调器11或第二调制解调器21,以实现两个应用处理器之间数据的定义与传递,例如,进行两个应用处理器的休眠、唤醒、同步的控制、开关机时芯片启动顺序的控制等。

在本发明的实施例中,预设接口为USB(Universal Serial Bus,通用串行总线)。USB复用出三条数据通道,分别用于第一应用处理器10和第二应用处理器20之间用户数据、信令数据和SIM卡鉴权数据的交互。即第一应用处理器10和第二应用处理器20通过USB传输用户数据、信令数据和SIM卡鉴权数据。其中,用户数据包括但不限于上网产生的数据,图片和聊天信息数据;信令数据包括但不限于开关机的控制数据,开关飞行模式的控制数据,显示状态信号的控制数据;SIM卡鉴权数据包括但不限于IMSI(International Mobile Subscriber Identification Number,国际移动用户识别码)和Ki(key identifier,鉴权密钥)。

具体地,第一应用处理器10和第二应用处理器20通过OTG(On-The-Go)技术进行数据交互。通过OTG技术,移动终端100中的第一调制解调器11可通过实体用户识别卡14或嵌入式用户识别卡13中的SIM卡参数来接入eNodeB 101,第二调制解调器21可通过实体用户识别卡14或嵌入式用户识别卡13的SIM卡参数来接入eNodeB 101,SIM卡参数包括但不限于SIM卡鉴权数据。

第一调制解调器11和第二调制解调器21包含各种网络交互的网络制式的协议栈,协议栈包含LTE/WCDMA(Wideband Code Division Multiple Access,宽带码分多址)/GSM(Global System for Mobile Communication,全球移动通信系统)/TD-SCDMA(Time Division-Synchronous Code Division Multiple Access,同步时分码分多址)/CDMA(Code Division Multiple Access,码分多址)/EDGE(Enhanced Data Rate for GSM Evolution,强型数据速率GSM演进技术)等通讯标准里边规定的协议代码。移动终端100通过协议与运营商网络进行交互,即进行数据流量上网、VOLTE(Voice Over LTE)打电话或者CS(Circuit Switched,电路交换)域打电话。第一调制解调器11和第二调制解调器21还可对SIM卡进行管控等等。

第一射频模块12用于将移动终端100传输的数据处理后传给eNodeB 101(基站网络),以及用于将eNodeB 101传输的数据处理后传给移动终端100。第二射频模块22用于将外接设备200传输的数据处理后传给eNodeB 101(基站网络),以及用于将eNodeB 101传输的数据处理后传给外接设备200。第一射频模块12和第二射频模块22所涉及的无线接入技术可以包括LTE、GSM、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA、EDGE、WLAN(Wireless Local Area Networks,无线局域网)、CDMA-2000、TD-SCDMA、WCDMA、WIFI(Wireless Fidelity,无线保真)等等。

实体用户识别卡14和嵌入式用户识别卡13与第一调制解调器11连接。其中,嵌入式用户识别卡13通过串口与第一调制解调器11连接,串口包括但不限于通用异步收发传输器(UART)。需要说明的是,嵌入式用户识别卡13为ESIM(Embedded Subscriber Identity Module)卡,相关卡参数直接写入该ESIM卡,该ESIM卡包含可编程的SIM卡芯片;该嵌入式用户识别卡13包括存储模块和片内操作系统(Chip Operating System,COS),该存储模块可为EFS(Encrypting File System,加密文件系统),存储模块用于存储嵌入式用户识别卡13的鉴权数据。

实体用户识别卡14和嵌入式用户识别卡13可存储不同的无线通信标准相关联的用户信息,用于提供移动通信业务(CS语音业务、PS数据业务和PS语音业务)所需的相关数据,并在其内部存储用户信息、短消息、执行鉴权算法和产生加密密匙等。在特定非限制性实例中,技术标准可为2G通信技术,例如,GSM、EDGE)、3G通信技术(例如,WCDMA、TD-SCDMA)、4G通信技术(例如,LTE),或任何其它移动通信技术(例如,4G等等)。

当嵌入式用户识别卡13需要进行网络注册时,通过开启的无线保真(WIFI)网络发送包含业务菜单数据的下载请求至嵌入式用户识别卡13对应的云端服务器,以从云端服务器获取嵌入式用户识别卡13的数据信息。当获取到嵌入式用户识别卡13的数据信息时,将数据信息写入嵌入式用户识别卡13的存储模块中,以实现嵌入式用户识别卡13的网络注册。其中,数据信息可以包括:IMSI、Ki(key identifier,鉴权密钥)、ICCID(Integrated Circuit Card Identifier)、PIN(个人标识号,Personal Identification Number)、PUK(PIN Unlocking Key)。可以理解的是,云端服务器中存储了各个运营商的卡号资源。

由于目前的移动终端100只有一套射频模块,当移动终端100有两张用户识别卡时,移动终端100的两张用户识别卡使用该套射频模块是分时复用的关系,并不能同时占用。例如,在两张用户识别卡全开时,其中一张用户识别卡只处理GSM通话,而另一张用户识别卡处理4G网络信息,具体哪张用户识别卡执行何种网络,在此不做限定。因此目前的射频模块双卡分时复用这种架构仅做到了LTE+GSM(即一张用户识别卡对应的技术标准为LTE,另一张用户识别卡对应的技术标准为GSM)。

可以理解的是,现有的移动终端100虽然可以支持双用户识别卡,由于移动终端100在注册网络的情况下,两张用户识别卡支持的是不同技术标准的网络,一张支持2G或3G,另一张支持4G,会使得移动终端100使用过程中,上网流量速度较慢。在本发明实施例中,移动终端100通过USB连接外接设备200,由于外接设备200包括第二调制解调器21和第二射频模块22,且第二射频模块22支持4G网络,因此,移动终端100可通过USB与外接设备200交互,从而使得移动终端100具备双LTE功能(此时嵌入式用户识别卡13和实体用户识别卡14管理的技术标准均为LTE标准,第一射频模块12和第二射频模块22所涉及的无线接入技术为LTE)。

在本发明实施例中,数据传输系统包括移动终端100和外接设备200,移动终端100通过外接设备200具备双LTE功能的实现方法有两种:①实体用户识别卡14通过第二调制解调器21支持LTE,具体过程为:第一调制解调器11将实体用户识别卡14中需要访问LTE网络的数据发送给第一应用处理器10,第一应用处理器10将所接收的数据通过USB发送给外接设备200的第二应用处理器20,第二应用处理器20将所接收的数据发送给第二调制解调器21,由第二调制解调器21转发给第二射频模块22,第二射频模块22将所接收的数据通过LTE网络发送出去;嵌入式用户识别卡13通过第一调制解调器11支持LTE,以实现移动终端100可支持双LTE。②嵌入式用户识别卡13通过第二调制解调器21支持LTE,具体过程为:第一调制解调器11将嵌入式用户识别卡13中需要访问LTE网络的数据发送给第一应用处理器10,第一应用处理器10将所接收的数据通过USB发送给外接设备200的第二应用处理器20,第二应用处理器20将所接收的数据发送给第二调制解调器21,由第二调制解调器21转发给第二射频模块22,第二射频模块22将所接收的数据通过LTE网络发送出去;实体用户识别卡14通过第一调制解调器11支持LTE,以实现移动终端100可支持双LTE。

当移动终端100未通过USB与外接设备200连接时,实体用户识别卡14所对应的技术标准为GSM,用于进行语音通讯,嵌入式用户识别卡13通过第一调制解调器11支持LTE,用于通过4G网络进行数据访问。

实体用户识别卡14在与移动终端100交互时,移动终端100检测实体用户识别卡14存在与否的信号只在开机瞬时产生,当开机检测不到实体用户识别卡14存在时,移动终端100将提示“插入用户识别卡”。移动终端100开机之后,移动终端100和实体用户识别卡14之间28秒通信一次,完成一些固定的通信检查(例如,用户识别卡是否在位等)。

RPM15用于管控各种资源,包括时钟资源、总线资源、PMIC(Power Management IC,电源管理集成电路,即各个芯片的电压)、DDR(内存分配),以及管理芯片的休眠唤醒的中断和应用处理器唤醒的截止时间。移动终端100的各个子系统,在需要资源时,向RPM15申请资源,各个子系统分别包括第一应用处理器10,第一调制解调器11、PRONTO(WIFI/蓝牙、NFC(Near Field Communication,近场通信)等)、LPASS(Low power audio subsystem,低功耗音频子系统),RPM15用来决定移动终端100系统的休眠状态,具体是,RPM15基于各个子系统的投票机制实现,当各个子系统都投休眠票时,RPM15才可以使移动终端100整个系统进行休眠。而当移动终端100有一个子或者多个子系统投反对休眠的票时,移动终端100整个系统都无法休眠。

在移动终端100和外接设备200通过USB通讯连接的情况下,唤醒方式可为以下三种:

1、第一应用处理器10接收到信令数据时,通过USB发送探测包给第二应用处理器20,以唤醒第二应用处理器20。

2、第二调制解调器21接收到用户数据时,唤醒第二应用处理器20,由第二应用处理器20通过USB传送探测包给第一应用处理器10,以唤醒第一应用处理器10。

3、第二调制解调器21周期性查找寻呼请求,以主动激活自己。若接收到寻呼请求,第二调制解调器21则唤醒第二应用处理器20,由第二应用处理器20通过USB发送探测包给第一应用处理器10,以唤醒第二应用处理器20。

此外,第二调制解调器21还可以定期唤醒自己,以在移动终端100进行位置更新时,跟基站进行握手交互,此时不需要唤醒第一应用处理器10。

第一计时器16和第二计时器26用于在移动终端100和外接设备200交互过程中时间的计算,以控制第一应用处理器10、第一调制解调器11、第二应用处理器20和/或第二调制解调器21在一定时间内从休眠状态进入唤醒状态,以及控制第一应用处理器10、第一调制解调器11、第二应用处理器20和/或第二调制解调器21在一定时间内从唤醒状态进入休眠状态。在本发明实施例中,移动终端100和外接设备200中计时器的个数可为一个,也可为多个。

参照图3,图3为本发明移动终端100和外接设备200通讯连接的实体结构图示意图。移动终端100通过USB与外接设备200通讯连接,其中,移动终端包括但不限于手机、PC(Personal Computer,个人电脑)或PAD(Personal Digital Assistant,个人数字助理),外接设备200包括但不限于无线上网卡和数据卡。需要说明的是,移动终端100通过USB与外接设备200连接位置并不限于图3所示,可根据具体需要来设置移动终端100通过USB与外接设备200的连接位置。

基于上述的LTE网络架构图、移动终端100和外接设备200通讯连接的硬件结构示意图,以及实体结构示意图,提出本发明的各个实施例。

本实施例提出一种数据传输系统,数据传输系统包括移动终端100和外接设备200,移动终端100通过预设接口与外接设备200连接,移动终端100包括第一应用处理器10、与嵌入式用户识别卡13和实体用户识别卡14连接的第一调制解调器11、第一射频模块12、以及第一计时器16,外接设备200包括第二应用处理器20、第二射频模块22、第二调制解调器21和第二计时器26。

第二应用处理器20,用于当处于唤醒状态侦测到数据发送指令,且检测到预设接口中未存在处于发送状态的数据包时,初始化第二计时器26;当第二计时器26的值等于或者大于第一预设时间时,通过预设接口将待发送数据包发送给处于唤醒状态的第一应用处理器10。

当处于唤醒状态的第二应用处理器20侦测到数据发送指令时,第二应用处理器20检测预设接口中是否存在处于发送状态的数据包,即检测预设接口中是否存在未发送完的数据包。若预设接口中未存在处于发送状态的数据包,则启动第二计时器26,并初始化第二计时器26,使第二计时器26的值等于零。当第二计时器26的值等于或者大于第一预设时间时,第二应用处理器20通过预设接口将待发送数据包发送给处于唤醒状态的第一应用处理器10。

当第二计时器26的值小于第一预设时间时,第二应用处理器20暂停发送待发送数据包给第一应用处理器10。即第二应用处理器20发送待响应数据包给第一应用处理器10的时间间隔为第一预设时间。在本实施例中,第一预设时间设置为3ms,在其它实施例中,第一预设时间也可设置为4ms或者5ms等。预设接口为USB。在其它实施例中,预设接口可为具有和USB同样功能的接口。

进一步地,当该数据发送指令是由第二调制解调器21触发的,待发送数据包的具体发送过程为:第二调制解调器21通过smd(share memory driver,smd)通道将待发送数据包发送给第二应用处理器20,第二应用处理器20通过USB接口将待发送数据包发送给第一应用处理器10,第一应用处理器10接收待发送数据包,通过smd通道将待发送数据包发送给第一调制解调器11(此时,表明需要将待发送数据包发送给第一调制解调器11,若不需要将待发送数据包发送给第一调制解调器11,第一应用处理器10则不将待发送数据包发送给第一调制解调器11)。

进一步地,当预设接口中存在处于发送状态的数据包时,第二应用处理器20等待预设接口中处于发送状态的数据包完全发送给第一应用处理器10。

进一步地,当第二应用处理器20侦测到预设接口中未存在处于发送状态的数据包时,第二应用处理器20检测发送队列中是否存在待发送数据包。若发送队列中存在待发送数据包,则初始化第二计时器26,在第二计时器26的值等于或者大于第一预设时间时,通过预设接口将待发送数据包发送给第一应用处理器10。若发送队列中未存在待发送数据包,则初始化第二计时器26,在第二计时器26的值等于或者大于第一预设时间时,发送队列中还未有待发送数据包,第二应用处理器20则再次初始化第二计时器26。当第二计时器26的值大于或者等于设定时间值,发送队列中还是未有待发送数据包,第二应用处理器20则从唤醒状态进入休眠状态。设定时间值可根据具体需要而设置,在本实施例中,设定时间值可设置为500ms,或者550ms等。可以理解的是,发送队列为存储待发送数据包的存储空间。需要说明的是,当第二计时器26的值大于或者等于设定时间值,且发送队列中还是未有待发送数据包时,调用USB接口协议自带的休眠函数执行USB的休眠操作,USB休眠释放所占用的时钟资源,以实现应用处理器和调制解调器的休眠。

本实施例通过当处于唤醒状态的第二应用处理器20侦测到数据发送指令时,且检测预设接口中未存在处于发送状态的数据包时,初始化第二计时器26;当第二计时器26的值等于或者大于第一预设时间时,第二应用处理器20通过预设接口将待发送数据包发送给处于唤醒状态的第一应用处理器10。实现了移动终端100通过外接设备200实现双LTE通信功能过程中,当预设接口中未存在处于发送状态的数据包,且在第二计时器26的值等于或者大于第一预设时间时,第二应用处理器20才发送待发送数据包发送给第一应用处理器10,避免了移动终端100和外接设备200在数据包传输过程中,如果外接设备200向移动终端100传输数据包的速度太快,移动终端100会将外接设备200发送的多个数据包识别为一个数据包的情况出现,提高了移动终端100识别外接设备200所发送的数据包的准确率。

进一步地,提出本发明数据传输系统第二实施例。

数据传输系统第二实施例与数据传输系统第一实施例的区别在于,第二应用处理器20还用于当处于休眠状态,且接收到数据交互请求时,从休眠状态进入唤醒状态,通过预设接口发送探测包给第一应用处理器10,并初始化第二计时器26。

第二应用处理器20还用于当第二计时器26的值等于或者大于第二预设时间时,检测是否侦测到数据发送指令;

当第二应用处理器20处于休眠状态,且第二应用处理器20接收到数据交互请求时,第二应用处理器20从休眠状态进入唤醒状态。当第二应用处理器20进入唤醒状态后,第二应用处理器20发送探测包给第一应用处理器10,并启动第二计时器26执行计时操作。在启动第二计时器26时,初始化第二计时器26,以使第二计时器26的值等于零。其中,第二应用处理器20接收的数据交互请求可为第二应用处理器20接收到eNodeB 101的数据请求,或者第二应用处理器20需要获取移动终端100中实体用户识别卡14或嵌入式用户识别卡13的数据,或者第二应用处理器20有鉴权需求等。

当第二计时器26的值等于或者大于第二预设时间时,第二应用处理器20检测是否侦测到数据发送指令,其中,该数据发送指令为发送待发送数据包的指令。第二预设时间可根据具体需要而设置,在本实施例中,将第二预设时间设置为30ms,在其它实施例中,也可将第二预设时间设置为34ms,或者40ms等。

需要说明的是,探测包可用固定字长的字符标识,该探测包不是正常的数据包,是正常数据包中不会出现的字段。如在本实施例中,可用0xF9F9F9表示探测包,在其它实施例中,也可用设置为其它形式的探测包,如0xF3F3和0x3F3F。

本实施例通过当处于休眠状态的第二应用处理器20接收到数据交互请求时,主动从休眠状态进入唤醒状态,并发送探测包给第一应用处理器10,以供第一应用处理器10根据探测包从休眠状态进入唤醒状态,以便于第二应用处理器20与第一应用处理器10可以进行正常的数据交互。

进一步地,提出本发明数据传输系统第三实施例。

数据传输系统第三实施例与数据传输系统第二实施例的区别在于,第一应用处理器10还用于当处于休眠状态接收到探测包时,根据探测包从休眠状态进入唤醒状态,并初始化第一计时器16。

参照图4,当处于休眠状态的第一应用处理器10接收到探测包时,第一应用处理器10从休眠状态进入唤醒状态,并启动第一计时器16执行计时操作,在启动第一计时器16时,初始化第一计时器16,以使第一计时器16的值等于零。第一应用处理器10判断第一计时器16的值是否等于或者大于第三预设时间。其中,第三预设时间可根据具体需要而设置,在本实施例中,将第三预设时间设置为20ms,在其它实施例中,也可将第三预设时间设置为25ms,或者28ms等。

需要说明的是,当第二应用处理器20通过USB给第一应用处理器10发送探测数据包后,MPM(终端深度休眠状态下依然存活的中断检测模块)检测到USB上的数据中断,MPM唤醒RPM,由RPM根据终端信号源唤醒对应子系统CPU,那么相应子系统即被唤醒处理事件。本实例中需要唤醒的有调制解调器和应用处理器。

第一应用处理器10还用于当第一计时器16的值等于或者大于第三预设时间时,接收待发送数据包,并处理待发送数据包,其中,第二预设时间和第三预设时间之间的差值等于或者小于预设数值。

当第一计时器16的值等于或者大于第三预设时间时,第一应用处理器10接收待发送数据包,并处理待发送数据包。如当待发送数据包是需要第一应用处理器10进行响应,第一应用处理器10则响应该待发送数据包;若该待发送数据包需要发送给第一调制解调器11,则将待发送数据包发送给第一调制解调器11。可以理解的是,第一应用处理器10处理待发送数据包的实质是根据待发送数据包的属性将待发送数据包发送给对应的模块或者进行相应的处理。

为了保证移动终端100能正常接收外接设备200所发送的待发送数据包,第二预设时间应该大于第三预设时间,且第二预设时间和第三预设时间之间差值应等于或者小于预设数值。可以理解的是,第一应用处理器10从休眠状态转换至唤醒状态的时间应小于或者等于预设数值。在本实施例中,预设数值设置为10ms,在其它实施例中,预设数值可设置为8ms,或者9ms等。

对比图5和图6可知,第一应用处理器10从休眠状态转换至唤醒状态的时间可以等于预设数值(如图5所示),此时,第三预设时间和预设数值之间的和等于第二预设时间。第一应用处理器10从休眠状态转换至唤醒状态的时间可以小于预设数值(如图6所示),此时,第三预设时间和预设数值之间的和小于第二预设时间。

进一步地,第一应用处理器10还用于判断第一计时器16的值是否等于或者大于第三预设时间;若第一计时器的值小于第三预设时间,且接收到待发送数据包,则丢弃待发送数据包。

当第一应用处理器10从休眠状态转换至唤醒状态后,第一应用处理器10判断第一计时器16的值是否等于或者大于第三预设时间。若第一计时器16的值小于第三预设时间,且第一应用处理器10接收到待发送数据包,第一应用处理器10则丢弃该待发送数据包,不将该待发送数据包上报给上层。

进一步地,参照图7,当该探测包是由第二调制解调器21触发的,探测包的具体发送过程为:第二调制解调器21通过smd(share memory driver)通道将探测包发送给第二应用处理器20,第二应用处理器20通过USB将探测包发送给第一应用处理器10,第一应用处理器10通过smd通道将所接收的探测包发送给第一调制解调器11(此时,表明需要唤醒第一调制解调器11,若不需要唤醒第一调制解调器11,第一应用处理器10则不将所接收的探测包发送给第一调制解调器11)。由图7可知,当探测包是由第二调制解调器21触发时,第二调制解调器21和第一调制解调器11的唤醒机制和数据发送机制,与第一应用处理器10和第二应用处理器20的唤醒机制和数据发送机制类似,在此不再赘述。

本实施例通过当第一应用处理器10处于休眠状态时,第二应用处理器20发送探测包给第一应用处理器10,以唤醒第一应用处理器10。并在第一应用处理器10进入唤醒状态后,通过第一计时器16和第二计时器26之间的时间差,避免了第二应用处理器20发送数据包给第一应用处理器10时,第一应用处理器10处于未完全唤醒状态,导致第一应用处理器10接收数据包失败的情况出现。在移动终端100通过外接设备200实现双LTE通信功能过程中,提高了外接设备200和移动终端100数据传输的成功率。

进一步地,提出本发明数据传输系统第四实施例。

数据传输系统第四实施例与数据传输系统第二实施例的区别在于,第二应用处理器20还用于当第二计时器26的值小于第三预设时间时,在间隔预设时长后再次通过预设接口发送探测包给第一应用处理器10。

当第二应用处理器20通过预设接口发送探测包给第一应用处理器10,且初始化第二计时器26后,第二应用处理器20判断第二计时器26的值是否小于第三预设时间。当第二计时器26的值小于第三预设时间时,第二应用处理器20在间隔预设时长后再次通过预设接口发送探测包给第一应用处理器10。在本实施例中,预设时长可根据具体需要而设置,但为了保证第一应用处理器10不会将探测包误认为是第二应用处理器20发送的正常数据包,即将探测包误认为是第二应用处理器20发送的待发送数据包,预设时长应小于第三预设时间。如可以将预设时长设置为4ms,6ms或者8ms等。当第三预设时间为20ms,预设时长为6ms时,第二应用处理器20在每间隔6ms后再次通过预设接口发送探测包给第一应用处理器10,即第二应用处理器20一共发送了三次探测包给第一应用处理器10。

本实施例通过当第二计时器26的值小于第三预设时间时,第二应用处理器20在间隔预设时长后再次通过预设接口发送探测包给第一应用处理器10,以避免第二应用处理器20在发送探测包给第一应用处理器10过程中,探测包丢失,或者探测包损坏等情况出现,以致于第一应用处理器10未能接收到探测包从休眠状态进入唤醒状态。

本发明还提供一种数据传输方法。

参照图8,图8为本发明数据传输方法第一实施例的流程示意图。

本实施例提出一种数据传输方法,在本实施例中,提供了数据传输方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

数据传输方法应用于通过预设接口与外接设备200连接的移动终端100中,移动终端100包括第一应用处理器10、与嵌入式用户识别卡13和实体用户识别卡14连接的第一调制解调器11、第一射频模块12、以及第一计时器16,外接设备200包括第二应用处理器20、第二射频模块22、第二调制解调器21和第二计时器26。

步骤S10,当处于唤醒状态的第二应用处理器20侦测到数据发送指令,且检测到预设接口中未存在处于发送状态的数据包时,初始化第二计时器26。

步骤S20,当第二计时器26的值等于或者大于第一预设时间时,第二应用处理器20通过预设接口将待发送数据包发送给处于唤醒状态的第一应用处理器10。

当处于唤醒状态的第二应用处理器20侦测到数据发送指令时,第二应用处理器20检测预设接口中是否存在处于发送状态的数据包,即检测预设接口中是否存在未发送完的数据包。若预设接口中未存在处于发送状态的数据包,则启动第二计时器26,并初始化第二计时器26,使第二计时器26的值等于零。当第二计时器26的值等于或者大于第一预设时间时,第二应用处理器20通过预设接口将待发送数据包发送给处于唤醒状态的第一应用处理器10。

当第二计时器26的值小于第一预设时间时,第二应用处理器20暂停发送待发送数据包给第一应用处理器10。即第二应用处理器20发送待响应数据包给第一应用处理器10的时间间隔为第一预设时间。在本实施例中,第一预设时间设置为3ms,在其它实施例中,第一预设时间也可设置为4ms或者5ms等。预设接口为USB。在其它实施例中,预设接口可为具有和USB同样功能的接口。

进一步地,当该数据发送指令是由第二调制解调器21触发的,待发送数据包的具体发送过程为:第二调制解调器21通过smd(share memory driver,smd)通道将待发送数据包发送给第二应用处理器20,第二应用处理器20通过USB接口将待发送数据包发送给第一应用处理器10,第一应用处理器10接收待发送数据包,通过smd通道将待发送数据包发送给第一调制解调器11(此时,表明需要将待发送数据包发送给第一调制解调器11,若不需要将待发送数据包发送给第一调制解调器11,第一应用处理器10则不将待发送数据包发送给第一调制解调器11)。

进一步地,当预设接口中存在处于发送状态的数据包时,第二应用处理器20等待预设接口中处于发送状态的数据包完全发送给第一应用处理器10。

进一步地,当第二应用处理器20侦测到预设接口中未存在处于发送状态的数据包时,第二应用处理器20检测发送队列中是否存在待发送数据包。若发送队列中存在待发送数据包,则初始化第二计时器26,在第二计时器26的值等于或者大于第一预设时间时,通过预设接口将待发送数据包发送给第一应用处理器10。若发送队列中未存在待发送数据包,则初始化第二计时器26,在第二计时器26的值等于或者大于第一预设时间时,发送队列中还未有待发送数据包,第二应用处理器20则再次初始化第二计时器26。当第二计时器26的值大于或者等于设定时间值,发送队列中还是未有待发送数据包,第二应用处理器20则从唤醒状态进入休眠状态。设定时间值可根据具体需要而设置,在本实施例中,设定时间值可设置为500ms,或者550ms等。可以理解的是,发送队列为存储待发送数据包的存储空间。需要说明的是,当第二计时器26的值大于或者等于设定时间值,且发送队列中还是未有待发送数据包时,调用USB接口协议自带的休眠函数执行USB的休眠操作,USB休眠释放所占用的时钟资源,以实现应用处理器和调制解调器的休眠。

本实施例通过当处于唤醒状态的第二应用处理器20侦测到数据发送指令时,且检测预设接口中未存在处于发送状态的数据包时,初始化第二计时器26;当第二计时器26的值等于或者大于第一预设时间时,第二应用处理器20通过预设接口将待发送数据包发送给处于唤醒状态的第一应用处理器10。实现了移动终端100通过外接设备200实现双LTE通信功能过程中,当预设接口中未存在处于发送状态的数据包,且在第二计时器26的值等于或者大于第一预设时间时,第二应用处理器20才发送待发送数据包发送给第一应用处理器10,避免了移动终端100和外接设备200在数据包传输过程中,如果外接设备200向移动终端100传输数据包的速度太快,移动终端100会将外接设备200发送的多个数据包识别为一个数据包的情况出现,提高了移动终端100识别外接设备200所发送的数据包的准确率。

进一步地,提出本发明数据传输方法第二实施例。

数据传输方法第二实施例与数据传输方法第一实施例的区别在于,参照图9,数据传输方法还包括:

步骤S30,当第二应用处理器20处于休眠状态,且第二应用处理器20接收到数据交互请求时,第二应用处理器20从休眠状态进入唤醒状态,通过预设接口发送探测包给第一应用处理器10,并初始化第二计时器26。

步骤S40,当第二计时器26的值等于或者大于第二预设时间时,第二应用处理器20检测是否侦测到数据发送指令。

当第二应用处理器20处于休眠状态,且第二应用处理器20接收到数据交互请求时,第二应用处理器20从休眠状态进入唤醒状态。当第二应用处理器20进入唤醒状态后,第二应用处理器20发送探测包给第一应用处理器10,并启动第二计时器26执行计时操作。在启动第二计时器26时,初始化第二计时器26,以使第二计时器26的值等于零。其中,第二应用处理器20接收的数据交互请求可为第二应用处理器20接收到eNodeB 101的数据请求,或者第二应用处理器20需要获取移动终端100中实体用户识别卡14或嵌入式用户识别卡13的数据,或者第二应用处理器20有鉴权需求等。

当第二计时器26的值等于或者大于第二预设时间时,第二应用处理器20检测是否侦测到数据发送指令,其中,该数据发送指令为发送待发送数据包的指令。第二预设时间可根据具体需要而设置,在本实施例中,将第二预设时间设置为30ms,在其它实施例中,也可将第二预设时间设置为34ms,或者40ms等。

需要说明的是,探测包可用固定字长的字符标识,该探测包不是正常的数据包,是正常数据包中不会出现的字段。如在本实施例中,可用0xF9F9F9表示探测包,在其它实施例中,也可用设置为其它形式的探测包,如0xF3F3和0x3F3F。

本实施例通过当处于休眠状态的第二应用处理器20接收到数据交互请求时,主动从休眠状态进入唤醒状态,并发送探测包给第一应用处理器10,以供第一应用处理器10根据探测包从休眠状态进入唤醒状态,以便于第二应用处理器20与第一应用处理器10可以进行正常的数据交互。

进一步地,提出本发明数据传输方法第三实施例。

数据传输方法第三实施例与数据传输方法第二实施例的区别在于,数据传输方法还包括:

步骤a,当处于休眠状态的第一应用处理器10接收到探测包时,第一应用处理器10根据探测包从休眠状态进入唤醒状态,并初始化第一计时器16。

参照图4,当处于休眠状态的第一应用处理器10接收到探测包时,第一应用处理器10从休眠状态进入唤醒状态,并启动第一计时器16执行计时操作,在启动第一计时器16时,初始化第一计时器16,以使第一计时器16的值等于零。第一应用处理器10判断第一计时器16的值是否等于或者大于第三预设时间。其中,第三预设时间可根据具体需要而设置,在本实施例中,将第三预设时间设置为20ms,在其它实施例中,也可将第三预设时间设置为25ms,或者28ms等。

需要说明的是,当第二应用处理器20通过USB给第一应用处理器10发送探测数据包后,MPM(终端深度休眠状态下依然存活的中断检测模块)检测到USB上的数据中断,MPM唤醒RPM,由RPM根据终端信号源唤醒对应子系统CPU,那么相应子系统即被唤醒处理事件。本实例中需要唤醒的有调制解调器和应用处理器。

步骤b,当第一计时器16的值等于或者大于第三预设时间时,第一应用处理器10接收待发送数据包,并处理待发送数据包,其中,第二预设时间和第三预设时间之间的差值等于或者小于预设数值。

当第一计时器16的值等于或者大于第三预设时间时,第一应用处理器10接收待发送数据包,并处理待发送数据包。如当待发送数据包是需要第一应用处理器10进行响应,第一应用处理器10则响应该待发送数据包;若该待发送数据包需要发送给第一调制解调器11,则将待发送数据包发送给第一调制解调器11。可以理解的是,第一应用处理器10处理待发送数据包的实质是根据待发送数据包的属性将待发送数据包发送给对应的模块或者进行相应的处理。

为了保证移动终端100能正常接收外接设备200所发送的待发送数据包,第二预设时间应该大于第三预设时间,且第二预设时间和第三预设时间之间差值应等于或者小于预设数值。可以理解的是,第一应用处理器10从休眠状态转换至唤醒状态的时间应小于或者等于预设数值。在本实施例中,预设数值设置为10ms,在其它实施例中,预设数值可设置为8ms,或者9ms等。

对比图5和图6可知,第一应用处理器10从休眠状态转换至唤醒状态的时间可以等于预设数值(如图5所示),此时,第三预设时间和预设数值之间的和等于第二预设时间。第一应用处理器10从休眠状态转换至唤醒状态的时间可以小于预设数值(如图6所示),此时,第三预设时间和预设数值之间的和小于第二预设时间。

进一步地,数据传输方法还包括:

步骤c,第一应用处理器10判断第一计时器16的值是否等于或者大于第三预设时间。

步骤d,若第一计时器16的值小于第三预设时间,且第一应用处理器10接收到待发送数据包,第一应用处理器10则丢弃待发送数据包。

当第一应用处理器10从休眠状态转换至唤醒状态后,第一应用处理器10判断第一计时器16的值是否等于或者大于第三预设时间。若第一计时器16的值小于第三预设时间,且第一应用处理器10接收到待发送数据包,第一应用处理器10则丢弃该待发送数据包,不将该待发送数据包上报给上层。

进一步地,参照图7,当该探测包是由第二调制解调器21触发的,探测包的具体发送过程为:第二调制解调器21通过smd(share memory driver)通道将探测包发送给第二应用处理器20,第二应用处理器20通过USB将探测包发送给第一应用处理器10,第一应用处理器10通过smd通道将所接收的探测包发送给第一调制解调器11(此时,表明需要唤醒第一调制解调器11,若不需要唤醒第一调制解调器11,第一应用处理器10则不将所接收的探测包发送给第一调制解调器11)。由图7可知,当探测包是由第二调制解调器21触发时,第二调制解调器21和第一调制解调器11的唤醒机制和数据发送机制,与第一应用处理器10和第二应用处理器20的唤醒机制和数据发送机制类似,在此不再赘述。

本实施例通过当第一应用处理器10处于休眠状态时,第二应用处理器20发送探测包给第一应用处理器10,以唤醒第一应用处理器10。并在第一应用处理器10进入唤醒状态后,通过第一计时器16和第二计时器26之间的时间差,避免了第二应用处理器20发送数据包给第一应用处理器10时,第一应用处理器10处于未完全唤醒状态,导致第一应用处理器10接收数据包失败的情况出现。在移动终端100通过外接设备200实现双LTE通信功能过程中,提高了外接设备200和移动终端100数据传输的成功率。

进一步地,提出本发明数据传输方法第四实施例。

数据传输方法第四实施例与数据传输方法第二实施例的区别在于,参照图10,数据传输方法还包括:

步骤S50,当第二计时器26的值小于第三预设时间时,第二应用处理器20在间隔预设时长后再次通过预设接口发送探测包给第一应用处理器10。

当第二应用处理器20通过预设接口发送探测包给第一应用处理器10,且初始化第二计时器26后,第二应用处理器20判断第二计时器26的值是否小于第三预设时间。当第二计时器26的值小于第三预设时间时,第二应用处理器20在间隔预设时长后再次通过预设接口发送探测包给第一应用处理器10。在本实施例中,预设时长可根据具体需要而设置,但为了保证第一应用处理器10不会将探测包误认为是第二应用处理器20发送的正常数据包,即将探测包误认为是第二应用处理器20发送的待发送数据包,预设时长应小于第三预设时间。如可以将预设时长设置为4ms,6ms或者8ms等。当第三预设时间为20ms,预设时长为6ms时,第二应用处理器20在每间隔6ms后再次通过预设接口发送探测包给第一应用处理器10,即第二应用处理器20一共发送了三次探测包给第一应用处理器10。

本实施例通过当第二计时器26的值小于第三预设时间时,第二应用处理器20在间隔预设时长后再次通过预设接口发送探测包给第一应用处理器10,以避免第二应用处理器20在发送探测包给第一应用处理器10过程中,探测包丢失,或者探测包损坏等情况出现,以致于第一应用处理器10未能接收到探测包从休眠状态进入唤醒状态。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1