本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)傳輸系統(tǒng)及方法。
背景技術(shù):
隨著移動通信技術(shù)的發(fā)展,越來越多的移動終端如智能手機具有雙卡雙通的功能,使得用戶在實現(xiàn)語音業(yè)務(wù)的待機同時,能建立數(shù)據(jù)業(yè)務(wù)鏈接?,F(xiàn)有的移動終端可以實現(xiàn)兩張SIM(Subscriber Identity Module,用戶身份識別卡)卡同時上網(wǎng),但是如果一張SIM卡上4G(the 4th Generation Mobile Communication Technology,第四代移動通信技術(shù)),如LTE(Long Term Evolution,長期演進(jìn)技術(shù)),另一張卡只能上3G(3rd Generation,第三代移動通信技術(shù))的網(wǎng)絡(luò)或者2G(2-Generation wireless telephone technology,第二代手機通信技術(shù)規(guī)格),即兩張SIM卡不能同時使用4G網(wǎng)絡(luò)。由于移動終端中的兩張卡全開時,只有一張卡以使用4G網(wǎng)絡(luò),另一張卡只能使用2G或3G網(wǎng)絡(luò),導(dǎo)致移動終端中數(shù)據(jù)傳輸?shù)男瘦^低。若兩張SIM卡要同時使用4G網(wǎng)絡(luò),需要兩個調(diào)制解調(diào)器,而移動終端中只有一個調(diào)制解調(diào)器。
因此,為了使移動終端中的兩張SIM卡同時支持雙LTE,以提高數(shù)據(jù)傳輸效率,移動終端可與外接設(shè)備連接(該外接設(shè)備中設(shè)置有調(diào)制解調(diào)器),以使移動終端的兩張SIM卡對應(yīng)不同的調(diào)制解調(diào)器,從而實現(xiàn)雙LTE通信功能。
但是,目前移動終端和外接設(shè)備進(jìn)行數(shù)據(jù)包傳輸過程中,如果外接設(shè)備向移動終端傳輸數(shù)據(jù)包的速度太快,移動終端會將外接設(shè)備發(fā)送的多個數(shù)據(jù)包識別為一個數(shù)據(jù)包,導(dǎo)致移動終端和外接設(shè)備之間數(shù)據(jù)交互出現(xiàn)識別錯誤的情況。
技術(shù)實現(xiàn)要素:
本發(fā)明的主要目的在于提出一種數(shù)據(jù)傳輸系統(tǒng)及方法,旨在解決移動終端通過外接設(shè)備實現(xiàn)雙LTE通信功能過程中,移動終端和外接設(shè)備之間數(shù)據(jù)交互出現(xiàn)識別錯誤的技術(shù)問題。
為實現(xiàn)上述目的,本發(fā)明提供的一種數(shù)據(jù)傳輸系統(tǒng),所述數(shù)據(jù)傳輸系統(tǒng)包括移動終端和外接設(shè)備,所述移動終端通過預(yù)設(shè)接口與所述外接設(shè)備連接,所述移動終端包括第一應(yīng)用處理器、與實體用戶識別卡連接的第一調(diào)制解調(diào)器、以及第一計時器,所述外接設(shè)備包括第二應(yīng)用處理器、第二計時器和與嵌入式用戶識別卡連接的第二調(diào)制解調(diào)器;
所述第二應(yīng)用處理器,用于當(dāng)處于喚醒狀態(tài)偵測到數(shù)據(jù)發(fā)送指令,且檢測到所述預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,初始化所述第二計時器;當(dāng)所述第二計時器的值等于或者大于第一預(yù)設(shè)時間時,通過所述預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給處于喚醒狀態(tài)的所述第一應(yīng)用處理器。
可選地,所述第二應(yīng)用處理器還用于當(dāng)處于休眠狀態(tài),且接收到數(shù)據(jù)交互請求時,從所述休眠狀態(tài)進(jìn)入喚醒狀態(tài),通過所述預(yù)設(shè)接口發(fā)送探測包給所述第一應(yīng)用處理器,并初始化所述第二計時器;當(dāng)所述第二計時器的值等于或者大于第二預(yù)設(shè)時間時,檢測是否偵測到數(shù)據(jù)發(fā)送指令。
可選地,所述第一應(yīng)用處理器還用于當(dāng)處于休眠狀態(tài)接收到所述探測包時,根據(jù)所述探測包從所述休眠狀態(tài)進(jìn)入所述喚醒狀態(tài),并初始化所述第一計時器;當(dāng)所述第一計時器的值等于或者大于所述第三預(yù)設(shè)時間時,接收所述待發(fā)送數(shù)據(jù)包,并處理所述待發(fā)送數(shù)據(jù)包,其中,所述第二預(yù)設(shè)時間和所述第三預(yù)設(shè)時間之間的差值等于或者小于預(yù)設(shè)數(shù)值。
可選地,所述第一應(yīng)用處理器還用于判斷所述第一計時器的值是否等于或者大于第三預(yù)設(shè)時間;若所述第一計時器的值小于所述第三預(yù)設(shè)時間,且接收到所述待發(fā)送數(shù)據(jù)包,則丟棄所述待發(fā)送數(shù)據(jù)包。
可選地,所述第二應(yīng)用處理器還用于當(dāng)所述第二計時器的值小于所述第三預(yù)設(shè)時間時,在間隔預(yù)設(shè)時長后再次通過所述預(yù)設(shè)接口發(fā)送所述探測包給所述第一應(yīng)用處理器。
此外,為實現(xiàn)上述目的,本發(fā)明還提出一種數(shù)據(jù)傳輸方法,所述數(shù)據(jù)傳輸方法應(yīng)用于移動終端以及通過預(yù)設(shè)接口與所述移動終端連接的外接設(shè)備,所述移動終端包括第一應(yīng)用處理器、與實體用戶識別卡連接的第一調(diào)制解調(diào)器、以及第一計時器,所述外接設(shè)備包括第二應(yīng)用處理器、第二計時器和與嵌入式用戶識別卡連接的第二調(diào)制解調(diào)器;
當(dāng)處于喚醒狀態(tài)的所述第二應(yīng)用處理器偵測到數(shù)據(jù)發(fā)送指令,且檢測到所述預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,初始化所述第二計時器;
當(dāng)所述第二計時器的值等于或者大于第一預(yù)設(shè)時間時,所述第二應(yīng)用處理器通過所述預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給處于喚醒狀態(tài)的所述第一應(yīng)用處理器。
可選地,所述當(dāng)處于喚醒狀態(tài)的所述第二應(yīng)用處理器偵測到數(shù)據(jù)發(fā)送指令,且檢測到所述預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,初始化所述第二計時器的步驟之前,還包括:
當(dāng)所述第二應(yīng)用處理器處于休眠狀態(tài),且所述第二應(yīng)用處理器接收到數(shù)據(jù)交互請求時,所述第二應(yīng)用處理器從所述休眠狀態(tài)進(jìn)入喚醒狀態(tài),通過所述預(yù)設(shè)接口發(fā)送探測包給所述第一應(yīng)用處理器,并初始化所述第二計時器;
當(dāng)所述第二計時器的值等于或者大于第二預(yù)設(shè)時間時,所述第二應(yīng)用處理器檢測是否偵測到數(shù)據(jù)發(fā)送指令。
可選地,所述第二應(yīng)用處理器從所述休眠狀態(tài)進(jìn)入喚醒狀態(tài),通過所述預(yù)設(shè)接口發(fā)送探測包給所述第一應(yīng)用處理器,并初始化所述第二計時器的步驟之后,還包括:
當(dāng)處于休眠狀態(tài)的所述第一應(yīng)用處理器接收到所述探測包時,所述第一應(yīng)用處理器根據(jù)所述探測包從所述休眠狀態(tài)進(jìn)入所述喚醒狀態(tài),并初始化所述第一計時器;
所述第二應(yīng)用處理器通過所述預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給處于喚醒狀態(tài)的所述第一應(yīng)用處理器的步驟之后,還包括:
當(dāng)所述第一計時器的值等于或者大于所述第三預(yù)設(shè)時間時,所述第一應(yīng)用處理器接收所述待發(fā)送數(shù)據(jù)包,并處理所述待發(fā)送數(shù)據(jù)包,其中,所述第二預(yù)設(shè)時間和所述第三預(yù)設(shè)時間之間的差值等于或者小于預(yù)設(shè)數(shù)值。
可選地,當(dāng)所述第一計時器的值等于或者大于所述第三預(yù)設(shè)時間時,所述第一應(yīng)用處理器接收所述待發(fā)送數(shù)據(jù)包,并處理所述待發(fā)送數(shù)據(jù)包的步驟之前,還包括:
所述第一應(yīng)用處理器判斷所述第一計時器的值是否等于或者大于第三預(yù)設(shè)時間;
若所述第一計時器的值小于所述第三預(yù)設(shè)時間,且所述第一應(yīng)用處理器接收到所述待發(fā)送數(shù)據(jù)包,所述第一應(yīng)用處理器則丟棄所述待發(fā)送數(shù)據(jù)包。
可選地,所述第二應(yīng)用處理器從所述休眠狀態(tài)進(jìn)入喚醒狀態(tài),通過所述預(yù)設(shè)接口發(fā)送探測包給所述第一應(yīng)用處理器,并初始化所述第二計時器的步驟之后,還包括:
當(dāng)所述第二計時器的值小于所述第三預(yù)設(shè)時間時,所述第二應(yīng)用處理器在間隔預(yù)設(shè)時長后再次通過所述預(yù)設(shè)接口發(fā)送所述探測包給所述第一應(yīng)用處理器。
本發(fā)明提供一種數(shù)據(jù)傳輸系統(tǒng)及方法,所述數(shù)據(jù)傳輸方法應(yīng)用于移動終端以及通過預(yù)設(shè)接口與所述移動終端連接的外接設(shè)備,所述移動終端包括第一應(yīng)用處理器、與實體用戶識別卡連接的第一調(diào)制解調(diào)器、以及第一計時器,所述外接設(shè)備包括第二應(yīng)用處理器、第二計時器和與嵌入式用戶識別卡連接的第二調(diào)制解調(diào)器;當(dāng)處于喚醒狀態(tài)的所述第二應(yīng)用處理器偵測到數(shù)據(jù)發(fā)送指令,且檢測到所述預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,初始化所述第二計時器;當(dāng)所述第二計時器的值等于或者大于第一預(yù)設(shè)時間時,所述第二應(yīng)用處理器通過所述預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給處于喚醒狀態(tài)的所述第一應(yīng)用處理器。實現(xiàn)了移動終端通過外接設(shè)備實現(xiàn)雙LTE通信功能過程中,當(dāng)預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,只有在第二計時器的值等于或者大于第一預(yù)設(shè)時間時,第二應(yīng)用處理器才發(fā)送待發(fā)送數(shù)據(jù)包發(fā)送給第一應(yīng)用處理器。避免了移動終端和外接設(shè)備在數(shù)據(jù)包傳輸過程中,如果外接設(shè)備向移動終端傳輸數(shù)據(jù)包的速度太快,移動終端會將外接設(shè)備發(fā)送的多個數(shù)據(jù)包識別為一個數(shù)據(jù)包的情況出現(xiàn),提高了移動終端識別外接設(shè)備所發(fā)送的數(shù)據(jù)包的準(zhǔn)確率。
附圖說明
圖1為本發(fā)明一實施例的LTE網(wǎng)絡(luò)架構(gòu)的示意圖;
圖2為本發(fā)明實施例中移動終端和外接設(shè)備通訊連接的一種硬件結(jié)構(gòu)示意圖;
圖3為本發(fā)明實施例中移動終端和外接設(shè)備通訊連接的一種實體結(jié)構(gòu)示意圖;
圖4為本發(fā)明實施例中第一應(yīng)用處理器和第二應(yīng)用處理器之間數(shù)據(jù)傳輸?shù)牡谝环N示意圖;
圖5為本發(fā)明實施例中第一應(yīng)用處理器和第二應(yīng)用處理器之間數(shù)據(jù)傳輸?shù)牡诙N示意圖;
圖6為本發(fā)明實施例中第一應(yīng)用處理器和第二應(yīng)用處理器之間數(shù)據(jù)傳輸?shù)牡谌N示意圖;
圖7為本發(fā)明數(shù)據(jù)傳輸方法第一實施例的流程示意圖;
圖8為本發(fā)明數(shù)據(jù)傳輸方法第二實施例的流程示意圖;
圖9為本發(fā)明數(shù)據(jù)傳輸方法第四實施例的流程示意圖。
本發(fā)明目的的實現(xiàn)、功能特點及優(yōu)點將結(jié)合實施例,參照附圖做說明。
具體實施方式
應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
現(xiàn)在將參考附圖描述實現(xiàn)本發(fā)明各個實施例的移動終端。在后續(xù)的描述中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發(fā)明的說明,其本身并沒有特定的意義。因此,"模塊"與"部件"可以混合地使用。
圖1是本發(fā)明一實施例的LTE網(wǎng)絡(luò)架構(gòu)的示意圖。本發(fā)明一實施例的LTE網(wǎng)絡(luò)架構(gòu)包括:一個或多個移動終端(user equipment,UE)100、E-UTRAN(Evolved UMTS Terrestrial Radio Access Network,演進(jìn)的UMTS陸地?zé)o線接入網(wǎng))(圖中未標(biāo)號)、演進(jìn)分組核心(EPC)(圖中未標(biāo)號)、歸屬訂戶服務(wù)器(HSS)107、網(wǎng)絡(luò)(例如,因特網(wǎng))(圖中未標(biāo)號)以及電路交換系統(tǒng)(圖中未標(biāo)號)。
E-UTRAN包括演進(jìn)B節(jié)點(eNodeB)101和其它eNodeB 102。eNodeB 101提供朝向移動終端100的用戶面和控制面的協(xié)議終接。eNodeB 101可經(jīng)由X2接口連接到其他eNodeB。eNodeB 101也可稱為基站、基收發(fā)機站、無線電基站、無線電收發(fā)機、收發(fā)機功能、基本服務(wù)集、擴展服務(wù)集、或其他某個合適的術(shù)語。eNodeB 101為移動終端100提供去往EPC的接入點。
eNodeB 101通過S1接口連接到EPC。EPC包括移動管理實體(EEM)104、其他移動管理實體106、服務(wù)網(wǎng)關(guān)103,以及分組數(shù)據(jù)網(wǎng)絡(luò)(PDN)網(wǎng)關(guān)105。移動管理實體104是處理移動終端100與EPC之間的信令的控制節(jié)點。移動管理實體104提供承載和連接管理。所有用戶IP分組通過服務(wù)網(wǎng)關(guān)103來傳遞,服務(wù)網(wǎng)關(guān)103自身連接到PDN網(wǎng)關(guān)105。PDN網(wǎng)關(guān)105提供UE IP地址分配以及其他功能。PDN網(wǎng)關(guān)105連接到網(wǎng)絡(luò),例如,因特網(wǎng)。
電路交換系統(tǒng)包括交互解決方案模塊(IWS)108、移動交換中心(MSC)109、基站110和移動站111。在一個方面,電路交換系統(tǒng)可以通過IWS和MME(Mobility Management Entity,移動管理實體)與EPS(Evolved Packet System,演進(jìn)的分組系統(tǒng))進(jìn)行通信。
圖2為本發(fā)明實施例中移動終端和外接設(shè)備通訊連接的一種硬件結(jié)構(gòu)示意圖。在本發(fā)明實施例中,移動終端100通過預(yù)設(shè)接口與外接設(shè)備200連接,移動終端100包括第一處理芯片001和與第一處理芯片001連接的第一射頻模塊12。其中,第一處理芯片001包括第一應(yīng)用處理器(Application Processor)10、與實體用戶識別卡13連接的第一調(diào)制解調(diào)器11(modem1)、RPM(Resource Power Manager,資源電源管理器)15和第一計時器16,實體用戶識別卡13為SIM卡。外接設(shè)備200包括第二處理芯片002和與第二處理芯片002連接的第二射頻模塊22。其中,第二處理芯片002包括第二應(yīng)用處理器20、與嵌入式用戶識別卡23連接的第二調(diào)制解調(diào)器(modem2)21、以及第二計時器26。
第一應(yīng)用處理器10和第二應(yīng)用處理器20的內(nèi)部框架包括應(yīng)用層、框架層等,可處理復(fù)雜的邏輯操作以及進(jìn)行任務(wù)分配等。在本發(fā)明實施例中,應(yīng)用處理器指Android操作系統(tǒng),以及基于Android操作系統(tǒng)的各種apk(Android Package,安卓安裝包)。第一應(yīng)用處理器10和第二應(yīng)用處理器20通過預(yù)設(shè)接口實現(xiàn)連接,為用戶提供交互接口,將用戶輸入的操作指令(例如,用戶通過用戶界面輸入的有關(guān)啟動視頻通話的操作指令)傳輸給第一調(diào)制解調(diào)器11或第二調(diào)制解調(diào)器21,以實現(xiàn)兩個應(yīng)用處理器之間數(shù)據(jù)的定義與傳遞,例如,進(jìn)行兩個應(yīng)用處理器的休眠、喚醒、同步的控制、開關(guān)機時芯片啟動順序的控制等。
第一應(yīng)用處理器10通過預(yù)設(shè)接口與第二應(yīng)用處理器20連接以實現(xiàn)移動終端100與外接設(shè)備200之間的連接。在本發(fā)明的實施例中,預(yù)設(shè)接口為USB(Universal Serial Bus,通用串行總線)。USB復(fù)用出兩條數(shù)據(jù)通道,分別用于第一應(yīng)用處理器10和第二應(yīng)用處理器20之間用戶數(shù)據(jù)和信令數(shù)據(jù)的交互。即第一應(yīng)用處理器10和第二應(yīng)用處理器20通過USB傳輸用戶數(shù)據(jù)和信令數(shù)據(jù)。其中,用戶數(shù)據(jù)包括但不限于上網(wǎng)產(chǎn)生的數(shù)據(jù),圖片和聊天信息數(shù)據(jù);信令數(shù)據(jù)包括但不限于開關(guān)機的控制數(shù)據(jù),開關(guān)飛行模式的控制數(shù)據(jù),顯示狀態(tài)信號的控制數(shù)據(jù)。在本發(fā)明實施例中,由于第一調(diào)制解調(diào)器11與實體用戶識別卡13連接,而第二調(diào)制解調(diào)器21與嵌入式用戶識別卡23連接,因此,USB不傳輸SIM卡鑒權(quán)數(shù)據(jù)。
具體地,第一應(yīng)用處理器10和第二應(yīng)用處理器20通過OTG(On-The-Go)技術(shù)進(jìn)行數(shù)據(jù)交互。通過OTG技術(shù),移動終端100中的第一調(diào)制解調(diào)器11可通過實體用戶識別卡13中的SIM卡參數(shù)來接入eNodeB 101,第二調(diào)制解調(diào)器21可通過嵌入式用戶識別卡23的SIM卡參數(shù)來接入eNodeB 101,SIM卡參數(shù)包括但不限于SIM卡鑒權(quán)數(shù)據(jù)。
第一調(diào)制解調(diào)器11和第二調(diào)制解調(diào)器21包含各種網(wǎng)絡(luò)交互的網(wǎng)絡(luò)制式的協(xié)議棧,協(xié)議棧包含LTE/WCDMA(Wideband Code Division Multiple Access,寬帶碼分多址)/GSM(Global System for Mobile Communication,全球移動通信系統(tǒng))/TD-SCDMA(Time Division-Synchronous Code Division Multiple Access,同步時分碼分多址)/CDMA(Code Division Multiple Access,碼分多址)/EDGE(Enhanced Data Rate for GSM Evolution,強型數(shù)據(jù)速率GSM演進(jìn)技術(shù))等通訊標(biāo)準(zhǔn)里邊規(guī)定的協(xié)議代碼。移動終端100通過協(xié)議與運營商網(wǎng)絡(luò)進(jìn)行交互,即進(jìn)行數(shù)據(jù)流量上網(wǎng)、VOLTE(Voice Over LTE)打電話或者CS(Circuit Switched,電路交換)域打電話。第一調(diào)制解調(diào)器11和第二調(diào)制解調(diào)器21還可對SIM卡進(jìn)行管控等等。
第一射頻模塊12用于將移動終端100傳輸?shù)臄?shù)據(jù)處理后傳給eNodeB 101(基站網(wǎng)絡(luò)),以及用于將eNodeB 101傳輸?shù)臄?shù)據(jù)處理后傳給移動終端100。第二射頻模塊22用于將外接設(shè)備200傳輸?shù)臄?shù)據(jù)處理后傳給eNodeB 101(基站網(wǎng)絡(luò)),以及用于將eNodeB 101傳輸?shù)臄?shù)據(jù)處理后傳給外接設(shè)備200。第一射頻模塊12和第二射頻模塊22所涉及的無線接入技術(shù)可以包括LTE、GSM、GPRS(General Packet Radio Service,通用分組無線服務(wù))、CDMA、EDGE、WLAN(Wireless Local Area Networks,無線局域網(wǎng))、CDMA-2000、TD-SCDMA、WCDMA、WIFI(Wireless Fidelity,無線保真)等等。
實體用戶識別卡13與第一調(diào)制解調(diào)器11連接。嵌入式用戶識別卡23與第二調(diào)制解調(diào)器21連接。嵌入式用戶識別卡23為ESIM(Embedded Subscriber Identity Module)卡,相關(guān)卡參數(shù)直接寫入該ESIM卡,該ESIM卡包含可編程的SIM卡芯片;該嵌入式用戶識別卡23包括存儲模塊和片內(nèi)操作系統(tǒng)(Chip Operating System,COS),該存儲模塊可為EFS(Encrypting File System,加密文件系統(tǒng)),存儲模塊用于存儲嵌入式用戶識別卡23的鑒權(quán)數(shù)據(jù)。
實體用戶識別卡13和嵌入式用戶識別卡23可存儲與不同或相同的技術(shù)標(biāo)準(zhǔn)相關(guān)聯(lián)的用戶信息,用于提供移動通信業(yè)務(wù)(CS語音業(yè)務(wù)、PS數(shù)據(jù)業(yè)務(wù)和PS語音業(yè)務(wù))所需的相關(guān)數(shù)據(jù),并在其內(nèi)部存儲用戶信息、短消息、執(zhí)行鑒權(quán)算法和產(chǎn)生加密密匙等。在特定非限制性實例中,技術(shù)標(biāo)準(zhǔn)可為2G通信技術(shù),例如,GSM、EDGE)、3G通信技術(shù)(例如,WCDMA、TD-SCDMA)、4G通信技術(shù)(例如,LTE),或任何其它移動通信技術(shù)(例如,4G等等)。
需要說明的是,當(dāng)嵌入式用戶識別卡23需要進(jìn)行網(wǎng)絡(luò)注冊時,通過開啟的無線保真(WIFI)網(wǎng)絡(luò)發(fā)送包含業(yè)務(wù)菜單數(shù)據(jù)的下載請求至嵌入式用戶識別卡23對應(yīng)的云端服務(wù)器,以從云端服務(wù)器獲取嵌入式用戶識別卡23的數(shù)據(jù)信息。當(dāng)獲取到嵌入式用戶識別卡23的數(shù)據(jù)信息時,將數(shù)據(jù)信息寫入嵌入式用戶識別卡23的存儲模塊中,以實現(xiàn)嵌入式用戶識別卡23的網(wǎng)絡(luò)注冊。其中,數(shù)據(jù)信息可以包括:IMSI、Ki(key identifier,鑒權(quán)密鑰)、ICCID(Integrated Circuit Card Identifier)、PIN(個人標(biāo)識號,Personal Identification Number)、PUK(PIN Unlocking Key)。可以理解的是,云端服務(wù)器中存儲了各個運營商的卡號資源。
由于目前的移動終端100只有一套射頻模塊,當(dāng)移動終端100有兩張用戶識別卡時,移動終端100的兩張用戶識別卡使用該套射頻模塊是分時復(fù)用的關(guān)系,并不能同時占用。例如,在兩張用戶識別卡全開時,其中一張用戶識別卡只處理GSM通話,而另一張用戶識別卡處理4G網(wǎng)絡(luò)信息,具體哪個用戶識別卡執(zhí)行何種網(wǎng)絡(luò),在此不做限定。因此目前的射頻模塊雙卡分時復(fù)用這種架構(gòu)僅做到了LTE+GSM(即一張用戶識別卡對應(yīng)的技術(shù)標(biāo)準(zhǔn)為LTE,另一張用戶識別卡對應(yīng)的技術(shù)標(biāo)準(zhǔn)為GSM)。
可以理解的是,現(xiàn)有的移動終端100雖然可以支持雙用戶識別卡,但是移動終端100在注冊網(wǎng)絡(luò)的情況下,兩張用戶識別卡支持的是不同技術(shù)標(biāo)準(zhǔn)的網(wǎng)絡(luò),一張支持2G或3G,另一張支持4G,會使得移動終端100使用過程中,上網(wǎng)流量速度較慢。在本發(fā)明實施例中,移動終端100通過USB連接外接設(shè)備200,由于外接設(shè)備200包括與嵌入式用戶識別卡23連接的第二調(diào)制解調(diào)器21、以及第二射頻模塊22,且第二射頻模塊22支持4G網(wǎng)絡(luò)。因此,移動終端100可通過USB與外接設(shè)備200交互,從而使得移動終端100具備雙LTE功能(此時實體用戶識別卡13和嵌入式用戶識別卡23管理的技術(shù)標(biāo)準(zhǔn)均為LTE標(biāo)準(zhǔn),第一射頻模塊12和第二射頻模塊22所涉及的無線接入技術(shù)為LTE,即第一調(diào)制解調(diào)器11可通過實體用戶識別卡13支持LTE,而第二調(diào)制解調(diào)器21可通過嵌入式用戶識別卡23支持LTE)。
當(dāng)移動終端100未通過USB與外接設(shè)備200連接時,實體用戶識別卡13所對應(yīng)的技術(shù)標(biāo)準(zhǔn)為GSM,用于進(jìn)行語音通訊,或者通過第一調(diào)制解調(diào)器11支持LTE用于通過4G網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)訪問。
實體用戶識別卡13與移動終端100交互時,移動終端100檢測該實體用戶識別卡13存在與否的信號只在開機瞬時產(chǎn)生,當(dāng)移動終端100開機檢測不到實體用戶識別卡13存在時,在移動終端100的顯示屏中提示“接入用戶識別卡”。移動終端100開機之后,移動終端100和實體用戶識別卡13之間28秒通信一次,完成一些固定的通信檢查(例如,用戶識別卡是否在位等)。
需要說明的是,由于移動終端100的第一調(diào)制解調(diào)器11與實體用戶識別卡13連接,而外接設(shè)備200的第二調(diào)制解調(diào)器21與嵌入式用戶識別卡23連接,因此,第一調(diào)制解調(diào)器11和第二調(diào)制解調(diào)器21相互獨立,第二調(diào)制解調(diào)器21不喚醒第一調(diào)制解調(diào)器11。
RPM15用于管控各種資源,包括時鐘資源、總線資源、PMIC(Power Management IC,電源管理集成電路,即各個芯片的電壓)、DDR(內(nèi)存分配),以及管理芯片的休眠喚醒的中斷和應(yīng)用處理器喚醒的截止時間。移動終端100的各個子系統(tǒng),在需要資源時,向RPM15申請資源,各個子系統(tǒng)分別包括第一應(yīng)用處理器10,第一調(diào)制解調(diào)器11、PRONTO(WIFI/藍(lán)牙、NFC(Near Field Communication,近場通信)等)、LPASS(Low power audio subsystem,低功耗音頻子系統(tǒng)),RPM15用來決定移動終端100系統(tǒng)的休眠狀態(tài),具體是,RPM15基于各個子系統(tǒng)的投票機制實現(xiàn),當(dāng)各個子系統(tǒng)都投休眠票時,RPM15才可以使移動終端100整個系統(tǒng)進(jìn)行休眠。而當(dāng)移動終端100有一個子或者多個子系統(tǒng)投反對休眠的票時,移動終端100整個系統(tǒng)都無法休眠。
在移動終端100的整個系統(tǒng)休眠之后,若是要重新啟動運行,需要喚醒第一應(yīng)用處理器10以進(jìn)行數(shù)據(jù)的傳輸交互。
在移動終端100和外接設(shè)備200通過USB通訊連接的情況下,喚醒方式可為以下三種:
1、第一應(yīng)用處理器10接收到信令數(shù)據(jù)時,通過USB發(fā)送探測包給第二應(yīng)用處理器20,以喚醒第二應(yīng)用處理器20。
2、第二調(diào)制解調(diào)器21接收到用戶數(shù)據(jù)時,喚醒第二應(yīng)用處理器20,由第二應(yīng)用處理器20通過USB傳送探測包給第一應(yīng)用處理器10,以喚醒第一應(yīng)用處理器10。
3、第二調(diào)制解調(diào)器21周期性查找尋呼請求,以主動激活自己。若接收到尋呼請求,第二調(diào)制解調(diào)器21則喚醒第二應(yīng)用處理器20,由第二應(yīng)用處理器20通過USB發(fā)送探測包給第一應(yīng)用處理器10,以喚醒第二應(yīng)用處理器20。
此外,第二調(diào)制解調(diào)器21還可以定期喚醒自己,以在移動終端100進(jìn)行位置更新時,跟基站進(jìn)行握手交互,此時不需要喚醒第一應(yīng)用處理器10。
第一計時器16和第二計時器26用于在移動終端100和外接設(shè)備200交互過程中時間的計算,以控制第一應(yīng)用處理器10、第一調(diào)制解調(diào)器11、第二應(yīng)用處理器20和/或第二調(diào)制解調(diào)器21在一定時間內(nèi)從休眠狀態(tài)進(jìn)入喚醒狀態(tài),以及控制第一應(yīng)用處理器10、第一調(diào)制解調(diào)器11、第二應(yīng)用處理器20和/或第二調(diào)制解調(diào)器21在一定時間內(nèi)從喚醒狀態(tài)進(jìn)入休眠狀態(tài)。在本發(fā)明實施例中,移動終端100和外接設(shè)備200中計時器的個數(shù)可為一個,也可為多個。
參照圖3,圖3為本發(fā)明移動終端100和外接設(shè)備200通訊連接的實體結(jié)構(gòu)圖示意圖。移動終端100通過USB與外接設(shè)備200通訊連接,其中,移動終端包括但不限于手機、PC(Personal Computer,個人電腦)或PAD(Personal Digital Assistant,個人數(shù)字助理),外接設(shè)備200包括但不限于無線上網(wǎng)卡和數(shù)據(jù)卡。需要說明的是,移動終端100通過USB與外接設(shè)備200連接位置并不限于圖3所示,可根據(jù)具體需要來設(shè)置移動終端100通過USB與外接設(shè)備200的連接位置。
基于上述的LTE網(wǎng)絡(luò)架構(gòu)圖、移動終端100和外接設(shè)備200通訊連接的硬件結(jié)構(gòu)示意圖,以及實體結(jié)構(gòu)示意圖,提出本發(fā)明的各個實施例。
本實施例提出一種數(shù)據(jù)傳輸系統(tǒng),數(shù)據(jù)傳輸系統(tǒng)包括移動終端100和外接設(shè)備200,移動終端100通過預(yù)設(shè)接口與外接設(shè)備200連接,移動終端100包括第一應(yīng)用處理器10、第一射頻模塊12、與實體用戶識別卡13連接的第一調(diào)制解調(diào)器11、以及第一計時器16,外接設(shè)備200包括第二應(yīng)用處理器20、第二射頻模塊22、第二計時器26和與嵌入式用戶識別卡23連接的第二調(diào)制解調(diào)器21。
第二應(yīng)用處理器20,用于當(dāng)處于喚醒狀態(tài)偵測到數(shù)據(jù)發(fā)送指令,且檢測到預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,初始化第二計時器26;當(dāng)?shù)诙嫊r器26的值等于或者大于第一預(yù)設(shè)時間時,通過預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給處于喚醒狀態(tài)的第一應(yīng)用處理器10。
當(dāng)處于喚醒狀態(tài)的第二應(yīng)用處理器20偵測到數(shù)據(jù)發(fā)送指令時,第二應(yīng)用處理器20檢測預(yù)設(shè)接口中是否存在處于發(fā)送狀態(tài)的數(shù)據(jù)包,即檢測預(yù)設(shè)接口中是否存在未發(fā)送完的數(shù)據(jù)包。若預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包,則啟動第二計時器26,并初始化第二計時器26,使第二計時器26的值等于零。當(dāng)?shù)诙嫊r器26的值等于或者大于第一預(yù)設(shè)時間時,第二應(yīng)用處理器20通過預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給處于喚醒狀態(tài)的第一應(yīng)用處理器10。
當(dāng)?shù)诙嫊r器26的值小于第一預(yù)設(shè)時間時,第二應(yīng)用處理器20暫停發(fā)送待發(fā)送數(shù)據(jù)包給第一應(yīng)用處理器10。即第二應(yīng)用處理器20發(fā)送待響應(yīng)數(shù)據(jù)包給第一應(yīng)用處理器10的時間間隔為第一預(yù)設(shè)時間。在本實施例中,第一預(yù)設(shè)時間設(shè)置為3ms,在其它實施例中,第一預(yù)設(shè)時間也可設(shè)置為4ms或者5ms等。預(yù)設(shè)接口為USB。在其它實施例中,預(yù)設(shè)接口可為具有和USB同樣功能的接口。
進(jìn)一步地,當(dāng)預(yù)設(shè)接口中存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,第二應(yīng)用處理器20等待預(yù)設(shè)接口中處于發(fā)送狀態(tài)的數(shù)據(jù)包完全發(fā)送給第一應(yīng)用處理器10。
進(jìn)一步地,當(dāng)?shù)诙?yīng)用處理器20偵測到預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,第二應(yīng)用處理器20檢測發(fā)送隊列中是否存在待發(fā)送數(shù)據(jù)包。若發(fā)送隊列中存在待發(fā)送數(shù)據(jù)包,則初始化第二計時器26,在第二計時器26的值等于或者大于第一預(yù)設(shè)時間時,通過預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給第一應(yīng)用處理器10。若發(fā)送隊列中未存在待發(fā)送數(shù)據(jù)包,則初始化第二計時器26,在第二計時器26的值等于或者大于第一預(yù)設(shè)時間時,發(fā)送隊列中還未有待發(fā)送數(shù)據(jù)包,第二應(yīng)用處理器20則再次初始化第二計時器26。當(dāng)?shù)诙嫊r器26的值大于或者等于設(shè)定時間值,發(fā)送隊列中還是未有待發(fā)送數(shù)據(jù)包,第二應(yīng)用處理器20則從喚醒狀態(tài)進(jìn)入休眠狀態(tài)。設(shè)定時間值可根據(jù)具體需要而設(shè)置,在本實施例中,設(shè)定時間值可設(shè)置為500ms,或者550ms等??梢岳斫獾氖?,發(fā)送隊列為存儲待發(fā)送數(shù)據(jù)包的存儲空間。需要說明的是,當(dāng)?shù)诙嫊r器26的值大于或者等于設(shè)定時間值,且發(fā)送隊列中還是未有待發(fā)送數(shù)據(jù)包時,調(diào)用USB接口協(xié)議自帶的休眠函數(shù)執(zhí)行USB的休眠操作,USB休眠釋放所占用的時鐘資源,以實現(xiàn)應(yīng)用處理器和調(diào)制解調(diào)器的休眠。
本實施例通過當(dāng)處于喚醒狀態(tài)的第二應(yīng)用處理器20偵測到數(shù)據(jù)發(fā)送指令時,且檢測預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,初始化第二計時器26;當(dāng)?shù)诙嫊r器26的值等于或者大于第一預(yù)設(shè)時間時,第二應(yīng)用處理器20通過預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給處于喚醒狀態(tài)的第一應(yīng)用處理器10。實現(xiàn)了移動終端100通過外接設(shè)備200實現(xiàn)雙LTE通信功能過程中,當(dāng)預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包,且在第二計時器26的值等于或者大于第一預(yù)設(shè)時間時,第二應(yīng)用處理器20才發(fā)送待發(fā)送數(shù)據(jù)包發(fā)送給第一應(yīng)用處理器10,避免了移動終端100和外接設(shè)備200在數(shù)據(jù)包傳輸過程中,如果外接設(shè)備200向移動終端100傳輸數(shù)據(jù)包的速度太快,移動終端100會將外接設(shè)備200發(fā)送的多個數(shù)據(jù)包識別為一個數(shù)據(jù)包的情況出現(xiàn),提高了移動終端100識別外接設(shè)備200所發(fā)送的數(shù)據(jù)包的準(zhǔn)確率。
進(jìn)一步地,提出本發(fā)明數(shù)據(jù)傳輸系統(tǒng)第二實施例。
數(shù)據(jù)傳輸系統(tǒng)第二實施例與數(shù)據(jù)傳輸系統(tǒng)第一實施例的區(qū)別在于,第二應(yīng)用處理器20還用于當(dāng)處于休眠狀態(tài),且接收到數(shù)據(jù)交互請求時,從休眠狀態(tài)進(jìn)入喚醒狀態(tài),通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10,并初始化第二計時器26。
第二應(yīng)用處理器20還用于當(dāng)?shù)诙嫊r器26的值等于或者大于第二預(yù)設(shè)時間時,檢測是否偵測到數(shù)據(jù)發(fā)送指令。
當(dāng)?shù)诙?yīng)用處理器20處于休眠狀態(tài),且第二應(yīng)用處理器20接收到數(shù)據(jù)交互請求時,第二應(yīng)用處理器20從休眠狀態(tài)進(jìn)入喚醒狀態(tài)。當(dāng)?shù)诙?yīng)用處理器20進(jìn)入喚醒狀態(tài)后,第二應(yīng)用處理器20發(fā)送探測包給第一應(yīng)用處理器10,并啟動第二計時器26執(zhí)行計時操作。在啟動第二計時器26時,初始化第二計時器26,以使第二計時器26的值等于零。其中,第二應(yīng)用處理器20接收的數(shù)據(jù)交互請求可為第二應(yīng)用處理器20接收到eNodeB 101的數(shù)據(jù)請求,或者第二應(yīng)用處理器20需要訪問2G、3G、或者4G網(wǎng)絡(luò),或者第二應(yīng)用處理器20有鑒權(quán)需求等。
當(dāng)?shù)诙嫊r器26的值等于或者大于第二預(yù)設(shè)時間時,第二應(yīng)用處理器20檢測是否偵測到數(shù)據(jù)發(fā)送指令,其中,該數(shù)據(jù)發(fā)送指令為發(fā)送待發(fā)送數(shù)據(jù)包的指令。第二預(yù)設(shè)時間可根據(jù)具體需要而設(shè)置,在本實施例中,將第二預(yù)設(shè)時間設(shè)置為30ms,在其它實施例中,也可將第二預(yù)設(shè)時間設(shè)置為34ms,或者40ms等。
需要說明的是,探測包可用固定字長的字符標(biāo)識,該探測包不是正常的數(shù)據(jù)包,是正常數(shù)據(jù)包中不會出現(xiàn)的字段。如在本實施例中,可用0xF9F9F9表示探測包,在其它實施例中,也可用設(shè)置為其它形式的探測包,如0xF3F3和0x3F3F。
本實施例通過當(dāng)處于休眠狀態(tài)的第二應(yīng)用處理器20接收到數(shù)據(jù)交互請求時,主動從休眠狀態(tài)進(jìn)入喚醒狀態(tài),并發(fā)送探測包給第一應(yīng)用處理器10,以供第一應(yīng)用處理器10根據(jù)探測包從休眠狀態(tài)進(jìn)入喚醒狀態(tài),以便于第二應(yīng)用處理器20與第一應(yīng)用處理器10可以進(jìn)行正常的數(shù)據(jù)交互。
進(jìn)一步地,提出本發(fā)明數(shù)據(jù)傳輸系統(tǒng)第三實施例。
數(shù)據(jù)傳輸系統(tǒng)第三實施例與數(shù)據(jù)傳輸系統(tǒng)第二實施例的區(qū)別在于,第一應(yīng)用處理器10還用于當(dāng)處于休眠狀態(tài)接收到探測包時,根據(jù)探測包從休眠狀態(tài)進(jìn)入喚醒狀態(tài),并初始化第一計時器16。
參照圖4,當(dāng)處于休眠狀態(tài)的第一應(yīng)用處理器10接收到探測包時,第一應(yīng)用處理器10從休眠狀態(tài)進(jìn)入喚醒狀態(tài),并啟動第一計時器16執(zhí)行計時操作,在啟動第一計時器16時,初始化第一計時器16,以使第一計時器16的值等于零。第一應(yīng)用處理器10判斷第一計時器16的值是否等于或者大于第三預(yù)設(shè)時間。其中,第三預(yù)設(shè)時間可根據(jù)具體需要而設(shè)置,在本實施例中,將第三預(yù)設(shè)時間設(shè)置為20ms,在其它實施例中,也可將第三預(yù)設(shè)時間設(shè)置為25ms,或者28ms等。
需要說明的是,當(dāng)?shù)诙?yīng)用處理器20通過USB給第一應(yīng)用處理器10發(fā)送探測數(shù)據(jù)包后,MPM(終端深度休眠狀態(tài)下依然存活的中斷檢測模塊)檢測到USB上的數(shù)據(jù)中斷,MPM喚醒RPM,由RPM根據(jù)終端信號源喚醒對應(yīng)子系統(tǒng)CPU,那么相應(yīng)子系統(tǒng)即被喚醒處理事件。
第一應(yīng)用處理器10還用于當(dāng)?shù)谝挥嫊r器16的值等于或者大于第三預(yù)設(shè)時間時,接收待發(fā)送數(shù)據(jù)包,并處理待發(fā)送數(shù)據(jù)包,其中,第二預(yù)設(shè)時間和第三預(yù)設(shè)時間之間的差值等于或者小于預(yù)設(shè)數(shù)值。
當(dāng)?shù)谝挥嫊r器16的值等于或者大于第三預(yù)設(shè)時間時,第一應(yīng)用處理器10接收待發(fā)送數(shù)據(jù)包,并處理待發(fā)送數(shù)據(jù)包。如當(dāng)待發(fā)送數(shù)據(jù)包是需要第一應(yīng)用處理器10進(jìn)行響應(yīng),第一應(yīng)用處理器10則響應(yīng)該待發(fā)送數(shù)據(jù)包??梢岳斫獾氖?,第一應(yīng)用處理器10處理待發(fā)送數(shù)據(jù)包的實質(zhì)是根據(jù)待發(fā)送數(shù)據(jù)包的屬性將待發(fā)送數(shù)據(jù)包發(fā)送給對應(yīng)的模塊或者進(jìn)行相應(yīng)的處理。
為了保證移動終端100能正常接收外接設(shè)備200所發(fā)送的待發(fā)送數(shù)據(jù)包,第二預(yù)設(shè)時間應(yīng)該大于第三預(yù)設(shè)時間,且第二預(yù)設(shè)時間和第三預(yù)設(shè)時間之間差值應(yīng)等于或者小于預(yù)設(shè)數(shù)值??梢岳斫獾氖牵谝粦?yīng)用處理器10從休眠狀態(tài)轉(zhuǎn)換至喚醒狀態(tài)的時間應(yīng)小于或者等于預(yù)設(shè)數(shù)值。在本實施例中,預(yù)設(shè)數(shù)值設(shè)置為10ms,在其它實施例中,預(yù)設(shè)數(shù)值可設(shè)置為8ms,或者9ms等。
對比圖5和圖6可知,第一應(yīng)用處理器10從休眠狀態(tài)轉(zhuǎn)換至喚醒狀態(tài)的時間可以等于預(yù)設(shè)數(shù)值(如圖5所示),此時,第三預(yù)設(shè)時間和預(yù)設(shè)數(shù)值之間的和等于第二預(yù)設(shè)時間。第一應(yīng)用處理器10從休眠狀態(tài)轉(zhuǎn)換至喚醒狀態(tài)的時間可以小于預(yù)設(shè)數(shù)值(如圖6所示),此時,第三預(yù)設(shè)時間和預(yù)設(shè)數(shù)值之間的和小于第二預(yù)設(shè)時間。
進(jìn)一步地,第一應(yīng)用處理器10還用于判斷第一計時器16的值是否等于或者大于第三預(yù)設(shè)時間;若第一計時器的值小于第三預(yù)設(shè)時間,且接收到待發(fā)送數(shù)據(jù)包,則丟棄待發(fā)送數(shù)據(jù)包。
當(dāng)?shù)谝粦?yīng)用處理器10從休眠狀態(tài)轉(zhuǎn)換至喚醒狀態(tài)后,第一應(yīng)用處理器10判斷第一計時器16的值是否等于或者大于第三預(yù)設(shè)時間。若第一計時器16的值小于第三預(yù)設(shè)時間,且第一應(yīng)用處理器10接收到待發(fā)送數(shù)據(jù)包,第一應(yīng)用處理器10則丟棄該待發(fā)送數(shù)據(jù)包,不將該待發(fā)送數(shù)據(jù)包上報給上層。
本實施例通過當(dāng)?shù)谝粦?yīng)用處理器10處于休眠狀態(tài)時,第二應(yīng)用處理器20發(fā)送探測包給第一應(yīng)用處理器10,以喚醒第一應(yīng)用處理器10。并在第一應(yīng)用處理器10進(jìn)入喚醒狀態(tài)后,通過第一計時器16和第二計時器26之間的時間差,避免了第二應(yīng)用處理器20發(fā)送數(shù)據(jù)包給第一應(yīng)用處理器10時,第一應(yīng)用處理器10處于未完全喚醒狀態(tài),導(dǎo)致第一應(yīng)用處理器10接收數(shù)據(jù)包失敗的情況出現(xiàn)。在移動終端100通過外接設(shè)備200實現(xiàn)雙LTE通信功能過程中,提高了外接設(shè)備200和移動終端100數(shù)據(jù)傳輸?shù)某晒β省?/p>
進(jìn)一步地,提出本發(fā)明數(shù)據(jù)傳輸系統(tǒng)第四實施例。
數(shù)據(jù)傳輸系統(tǒng)第四實施例與數(shù)據(jù)傳輸系統(tǒng)第二實施例的區(qū)別在于,第二應(yīng)用處理器20還用于當(dāng)?shù)诙嫊r器26的值小于第三預(yù)設(shè)時間時,在間隔預(yù)設(shè)時長后再次通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10。
當(dāng)?shù)诙?yīng)用處理器20通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10,且初始化第二計時器26后,第二應(yīng)用處理器20判斷第二計時器26的值是否小于第三預(yù)設(shè)時間。當(dāng)?shù)诙嫊r器26的值小于第三預(yù)設(shè)時間時,第二應(yīng)用處理器20在間隔預(yù)設(shè)時長后再次通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10。在本實施例中,預(yù)設(shè)時長可根據(jù)具體需要而設(shè)置,但為了保證第一應(yīng)用處理器10不會將探測包誤認(rèn)為是第二應(yīng)用處理器20發(fā)送的正常數(shù)據(jù)包,即將探測包誤認(rèn)為是第二應(yīng)用處理器20發(fā)送的待發(fā)送數(shù)據(jù)包,預(yù)設(shè)時長應(yīng)小于第三預(yù)設(shè)時間。如可以將預(yù)設(shè)時長設(shè)置為4ms,6ms或者8ms等。當(dāng)?shù)谌A(yù)設(shè)時間為20ms,預(yù)設(shè)時長為6ms時,第二應(yīng)用處理器20在每間隔6ms后再次通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10,即第二應(yīng)用處理器20一共發(fā)送了三次探測包給第一應(yīng)用處理器10。
本實施例通過當(dāng)?shù)诙嫊r器26的值小于第三預(yù)設(shè)時間時,第二應(yīng)用處理器20在間隔預(yù)設(shè)時長后再次通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10,以避免第二應(yīng)用處理器20在發(fā)送探測包給第一應(yīng)用處理器10過程中,探測包丟失,或者探測包損壞等情況出現(xiàn),以致于第一應(yīng)用處理器10未能接收到探測包從休眠狀態(tài)進(jìn)入喚醒狀態(tài)。
本發(fā)明還提供一種數(shù)據(jù)傳輸方法。
參照圖7,圖7為本發(fā)明數(shù)據(jù)傳輸方法第一實施例的流程示意圖。
本實施例提出一種數(shù)據(jù)傳輸方法,在本實施例中,提供了數(shù)據(jù)傳輸方法的實施例,需要說明的是,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
數(shù)據(jù)傳輸方法應(yīng)用于通過預(yù)設(shè)接口與外接設(shè)備200連接的移動終端100中,移動終端100包括第一應(yīng)用處理器10、第一射頻模塊11、與實體用戶識別卡13連接的第一調(diào)制解調(diào)器11、以及第一計時器16,外接設(shè)備200包括第二應(yīng)用處理器20、第二射頻模塊22、第二計時器26和與嵌入式用戶識別卡23連接的第二調(diào)制解調(diào)器21。
步驟S10,當(dāng)處于喚醒狀態(tài)的第二應(yīng)用處理器20偵測到數(shù)據(jù)發(fā)送指令,且檢測到預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,初始化第二計時器26。
步驟S20,當(dāng)?shù)诙嫊r器26的值等于或者大于第一預(yù)設(shè)時間時,第二應(yīng)用處理器20通過預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給處于喚醒狀態(tài)的第一應(yīng)用處理器10。
當(dāng)處于喚醒狀態(tài)的第二應(yīng)用處理器20偵測到數(shù)據(jù)發(fā)送指令時,第二應(yīng)用處理器20檢測預(yù)設(shè)接口中是否存在處于發(fā)送狀態(tài)的數(shù)據(jù)包,即檢測預(yù)設(shè)接口中是否存在未發(fā)送完的數(shù)據(jù)包。若預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包,則啟動第二計時器26,并初始化第二計時器26,使第二計時器26的值等于零。當(dāng)?shù)诙嫊r器26的值等于或者大于第一預(yù)設(shè)時間時,第二應(yīng)用處理器20通過預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給處于喚醒狀態(tài)的第一應(yīng)用處理器10。
當(dāng)?shù)诙嫊r器26的值小于第一預(yù)設(shè)時間時,第二應(yīng)用處理器20暫停發(fā)送待發(fā)送數(shù)據(jù)包給第一應(yīng)用處理器10。即第二應(yīng)用處理器20發(fā)送待響應(yīng)數(shù)據(jù)包給第一應(yīng)用處理器10的時間間隔為第一預(yù)設(shè)時間。在本實施例中,第一預(yù)設(shè)時間設(shè)置為3ms,在其它實施例中,第一預(yù)設(shè)時間也可設(shè)置為4ms或者5ms等。預(yù)設(shè)接口為USB。在其它實施例中,預(yù)設(shè)接口可為具有和USB同樣功能的接口。
進(jìn)一步地,當(dāng)預(yù)設(shè)接口中存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,第二應(yīng)用處理器20等待預(yù)設(shè)接口中處于發(fā)送狀態(tài)的數(shù)據(jù)包完全發(fā)送給第一應(yīng)用處理器10。
進(jìn)一步地,當(dāng)?shù)诙?yīng)用處理器20偵測到預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,第二應(yīng)用處理器20檢測發(fā)送隊列中是否存在待發(fā)送數(shù)據(jù)包。若發(fā)送隊列中存在待發(fā)送數(shù)據(jù)包,則初始化第二計時器26,在第二計時器26的值等于或者大于第一預(yù)設(shè)時間時,通過預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給第一應(yīng)用處理器10。若發(fā)送隊列中未存在待發(fā)送數(shù)據(jù)包,則初始化第二計時器26,在第二計時器26的值等于或者大于第一預(yù)設(shè)時間時,發(fā)送隊列中還未有待發(fā)送數(shù)據(jù)包,第二應(yīng)用處理器20則再次初始化第二計時器26。當(dāng)?shù)诙嫊r器26的值大于或者等于設(shè)定時間值,發(fā)送隊列中還是未有待發(fā)送數(shù)據(jù)包,第二應(yīng)用處理器20則從喚醒狀態(tài)進(jìn)入休眠狀態(tài)。設(shè)定時間值可根據(jù)具體需要而設(shè)置,在本實施例中,設(shè)定時間值可設(shè)置為500ms,或者550ms等??梢岳斫獾氖?,發(fā)送隊列為存儲待發(fā)送數(shù)據(jù)包的存儲空間。需要說明的是,當(dāng)?shù)诙嫊r器26的值大于或者等于設(shè)定時間值,且發(fā)送隊列中還是未有待發(fā)送數(shù)據(jù)包時,調(diào)用USB接口協(xié)議自帶的休眠函數(shù)執(zhí)行USB的休眠操作,USB休眠釋放所占用的時鐘資源,以實現(xiàn)應(yīng)用處理器和調(diào)制解調(diào)器的休眠。
本實施例通過當(dāng)處于喚醒狀態(tài)的第二應(yīng)用處理器20偵測到數(shù)據(jù)發(fā)送指令時,且檢測預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包時,初始化第二計時器26;當(dāng)?shù)诙嫊r器26的值等于或者大于第一預(yù)設(shè)時間時,第二應(yīng)用處理器20通過預(yù)設(shè)接口將待發(fā)送數(shù)據(jù)包發(fā)送給處于喚醒狀態(tài)的第一應(yīng)用處理器10。實現(xiàn)了移動終端100通過外接設(shè)備200實現(xiàn)雙LTE通信功能過程中,當(dāng)預(yù)設(shè)接口中未存在處于發(fā)送狀態(tài)的數(shù)據(jù)包,且在第二計時器26的值等于或者大于第一預(yù)設(shè)時間時,第二應(yīng)用處理器20才發(fā)送待發(fā)送數(shù)據(jù)包發(fā)送給第一應(yīng)用處理器10,避免了移動終端100和外接設(shè)備200在數(shù)據(jù)包傳輸過程中,如果外接設(shè)備200向移動終端100傳輸數(shù)據(jù)包的速度太快,移動終端100會將外接設(shè)備200發(fā)送的多個數(shù)據(jù)包識別為一個數(shù)據(jù)包的情況出現(xiàn),提高了移動終端100識別外接設(shè)備200所發(fā)送的數(shù)據(jù)包的準(zhǔn)確率。
進(jìn)一步地,提出本發(fā)明數(shù)據(jù)傳輸方法第二實施例。
數(shù)據(jù)傳輸方法第二實施例與數(shù)據(jù)傳輸方法第一實施例的區(qū)別在于,參照圖8,數(shù)據(jù)傳輸方法還包括:
步驟S30,當(dāng)?shù)诙?yīng)用處理器20處于休眠狀態(tài),且第二應(yīng)用處理器20接收到數(shù)據(jù)交互請求時,第二應(yīng)用處理器20從休眠狀態(tài)進(jìn)入喚醒狀態(tài),通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10,并初始化第二計時器26。
步驟S40,當(dāng)?shù)诙嫊r器26的值等于或者大于第二預(yù)設(shè)時間時,第二應(yīng)用處理器20檢測是否偵測到數(shù)據(jù)發(fā)送指令。
當(dāng)?shù)诙?yīng)用處理器20處于休眠狀態(tài),且第二應(yīng)用處理器20接收到數(shù)據(jù)交互請求時,第二應(yīng)用處理器20從休眠狀態(tài)進(jìn)入喚醒狀態(tài)。當(dāng)?shù)诙?yīng)用處理器20進(jìn)入喚醒狀態(tài)后,第二應(yīng)用處理器20發(fā)送探測包給第一應(yīng)用處理器10,并啟動第二計時器26執(zhí)行計時操作。在啟動第二計時器26時,初始化第二計時器26,以使第二計時器26的值等于零。其中,第二應(yīng)用處理器20接收的數(shù)據(jù)交互請求可為第二應(yīng)用處理器20接收到eNodeB 101的數(shù)據(jù)請求,或者第二應(yīng)用處理器20需要訪問2G、3G、或者4G網(wǎng)絡(luò),或者第二應(yīng)用處理器20有鑒權(quán)需求等。
當(dāng)?shù)诙嫊r器26的值等于或者大于第二預(yù)設(shè)時間時,第二應(yīng)用處理器20檢測是否偵測到數(shù)據(jù)發(fā)送指令,其中,該數(shù)據(jù)發(fā)送指令為發(fā)送待發(fā)送數(shù)據(jù)包的指令。第二預(yù)設(shè)時間可根據(jù)具體需要而設(shè)置,在本實施例中,將第二預(yù)設(shè)時間設(shè)置為30ms,在其它實施例中,也可將第二預(yù)設(shè)時間設(shè)置為34ms,或者40ms等。
需要說明的是,探測包可用固定字長的字符標(biāo)識,該探測包不是正常的數(shù)據(jù)包,是正常數(shù)據(jù)包中不會出現(xiàn)的字段。如在本實施例中,可用0xF9F9F9表示探測包,在其它實施例中,也可用設(shè)置為其它形式的探測包,如0xF3F3和0x3F3F。
本實施例通過當(dāng)處于休眠狀態(tài)的第二應(yīng)用處理器20接收到數(shù)據(jù)交互請求時,主動從休眠狀態(tài)進(jìn)入喚醒狀態(tài),并發(fā)送探測包給第一應(yīng)用處理器10,以供第一應(yīng)用處理器10根據(jù)探測包從休眠狀態(tài)進(jìn)入喚醒狀態(tài),以便于第二應(yīng)用處理器20與第一應(yīng)用處理器10可以進(jìn)行正常的數(shù)據(jù)交互。
進(jìn)一步地,提出本發(fā)明數(shù)據(jù)傳輸方法第三實施例。
數(shù)據(jù)傳輸方法第三實施例與數(shù)據(jù)傳輸方法第二實施例的區(qū)別在于,數(shù)據(jù)傳輸方法還包括:
步驟a,當(dāng)處于休眠狀態(tài)的第一應(yīng)用處理器10接收到探測包時,第一應(yīng)用處理器10根據(jù)探測包從休眠狀態(tài)進(jìn)入喚醒狀態(tài),并初始化第一計時器16。
參照圖4,當(dāng)處于休眠狀態(tài)的第一應(yīng)用處理器10接收到探測包時,第一應(yīng)用處理器10從休眠狀態(tài)進(jìn)入喚醒狀態(tài),并啟動第一計時器16執(zhí)行計時操作,在啟動第一計時器16時,初始化第一計時器16,以使第一計時器16的值等于零。第一應(yīng)用處理器10判斷第一計時器16的值是否等于或者大于第三預(yù)設(shè)時間。其中,第三預(yù)設(shè)時間可根據(jù)具體需要而設(shè)置,在本實施例中,將第三預(yù)設(shè)時間設(shè)置為20ms,在其它實施例中,也可將第三預(yù)設(shè)時間設(shè)置為25ms,或者28ms等。
需要說明的是,當(dāng)?shù)诙?yīng)用處理器20通過USB給第一應(yīng)用處理器10發(fā)送探測數(shù)據(jù)包后,MPM(終端深度休眠狀態(tài)下依然存活的中斷檢測模塊)檢測到USB上的數(shù)據(jù)中斷,MPM喚醒RPM,由RPM根據(jù)終端信號源喚醒對應(yīng)子系統(tǒng)CPU,那么相應(yīng)子系統(tǒng)即被喚醒處理事件。
步驟b,當(dāng)?shù)谝挥嫊r器16的值等于或者大于第三預(yù)設(shè)時間時,第一應(yīng)用處理器10接收待發(fā)送數(shù)據(jù)包,并處理待發(fā)送數(shù)據(jù)包,其中,第二預(yù)設(shè)時間和第三預(yù)設(shè)時間之間的差值等于或者小于預(yù)設(shè)數(shù)值。
當(dāng)?shù)谝挥嫊r器16的值等于或者大于第三預(yù)設(shè)時間時,第一應(yīng)用處理器10接收待發(fā)送數(shù)據(jù)包,并處理待發(fā)送數(shù)據(jù)包。如當(dāng)待發(fā)送數(shù)據(jù)包是需要第一應(yīng)用處理器10進(jìn)行響應(yīng),第一應(yīng)用處理器10則響應(yīng)該待發(fā)送數(shù)據(jù)包??梢岳斫獾氖?,第一應(yīng)用處理器10處理待發(fā)送數(shù)據(jù)包的實質(zhì)是根據(jù)待發(fā)送數(shù)據(jù)包的屬性將待發(fā)送數(shù)據(jù)包發(fā)送給對應(yīng)的模塊或者進(jìn)行相應(yīng)的處理。
為了保證移動終端100能正常接收外接設(shè)備200所發(fā)送的待發(fā)送數(shù)據(jù)包,第二預(yù)設(shè)時間應(yīng)該大于第三預(yù)設(shè)時間,且第二預(yù)設(shè)時間和第三預(yù)設(shè)時間之間差值應(yīng)等于或者小于預(yù)設(shè)數(shù)值。可以理解的是,第一應(yīng)用處理器10從休眠狀態(tài)轉(zhuǎn)換至喚醒狀態(tài)的時間應(yīng)小于或者等于預(yù)設(shè)數(shù)值。在本實施例中,預(yù)設(shè)數(shù)值設(shè)置為10ms,在其它實施例中,預(yù)設(shè)數(shù)值可設(shè)置為8ms,或者9ms等。
對比圖5和圖6可知,第一應(yīng)用處理器10從休眠狀態(tài)轉(zhuǎn)換至喚醒狀態(tài)的時間可以等于預(yù)設(shè)數(shù)值(如圖5所示),此時,第三預(yù)設(shè)時間和預(yù)設(shè)數(shù)值之間的和等于第二預(yù)設(shè)時間。第一應(yīng)用處理器10從休眠狀態(tài)轉(zhuǎn)換至喚醒狀態(tài)的時間可以小于預(yù)設(shè)數(shù)值(如圖6所示),此時,第三預(yù)設(shè)時間和預(yù)設(shè)數(shù)值之間的和小于第二預(yù)設(shè)時間。
進(jìn)一步地,數(shù)據(jù)傳輸方法還包括:
步驟c,第一應(yīng)用處理器10判斷第一計時器16的值是否等于或者大于第三預(yù)設(shè)時間。
步驟d,若第一計時器16的值小于第三預(yù)設(shè)時間,且第一應(yīng)用處理器10接收到待發(fā)送數(shù)據(jù)包,第一應(yīng)用處理器10則丟棄待發(fā)送數(shù)據(jù)包。
當(dāng)?shù)谝粦?yīng)用處理器10從休眠狀態(tài)轉(zhuǎn)換至喚醒狀態(tài)后,第一應(yīng)用處理器10判斷第一計時器16的值是否等于或者大于第三預(yù)設(shè)時間。若第一計時器16的值小于第三預(yù)設(shè)時間,且第一應(yīng)用處理器10接收到待發(fā)送數(shù)據(jù)包,第一應(yīng)用處理器10則丟棄該待發(fā)送數(shù)據(jù)包,不將該待發(fā)送數(shù)據(jù)包上報給上層。
本實施例通過當(dāng)?shù)谝粦?yīng)用處理器10處于休眠狀態(tài)時,第二應(yīng)用處理器20發(fā)送探測包給第一應(yīng)用處理器10,以喚醒第一應(yīng)用處理器10。并在第一應(yīng)用處理器10進(jìn)入喚醒狀態(tài)后,通過第一計時器16和第二計時器26之間的時間差,避免了第二應(yīng)用處理器20發(fā)送數(shù)據(jù)包給第一應(yīng)用處理器10時,第一應(yīng)用處理器10處于未完全喚醒狀態(tài),導(dǎo)致第一應(yīng)用處理器10接收數(shù)據(jù)包失敗的情況出現(xiàn)。在移動終端100通過外接設(shè)備200實現(xiàn)雙LTE通信功能過程中,提高了外接設(shè)備200和移動終端100數(shù)據(jù)傳輸?shù)某晒β省?/p>
進(jìn)一步地,提出本發(fā)明數(shù)據(jù)傳輸方法第四實施例。
數(shù)據(jù)傳輸方法第四實施例與數(shù)據(jù)傳輸方法第二實施例的區(qū)別在于,參照圖9,數(shù)據(jù)傳輸方法還包括:
步驟S50,當(dāng)?shù)诙嫊r器26的值小于第三預(yù)設(shè)時間時,第二應(yīng)用處理器20在間隔預(yù)設(shè)時長后再次通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10。
當(dāng)?shù)诙?yīng)用處理器20通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10,且初始化第二計時器26后,第二應(yīng)用處理器20判斷第二計時器26的值是否小于第三預(yù)設(shè)時間。當(dāng)?shù)诙嫊r器26的值小于第三預(yù)設(shè)時間時,第二應(yīng)用處理器20在間隔預(yù)設(shè)時長后再次通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10。在本實施例中,預(yù)設(shè)時長可根據(jù)具體需要而設(shè)置,但為了保證第一應(yīng)用處理器10不會將探測包誤認(rèn)為是第二應(yīng)用處理器20發(fā)送的正常數(shù)據(jù)包,即將探測包誤認(rèn)為是第二應(yīng)用處理器20發(fā)送的待發(fā)送數(shù)據(jù)包,預(yù)設(shè)時長應(yīng)小于第三預(yù)設(shè)時間。如可以將預(yù)設(shè)時長設(shè)置為4ms,6ms或者8ms等。當(dāng)?shù)谌A(yù)設(shè)時間為20ms,預(yù)設(shè)時長為6ms時,第二應(yīng)用處理器20在每間隔6ms后再次通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10,即第二應(yīng)用處理器20一共發(fā)送了三次探測包給第一應(yīng)用處理器10。
本實施例通過當(dāng)?shù)诙嫊r器26的值小于第三預(yù)設(shè)時間時,第二應(yīng)用處理器20在間隔預(yù)設(shè)時長后再次通過預(yù)設(shè)接口發(fā)送探測包給第一應(yīng)用處理器10,以避免第二應(yīng)用處理器20在發(fā)送探測包給第一應(yīng)用處理器10過程中,探測包丟失,或者探測包損壞等情況出現(xiàn),以致于第一應(yīng)用處理器10未能接收到探測包從休眠狀態(tài)進(jìn)入喚醒狀態(tài)。
需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其它變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者系統(tǒng)不僅包括那些要素,而且還包括沒有明確列出的其它要素,或者是還包括為這種過程、方法、物品或者系統(tǒng)所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者系統(tǒng)中還存在另外的相同要素。
上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
通過以上的實施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺終端設(shè)備(可以是手機,計算機,服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例的方法。
以上僅為本發(fā)明的優(yōu)選實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其它相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。