国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      發(fā)包方法、裝置和藍(lán)牙低能耗從設(shè)備與流程

      文檔序號:11480372閱讀:407來源:國知局
      發(fā)包方法、裝置和藍(lán)牙低能耗從設(shè)備與流程

      本公開涉及藍(lán)牙通信技術(shù)領(lǐng)域,尤其涉及一種發(fā)包方法、裝置、藍(lán)牙低能耗從設(shè)備及計算機可讀存儲介質(zhì)。



      背景技術(shù):

      藍(lán)牙低能耗(bluetoothlowenergy,ble)技術(shù)是低成本、短距離、可互操作的魯棒性無線技術(shù),ble技術(shù)可以用于實現(xiàn)智能終端與周邊配件之間的持續(xù)連接,是功耗極低的短距離無線通信技術(shù)。

      目前,ble從設(shè)備可以和ble主設(shè)備進(jìn)行通信,但是在2.4g無線環(huán)境比較惡劣例如干擾嚴(yán)重的情況下,有時ble主設(shè)備接收不到ble從設(shè)備發(fā)送的維持連接的空包,導(dǎo)致斷鏈。



      技術(shù)實現(xiàn)要素:

      為克服相關(guān)技術(shù)中存在的問題,本公開提供一種發(fā)包方法、裝置、藍(lán)牙低能耗從設(shè)備及計算機可讀存儲介質(zhì)。

      根據(jù)本公開實施例的第一方面,提供一種發(fā)包方法,包括:

      按照發(fā)包間隔向藍(lán)牙低能耗ble主設(shè)備發(fā)送測試包,若每次確定所述ble主設(shè)備未接收到所述測試包,則對計數(shù)值累加一;

      若所述計數(shù)值達(dá)到預(yù)設(shè)數(shù)值,則連續(xù)向所述ble主設(shè)備發(fā)送多個測試包。

      在一個實施例中,所述若所述計數(shù)值達(dá)到預(yù)設(shè)數(shù)值,則連續(xù)向所述ble主設(shè)備發(fā)送多個測試包,包括:

      若連接超時時長與所述發(fā)包間隔的比值為整數(shù)且所述計數(shù)值達(dá)到所述比值減一,則連續(xù)向所述ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包,或者將所述發(fā)包間隔縮短第一預(yù)設(shè)時長,并根據(jù)縮短后的發(fā)包間隔連續(xù)向所述ble主設(shè)備發(fā)送所述第一預(yù)設(shè)數(shù)值個測試包,其中,所述第一預(yù)設(shè)數(shù)值為小于等于連接延時次數(shù)的正整數(shù),所述第一預(yù)設(shè)時長等于連接間隔時長與所述第一預(yù)設(shè)數(shù)值之積。

      在一個實施例中,所述若所述計數(shù)值達(dá)到預(yù)設(shè)數(shù)值,則連續(xù)向所述ble主設(shè)備發(fā)送多個測試包,包括:

      若所述連接超時時長與所述發(fā)包間隔的比值不是整數(shù)且所述計數(shù)值達(dá)到所述比值的整數(shù)部分,則連續(xù)向所述ble主設(shè)備發(fā)送第二預(yù)設(shè)數(shù)值個測試包,其中,所述第二預(yù)設(shè)數(shù)值小于等于第二預(yù)設(shè)時長與所述連接間隔時長之商的整數(shù)值,所述第二預(yù)設(shè)時長等于所述連接超時時長與第三預(yù)設(shè)時長之差,所述第三預(yù)設(shè)時長等于所述比值的整數(shù)部分與所述發(fā)包間隔之積。

      在一個實施例中,所述方法還包括:

      若確定所述ble主設(shè)備接收到所述測試包,則將所述計數(shù)值設(shè)置為零。

      在一個實施例中,所述方法還包括:

      在所述連續(xù)向所述ble主設(shè)備發(fā)送所述第一預(yù)設(shè)數(shù)值個測試包之后,若確認(rèn)所述ble主設(shè)備未接收到一個所述測試包,則將所述計數(shù)值設(shè)置為零。

      在一個實施例中,所述方法還包括:

      在所述連續(xù)向所述ble主設(shè)備發(fā)送所述第二預(yù)設(shè)數(shù)值個測試包之后,若確認(rèn)所述ble主設(shè)備未接收到一個所述測試包,則將所述計數(shù)值設(shè)置為零。

      在一個實施例中,所述方法還包括:

      在所述按照發(fā)包間隔向ble主設(shè)備發(fā)測試包之前,獲取連接超時時長、連接延時次數(shù)和連接間隔時長;

      其中,所述發(fā)包間隔根據(jù)所述連接間隔時長和所述連接延時次數(shù)確定。

      根據(jù)本公開實施例的第二方面,提供一種發(fā)包裝置,包括:

      發(fā)送累加模塊,被配置為按照發(fā)包間隔向藍(lán)牙低能耗ble主設(shè)備發(fā)送測試包,若每次確定所述ble主設(shè)備未接收到所述測試包,則對計數(shù)值累加一;

      發(fā)送模塊,被配置為若所述發(fā)送累加模塊累加后的所述計數(shù)值達(dá)到預(yù)設(shè)數(shù)值,則連續(xù)向所述ble主設(shè)備發(fā)送多個測試包。

      在一個實施例中,所述發(fā)送模塊,被配置為若連接超時時長與所述發(fā)包間隔的比值為整數(shù)且所述計數(shù)值達(dá)到所述比值減一,則連續(xù)向所述ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包,或者將所述發(fā)包間隔縮短第一預(yù)設(shè)時長,并根據(jù)縮短后的發(fā)包間隔連續(xù)向所述ble主設(shè)備發(fā)送所述第一預(yù)設(shè)數(shù)值個測試包,其中,所述第一預(yù)設(shè)數(shù)值為小于等于連接延時次數(shù)的正整數(shù),所述第一預(yù)設(shè)時長等于連接間隔時長與所述第一預(yù)設(shè)數(shù)值之積。

      在一個實施例中,所述發(fā)送模塊,被配置為若所述連接超時時長與所述發(fā)包間隔的比值不是整數(shù)且所述計數(shù)值達(dá)到所述比值的整數(shù)部分,則連續(xù)向所述ble主設(shè)備發(fā)送第二預(yù)設(shè)數(shù)值個測試包,其中,所述第二預(yù)設(shè)數(shù)值小于等于第二預(yù)設(shè)時長與所述連接間隔時長之商的整數(shù)值,所述第二預(yù)設(shè)時長等于所述連接超時時長與第三預(yù)設(shè)時長之差,所述第三預(yù)設(shè)時長等于所述比值的整數(shù)部分與所述發(fā)包間隔之積。

      在一個實施例中,所述裝置還包括:

      第一設(shè)置模塊,被配置為若發(fā)送累加模塊確定所述ble主設(shè)備接收到所述測試包,則將所述計數(shù)值設(shè)置為零。

      在一個實施例中,所述裝置還包括:

      第二設(shè)置模塊,被配置為在所述發(fā)送模塊連續(xù)向所述ble主設(shè)備發(fā)送所述第一預(yù)設(shè)數(shù)值個測試包之后,若確認(rèn)所述ble主設(shè)備未接收到一個所述測試包,則將所述計數(shù)值設(shè)置為零。

      在一個實施例中,所述裝置還包括:

      第三設(shè)置模塊,被配置為在所述發(fā)送模塊連續(xù)向所述ble主設(shè)備發(fā)送所述第二預(yù)設(shè)數(shù)值個測試包之后,若確認(rèn)所述ble主設(shè)備未接收到一個所述測試包,則將所述計數(shù)值設(shè)置為零。

      在一個實施例中,所述裝置還包括:

      獲取模塊,被配置為在所述發(fā)送累加模塊按照發(fā)包間隔向ble主設(shè)備發(fā)測試包之前,獲取連接超時時長、連接延時次數(shù)和連接間隔時長;

      其中,所述發(fā)包間隔根據(jù)所述連接間隔時長和所述連接延時次數(shù)確定。

      根據(jù)本公開實施例的第三方面,提供一種藍(lán)牙低能耗從設(shè)備,包括:

      處理器;

      用于存儲處理器可執(zhí)行指令的存儲器;

      其中,所述處理器被配置為:

      按照發(fā)包間隔向藍(lán)牙低能耗ble主設(shè)備發(fā)送測試包,若每次確定所述ble主設(shè)備未接收到所述測試包,則對計數(shù)值累加一;

      若所述計數(shù)值達(dá)到預(yù)設(shè)數(shù)值,則連續(xù)向所述ble主設(shè)備發(fā)送多個測試包。

      根據(jù)本公開實施例的第四方面,提供一種計算機可讀存儲介質(zhì),其上存儲有計算機程序,該程序被處理器執(zhí)行時實現(xiàn)上述發(fā)包方法的步驟。

      本公開的實施例提供的技術(shù)方案可以包括以下有益效果:

      通過按照發(fā)包間隔向ble主設(shè)備發(fā)送測試包,并在每次確定ble主設(shè)備未接收到測試包時,對計數(shù)值累加一,然后當(dāng)計數(shù)值達(dá)到預(yù)設(shè)數(shù)值,通過連續(xù)向ble主設(shè)備發(fā)送多個測試包來提高ble主設(shè)備接收到測試包的概率,從而提高ble主設(shè)備與ble從設(shè)備維持連接的概率,降低ble主設(shè)備與ble從設(shè)備發(fā)生斷鏈的概率。

      在連接超時時長與發(fā)包間隔的比值為整數(shù)且計數(shù)值達(dá)到比值減一時,連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包,或者將發(fā)包間隔縮短第一預(yù)設(shè)時長,并根據(jù)縮短后的發(fā)包間隔連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包,來提高ble主設(shè)備接收到測試包的概率,從而提高ble主設(shè)備與ble從設(shè)備維持連接的概率,降低ble主設(shè)備與ble從設(shè)備發(fā)生斷鏈的概率。

      在連接超時時長與發(fā)包間隔的比值不是整數(shù)且計數(shù)值達(dá)到比值的整數(shù)部時,通過連續(xù)向ble主設(shè)備發(fā)送第二預(yù)設(shè)數(shù)值個測試包來提高ble主設(shè)備接收到測試包的概率,從而提高ble主設(shè)備與ble從設(shè)備維持連接的概率,降低ble主設(shè)備與ble從設(shè)備發(fā)生斷鏈的概率。

      通過在確定ble主設(shè)備接收到測試包時,將計數(shù)值設(shè)置為零,為后續(xù)重新統(tǒng)計計數(shù)值做好準(zhǔn)備。

      通過在連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包之后,若確認(rèn)ble主設(shè)備未接收到一個測試包,則將計數(shù)值設(shè)置為零,從而為后續(xù)重新統(tǒng)計計數(shù)值做好準(zhǔn)備。

      通過在連續(xù)向ble主設(shè)備發(fā)送第二預(yù)設(shè)數(shù)值個測試包之后,若確認(rèn)ble主設(shè)備未接收到一個測試包,則將計數(shù)值設(shè)置為零,從而為后續(xù)重新統(tǒng)計計數(shù)值做好準(zhǔn)備。

      通過獲取連接超時時長、連接延時次數(shù)和連接間隔時長,來確定發(fā)包間隔,從而為后續(xù)發(fā)送測試包提供條件。

      應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本公開。

      附圖說明

      此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本發(fā)明的實施例,并與說明書一起用于解釋本發(fā)明的原理。

      圖1是根據(jù)一示例性實施例示出的一種發(fā)包方法的流程圖。

      圖2是根據(jù)一示例性實施例示出的另一種發(fā)包方法的流程圖。

      圖3是根據(jù)一示例性實施例示出的另一種發(fā)包方法的流程圖。

      圖4是根據(jù)一示例性實施例示出的一種發(fā)包方法的場景圖。

      圖5是根據(jù)一示例性實施例示出的一種發(fā)包裝置的框圖。

      圖6是根據(jù)一示例性實施例示出的另一種發(fā)包裝置的框圖。

      圖7是根據(jù)一示例性實施例示出的另一種發(fā)包裝置的框圖。

      圖8是根據(jù)一示例性實施例示出的另一種發(fā)包裝置的框圖。

      圖9是根據(jù)一示例性實施例示出的另一種發(fā)包裝置的框圖。

      圖10是根據(jù)一示例性實施例示出的一種適用于發(fā)包裝置的框圖。

      具體實施方式

      這里將詳細(xì)地對示例性實施例進(jìn)行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本發(fā)明相一致的所有實施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。

      圖1是根據(jù)一示例性實施例示出的一種發(fā)包方法的流程圖,如圖1所示,該發(fā)包方法可應(yīng)用于ble從設(shè)備上,該發(fā)包方法包括以下步驟s101-s102:

      在步驟s101中,按照發(fā)包間隔向ble主設(shè)備發(fā)送測試包,若每次確定ble主設(shè)備未接收到測試包,則對計數(shù)值累加一。

      在該實施例中,在ble從設(shè)備和ble主設(shè)備建立連接之后,ble從設(shè)備可以按照發(fā)包間隔向ble主設(shè)備發(fā)送測試包。其中,ble主設(shè)備可以包括但不局限于智能電視等智能終端,ble從設(shè)備可以包括但不局限于ble遙控器。

      其中,發(fā)包間隔可以根據(jù)連接間隔時長(interval)和連接延時次數(shù)(conn_latency,簡稱為latancy)確定。上述interval是連接間隔最小值(conn_interval_min)和連接間隔最大值(conn_interval_max)的簡稱,由于該實施例中將conn_interval_min和conn_interval_max定義為同一個值,為了描述方便,將二者簡稱為interval。其中,測試包可以為空包,也可以為數(shù)據(jù)包。

      ble從設(shè)備在每次向ble主設(shè)備發(fā)送測試包之后,若確定ble主設(shè)備未接收到該測試包,則對計數(shù)值累加一,若確定ble主設(shè)備接收到該測試包,則將該計數(shù)值設(shè)置為零。

      其中,若ble從設(shè)備未接收到該測試包的回包信息或者接收到該測試包的回包信息但該回包信息表示ble主設(shè)備未接收到該測試包,則可以確定ble主設(shè)備未接收到該測試包。

      在步驟s102中,若計數(shù)值達(dá)到預(yù)設(shè)數(shù)值,則連續(xù)向ble主設(shè)備發(fā)送多個測試包。

      其中,上述預(yù)設(shè)數(shù)值和連接超時時長(supervision_timeout,簡稱為timeout)與發(fā)包間隔的比值有關(guān)系,若該比值是整數(shù),則該預(yù)設(shè)數(shù)值可以為該比值減一,若該比值不是整數(shù),則該預(yù)設(shè)數(shù)值可以為該比值的整數(shù)部分。

      在該實施例中,在計數(shù)值達(dá)到預(yù)設(shè)數(shù)值時,通過連續(xù)向ble主設(shè)備發(fā)送多個測試包來提高ble主設(shè)備接收到測試包的概率,以降低ble主設(shè)備與ble從設(shè)備發(fā)生斷鏈的概率。

      上述發(fā)包方法實施例,通過按照發(fā)包間隔向ble主設(shè)備發(fā)送測試包,并在每次確定ble主設(shè)備未接收到測試包時,對計數(shù)值累加一,然后當(dāng)計數(shù)值達(dá)到預(yù)設(shè)數(shù)值,通過連續(xù)向ble主設(shè)備發(fā)送多個測試包來提高ble主設(shè)備接收到測試包的概率,從而提高ble主設(shè)備與ble從設(shè)備維持連接的概率,降低ble主設(shè)備與ble從設(shè)備發(fā)生斷鏈的概率。

      圖2是根據(jù)一示例性實施例示出的另一種發(fā)包方法的流程圖,如圖2所示,該發(fā)包方法可應(yīng)用于ble從設(shè)備上,該發(fā)包方法包括以下步驟:

      在步驟s201中,獲取連接超時時長、連接延時次數(shù)和連接間隔時長,并根據(jù)連接間隔時長和連接延時次數(shù)確定發(fā)包間隔。

      在該實施中,ble從設(shè)備可以向ble主設(shè)備發(fā)送請求,以請求ble主設(shè)備發(fā)送連接超時時長、連接延時次數(shù)和連接間隔時長,也可以接收ble主設(shè)備推送的連接超時時長、連接延時次數(shù)和連接間隔時長。

      其中,發(fā)包間隔可以為interval*(latancy+1),由于協(xié)議規(guī)定,latancy的最小值為0,故發(fā)包間隔可以為interval*(latancy+1),但若將latancy的最小值設(shè)置為1,則發(fā)包間隔可以為interval*latancy。

      在步驟s202中,按照發(fā)包間隔向藍(lán)牙低能耗ble主設(shè)備發(fā)送測試包,若每次確定ble主設(shè)備未接收到測試包,則對計數(shù)值累加一。

      ble從設(shè)備在每次向ble主設(shè)備發(fā)送測試包之后,若確定ble主設(shè)備未接收到該測試包,則對計數(shù)值累加一,若確定ble主設(shè)備接收到該測試包,則將該計數(shù)值設(shè)置為零。

      在步驟s203中,若連接超時時長與發(fā)包間隔的比值為整數(shù)且計數(shù)值達(dá)到比值減一,則連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包,或者將發(fā)包間隔縮短第一預(yù)設(shè)時長,并根據(jù)縮短后的發(fā)包間隔連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包。

      假設(shè)第一預(yù)設(shè)數(shù)值為n,則0<n<=latancy+1,且n為整數(shù),第一預(yù)設(shè)時長為n*interval。

      在該實施例中,若連接超時時長與發(fā)包間隔的比值是整數(shù),則ble從設(shè)備例如ble遙控器在每次發(fā)測試包例如空包給ble主設(shè)備時,判斷一下ble主設(shè)備的回包情況,如果ble主設(shè)備收到了該測試包,則將計數(shù)值設(shè)置為零,如果ble主設(shè)備沒有收到該測試包,則將計數(shù)值(初始值為0)累加一。

      當(dāng)計數(shù)值為上述比值減一時,ble遙控器可以連續(xù)向ble主設(shè)備發(fā)送n個測試包例如空包,也可以將發(fā)包間隔縮短第一預(yù)設(shè)時長,并根據(jù)縮短后的發(fā)包間隔連續(xù)向ble主設(shè)備發(fā)送n個測試包,也即將最后一次發(fā)送測試包的時間點提前n*interval的時長,然后開始連續(xù)向ble主設(shè)備發(fā)送n個測試包。

      在該實施例中,在連續(xù)向ble主設(shè)備發(fā)送n個測試包之后,若確認(rèn)ble主設(shè)備未接收到一個測試包,則可以將計數(shù)值設(shè)置為零,等待達(dá)到連接超時時長,ble主設(shè)備可以和ble從設(shè)備斷鏈。

      上述實施例,在連接超時時長與發(fā)包間隔的比值為整數(shù)且計數(shù)值達(dá)到比值減一時,連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包,或者將發(fā)包間隔縮短第一預(yù)設(shè)時長,并根據(jù)縮短后的發(fā)包間隔連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包,來提高ble主設(shè)備接收到測試包的概率,從而提高ble主設(shè)備與ble從設(shè)備維持連接的概率,降低ble主設(shè)備與ble從設(shè)備發(fā)生斷鏈的概率。

      圖3是根據(jù)一示例性實施例示出的另一種發(fā)包方法的流程圖,如圖3所示,該發(fā)包方法可應(yīng)用于ble從設(shè)備上,該發(fā)包方法包括以下步驟:

      在步驟s301中,獲取連接超時時長、連接延時次數(shù)和連接間隔時長,并根據(jù)連接間隔時長和連接延時次數(shù)確定發(fā)包間隔。

      在該實施中,ble從設(shè)備可以向ble主設(shè)備發(fā)送請求,以請求ble主設(shè)備發(fā)送連接超時時長、連接延時次數(shù)和連接間隔時長,也可以接收ble主設(shè)備推送的連接超時時長、連接延時次數(shù)和連接間隔時長。

      其中,發(fā)包間隔可以為interval*(latancy+1),由于協(xié)議規(guī)定,latancy的最小值為0,故發(fā)包間隔可以為interval*(latancy+1),但若將latancy的最小值設(shè)置為1,則發(fā)包間隔可以為interval*latancy。

      在步驟s302中,按照發(fā)包間隔向藍(lán)牙低能耗ble主設(shè)備發(fā)送測試包,若每次確定ble主設(shè)備未接收到測試包,則對計數(shù)值累加一。

      ble從設(shè)備在每次向ble主設(shè)備發(fā)送測試包之后,若確定ble主設(shè)備未接收到該測試包,則對計數(shù)值累加一,若確定ble主設(shè)備接收到該測試包,則將該計數(shù)值設(shè)置為零。

      在步驟s303中,若連接超時時長與發(fā)包間隔的比值不是整數(shù)且計數(shù)值達(dá)到比值的整數(shù)部分,則連續(xù)向ble主設(shè)備發(fā)送第二預(yù)設(shè)數(shù)值個測試包。

      其中,第二預(yù)設(shè)數(shù)值小于等于第二預(yù)設(shè)時長與連接間隔時長之商的整數(shù)值,第二預(yù)設(shè)時長等于連接超時時長與第三預(yù)設(shè)時長之差,第三預(yù)設(shè)時長等于比值的整數(shù)部分與發(fā)包間隔之積。

      假設(shè)第二預(yù)設(shè)數(shù)值為k,則0<k<=((timeout-m*(interval*(latancy+1)))/interval的整數(shù)值),其中,第二預(yù)設(shè)時長為(timeout-m*(interval*(latancy+1))),第三預(yù)設(shè)時長為m*(interval*(latancy+1)),m表示上述比值的整數(shù)部分。

      在該實施例中,若連接超時時長與發(fā)包間隔的比值不是整數(shù)且該比值達(dá)到m時,ble從設(shè)備例如ble遙控器連續(xù)向ble主設(shè)備發(fā)送k個測試包。

      在該實施例中,在連續(xù)向ble主設(shè)備發(fā)送k個測試包之后,若確認(rèn)ble主設(shè)備未接收到一個測試包,則可以將計數(shù)值設(shè)置為零,等待達(dá)到連接超時時長,ble主設(shè)備可以和ble從設(shè)備斷鏈。

      上述實施例,在連接超時時長與發(fā)包間隔的比值不是整數(shù)且計數(shù)值達(dá)到比值的整數(shù)部時,通過連續(xù)向ble主設(shè)備發(fā)送第二預(yù)設(shè)數(shù)值個測試包來提高ble主設(shè)備接收到測試包的概率,從而提高ble主設(shè)備與ble從設(shè)備維持連接的概率,降低ble主設(shè)備與ble從設(shè)備發(fā)生斷鏈的概率。

      下面結(jié)合圖4對本公開進(jìn)行示例性說明,如圖4所示,ble遙控器41與智能電視42建立連接后,ble遙控器41從智能電視42獲取到連接超時時長為16秒,連接延時次數(shù)為99,連接間隔時長為30毫秒,則ble遙控器41以3秒為發(fā)包間隔向智能電視42發(fā)送空包,若每次確定智能電視42未接收到對應(yīng)的空包,則對計數(shù)值累加一,當(dāng)計算值達(dá)到預(yù)設(shè)數(shù)值例如為5,則ble遙控器41可以向智能電視42連續(xù)發(fā)送3個空包,以提高智能電視42接收到空包的概率,從而可以減少斷鏈的發(fā)生。

      與前述發(fā)包方法實施例相對應(yīng),本公開還提供了發(fā)包裝置實施例。

      圖5是根據(jù)一示例性實施例示出的一種發(fā)包裝置的框圖,如圖5所示,該發(fā)包裝置包括:發(fā)送累加模塊51和發(fā)送模塊52。

      發(fā)送累加模塊51被配置為按照發(fā)包間隔向藍(lán)牙低能耗ble主設(shè)備發(fā)送測試包,若每次確定ble主設(shè)備未接收到測試包,則對計數(shù)值累加一。

      在該實施例中,在ble從設(shè)備和ble主設(shè)備建立連接之后,ble從設(shè)備可以按照發(fā)包間隔向ble主設(shè)備發(fā)送測試包。其中,ble主設(shè)備可以包括但不局限于智能電視等智能終端,ble從設(shè)備可以包括但不局限于ble遙控器。

      其中,發(fā)包間隔可以根據(jù)連接間隔時長(interval)和連接延時次數(shù)(conn_latency,簡稱為latancy)確定。上述interval是連接間隔最小值(conn_interval_min)和連接間隔最大值(conn_interval_max)的簡稱,由于該實施例中將conn_interval_min和conn_interval_max定義為同一個值,為了描述方便,將二者簡稱為interval。其中,測試包可以為空包,也可以為數(shù)據(jù)包。

      ble從設(shè)備在每次向ble主設(shè)備發(fā)送測試包之后,若確定ble主設(shè)備未接收到該測試包,則對計數(shù)值累加一,若確定ble主設(shè)備接收到該測試包,則將該計數(shù)值設(shè)置為零。

      其中,若ble從設(shè)備未接收到該測試包的回包信息或者接收到該測試包的回包信息但該回包信息表示ble主設(shè)備未接收到該測試包,則可以確定ble主設(shè)備未接收到該測試包。

      發(fā)送模塊52被配置為若發(fā)送累加模塊51累加后的計數(shù)值達(dá)到預(yù)設(shè)數(shù)值,則連續(xù)向ble主設(shè)備發(fā)送多個測試包。

      其中,上述預(yù)設(shè)數(shù)值和連接超時時長(supervision_timeout,簡稱為timeout)與發(fā)包間隔的比值有關(guān)系,若該比值是整數(shù),則該預(yù)設(shè)數(shù)值可以為該比值減一,若該比值不是整數(shù),則該預(yù)設(shè)數(shù)值可以為該比值的整數(shù)部分。

      在該實施例中,在計數(shù)值達(dá)到預(yù)設(shè)數(shù)值時,通過連續(xù)向ble主設(shè)備發(fā)送多個測試包來提高ble主設(shè)備接收到測試包的概率,以降低ble主設(shè)備與ble從設(shè)備發(fā)生斷鏈的概率。

      在一個實施例中,發(fā)送模塊52可以被配置為若連接超時時長與發(fā)包間隔的比值為整數(shù)且計數(shù)值達(dá)到比值減一,則連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包,或者將發(fā)包間隔縮短第一預(yù)設(shè)時長,并根據(jù)縮短后的發(fā)包間隔連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包,其中,第一預(yù)設(shè)數(shù)值為小于等于連接延時次數(shù)的正整數(shù),第一預(yù)設(shè)時長等于連接間隔時長與第一預(yù)設(shè)數(shù)值之積。

      假設(shè)第一預(yù)設(shè)數(shù)值為n,則0<n<=latancy+1,且n為整數(shù),第一預(yù)設(shè)時長為n*interval。

      在該實施例中,若連接超時時長與發(fā)包間隔的比值是整數(shù),則ble從設(shè)備例如ble遙控器在每次發(fā)測試包例如空包給ble主設(shè)備時,判斷一下ble主設(shè)備的回包情況,如果ble主設(shè)備收到了該測試包,則將計數(shù)值設(shè)置為零,如果ble主設(shè)備沒有收到該測試包,則將計數(shù)值(初始值為0)累加一。

      當(dāng)計數(shù)值為上述比值減一時,ble遙控器可以連續(xù)向ble主設(shè)備發(fā)送n個測試包例如空包,也可以將發(fā)包間隔縮短第一預(yù)設(shè)時長,并根據(jù)縮短后的發(fā)包間隔連續(xù)向ble主設(shè)備發(fā)送n個測試包,也即將最后一次發(fā)送測試包的時間點提前n*interval的時長,然后開始連續(xù)向ble主設(shè)備發(fā)送n個測試包。

      在另一個實施例中,發(fā)送模塊52可以被配置為若連接超時時長與發(fā)包間隔的比值不是整數(shù)且計數(shù)值達(dá)到比值的整數(shù)部分,則連續(xù)向ble主設(shè)備發(fā)送第二預(yù)設(shè)數(shù)值個測試包,其中,第二預(yù)設(shè)數(shù)值小于等于第二預(yù)設(shè)時長與連接間隔時長之商的整數(shù)值,第二預(yù)設(shè)時長等于連接超時時長與第三預(yù)設(shè)時長之差,第三預(yù)設(shè)時長等于比值的整數(shù)部分與發(fā)包間隔之積。

      其中,第二預(yù)設(shè)數(shù)值小于等于第二預(yù)設(shè)時長與連接間隔時長之商的整數(shù)值,第二預(yù)設(shè)時長等于連接超時時長與第三預(yù)設(shè)時長之差,第三預(yù)設(shè)時長等于比值的整數(shù)部分與發(fā)包間隔之積。

      假設(shè)第二預(yù)設(shè)數(shù)值為k,則0<k<=((timeout-m*(interval*(latancy+1)))/interval的整數(shù)值),其中,第二預(yù)設(shè)時長為(timeout-m*(interval*(latancy+1))),第三預(yù)設(shè)時長為m*(interval*(latancy+1)),m表示上述比值的整數(shù)部分。

      上述發(fā)包裝置實施例,通過按照發(fā)包間隔向ble主設(shè)備發(fā)送測試包,并在每次確定ble主設(shè)備未接收到測試包時,對計數(shù)值累加一,然后當(dāng)計數(shù)值達(dá)到預(yù)設(shè)數(shù)值,通過連續(xù)向ble主設(shè)備發(fā)送多個測試包來提高ble主設(shè)備接收到測試包的概率,從而提高ble主設(shè)備與ble從設(shè)備維持連接的概率,降低ble主設(shè)備與ble從設(shè)備發(fā)生斷鏈的概率。

      圖6是根據(jù)一示例性實施例示出的另一種發(fā)包裝置的框圖,如圖6所示,在上述圖5所示實施例的基礎(chǔ)上,該裝置還可包括:第一設(shè)置模塊53。

      第一設(shè)置模塊53被配置為若發(fā)送累加模塊51確定ble主設(shè)備接收到測試包,則將計數(shù)值設(shè)置為零。

      ble從設(shè)備在每次向ble主設(shè)備發(fā)送測試包之后,若確定ble主設(shè)備接收到該測試包,則將該計數(shù)值設(shè)置為零。

      上述實施例,通過在確定ble主設(shè)備接收到測試包時,將計數(shù)值設(shè)置為零,為后續(xù)重新統(tǒng)計計數(shù)值做好準(zhǔn)備。

      圖7是根據(jù)一示例性實施例示出的另一種發(fā)包裝置的框圖,如圖7所示,在上述圖5所示實施例的基礎(chǔ)上,該裝置還可以包括:第二設(shè)置模塊54。

      第二設(shè)置模塊54被配置為在發(fā)送模塊52連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包之后,若確認(rèn)ble主設(shè)備未接收到一個測試包,則將計數(shù)值設(shè)置為零。

      上述實施例,通過在連續(xù)向ble主設(shè)備發(fā)送第一預(yù)設(shè)數(shù)值個測試包之后,若確認(rèn)ble主設(shè)備未接收到一個測試包,則將計數(shù)值設(shè)置為零,從而為后續(xù)重新統(tǒng)計計數(shù)值做好準(zhǔn)備。

      圖8是根據(jù)一示例性實施例示出的另一種發(fā)包裝置的框圖,如圖8所示,在上述圖5所示實施例的基礎(chǔ)上,該裝置還可以包括:第三設(shè)置模塊55。

      第三設(shè)置模塊55被配置為在發(fā)送模塊52連續(xù)向ble主設(shè)備發(fā)送第二預(yù)設(shè)數(shù)值個測試包之后,若確認(rèn)ble主設(shè)備未接收到一個測試包,則將計數(shù)值設(shè)置為零。

      上述實施例,通過在連續(xù)向ble主設(shè)備發(fā)送第二預(yù)設(shè)數(shù)值個測試包之后,若確認(rèn)ble主設(shè)備未接收到一個測試包,則將計數(shù)值設(shè)置為零,從而為后續(xù)重新統(tǒng)計計數(shù)值做好準(zhǔn)備。

      圖9是根據(jù)一示例性實施例示出的另一種發(fā)包裝置的框圖,如圖9所示,在上述圖5所示實施例的基礎(chǔ)上,該裝置還可以包括:獲取模塊56。

      獲取模塊56被配置為在發(fā)送累加模塊51按照發(fā)包間隔向ble主設(shè)備發(fā)測試包之前,獲取連接超時時長、連接延時次數(shù)和連接間隔時長。

      其中,發(fā)包間隔根據(jù)連接間隔時長和連接延時次數(shù)確定。

      在該實施中,ble從設(shè)備可以向ble主設(shè)備發(fā)送請求,以請求ble主設(shè)備發(fā)送連接超時時長、連接延時次數(shù)和連接間隔時長,也可以接收ble主設(shè)備推送的連接超時時長、連接延時次數(shù)和連接間隔時長。

      其中,發(fā)包間隔可以為interval*(latancy+1),由于協(xié)議規(guī)定,latancy的最小值為0,故發(fā)包間隔可以為interval*(latancy+1),但若將latancy的最小值設(shè)置為1,則發(fā)包間隔可以為interval*latancy。

      上述實施例,通過獲取連接超時時長、連接延時次數(shù)和連接間隔時長,來確定發(fā)包間隔,從而為后續(xù)發(fā)送測試包提供條件。

      關(guān)于上述實施例中的裝置,其中各個模塊、子模塊執(zhí)行操作的具體方式已經(jīng)在有關(guān)該方法的實施例中進(jìn)行了詳細(xì)描述,此處將不做詳細(xì)闡述說明。

      圖10是根據(jù)一示例性實施例示出的一種適用于發(fā)包裝置的框圖。例如,裝置1000可以是移動電話,計算機,數(shù)字廣播終端,消息收發(fā)設(shè)備,游戲控制臺,平板設(shè)備,醫(yī)療設(shè)備,健身設(shè)備,個人數(shù)字助理,遙控器等。

      參照圖10,裝置1000可以包括以下一個或多個組件:處理組件1002,存儲器1004,電源組件1006,多媒體組件1008,音頻組件1010,輸入/輸出(i/o)的接口1012,傳感器組件1014,以及通信組件1016。

      處理組件1002通??刂蒲b置1000的整體操作,諸如與顯示,電話呼叫,數(shù)據(jù)通信,相機操作和記錄操作相關(guān)聯(lián)的操作。處理元件1002可以包括一個或多個處理器1020來執(zhí)行指令,以完成上述的方法的全部或部分步驟。此外,處理組件1002可以包括一個或多個模塊,便于處理組件1002和其他組件之間的交互。例如,處理部件1002可以包括多媒體模塊,以方便多媒體組件1008和處理組件1002之間的交互。

      存儲器1004被配置為存儲各種類型的數(shù)據(jù)以支持在設(shè)備1000的操作。這些數(shù)據(jù)的示例包括用于在裝置1000上操作的任何應(yīng)用程序或方法的指令,聯(lián)系人數(shù)據(jù),電話簿數(shù)據(jù),消息,圖片,視頻等。存儲器1004可以由任何類型的易失性或非易失性存儲設(shè)備或者它們的組合實現(xiàn),如靜態(tài)隨機存取存儲器(sram),電可擦除可編程只讀存儲器(eeprom),可擦除可編程只讀存儲器(eprom),可編程只讀存儲器(prom),只讀存儲器(rom),磁存儲器,快閃存儲器,磁盤或光盤。

      電源組件1006為裝置1000的各種組件提供電力。電源組件1006可以包括電源管理系統(tǒng),一個或多個電源,及其他與為裝置1000生成、管理和分配電力相關(guān)聯(lián)的組件。

      多媒體組件1008包括在所述裝置1000和用戶之間的提供一個輸出接口的屏幕。在一些實施例中,屏幕可以包括液晶顯示器(lcd)和觸摸面板(tp)。如果屏幕包括觸摸面板,屏幕可以被實現(xiàn)為觸摸屏,以接收來自用戶的輸入信號。觸摸面板包括一個或多個觸摸傳感器以感測觸摸、滑動和觸摸面板上的手勢。所述觸摸傳感器可以不僅感測觸摸或滑動動作的邊界,而且還檢測與所述觸摸或滑動操作相關(guān)的持續(xù)時間和壓力。在一些實施例中,多媒體組件1008包括一個前置攝像頭和/或后置攝像頭。當(dāng)設(shè)備1000處于操作模式,如拍攝模式或視頻模式時,前置攝像頭和/或后置攝像頭可以接收外部的多媒體數(shù)據(jù)。每個前置攝像頭和后置攝像頭可以是一個固定的光學(xué)透鏡系統(tǒng)或具有焦距和光學(xué)變焦能力。

      音頻組件1010被配置為輸出和/或輸入音頻信號。例如,音頻組件1010包括一個麥克風(fēng)(mic),當(dāng)裝置1000處于操作模式,如呼叫模式、記錄模式和語音識別模式時,麥克風(fēng)被配置為接收外部音頻信號。所接收的音頻信號可以被進(jìn)一步存儲在存儲器1004或經(jīng)由通信組件1016發(fā)送。在一些實施例中,音頻組件1010還包括一個揚聲器,用于輸出音頻信號。

      i/o接口1012為處理組件1002和外圍接口模塊之間提供接口,上述外圍接口模塊可以是鍵盤,點擊輪,按鈕等。這些按鈕可包括但不限于:主頁按鈕、音量按鈕、啟動按鈕和鎖定按鈕。

      傳感器組件1014包括一個或多個傳感器,用于為裝置1000提供各個方面的狀態(tài)評估。例如,傳感器組件1014可以檢測到設(shè)備1000的打開/關(guān)閉狀態(tài),組件的相對定位,例如所述組件為裝置1000的顯示器和小鍵盤,傳感器組件1014還可以檢測裝置1000或裝置1000一個組件的位置改變,用戶與裝置1000接觸的存在或不存在,裝置1000方位或加速/減速和裝置1000的溫度變化。傳感器組件1014可以包括接近傳感器,被配置用來在沒有任何的物理接觸時檢測附近物體的存在。傳感器組件1014還可以包括光傳感器,如cmos或ccd圖像傳感器,用于在成像應(yīng)用中使用。在一些實施例中,該傳感器組件1014還可以包括加速度傳感器,陀螺儀傳感器,磁傳感器,壓力傳感器或溫度傳感器。

      通信組件1016被配置為便于裝置1000和其他設(shè)備之間有線或無線方式的通信。裝置1000可以接入基于通信標(biāo)準(zhǔn)的無線網(wǎng)絡(luò),如wifi,2g或3g,或它們的組合。在一個示例性實施例中,通信部件1016經(jīng)由廣播信道接收來自外部廣播管理系統(tǒng)的廣播信號或廣播相關(guān)信息。在一個示例性實施例中,所述通信部件1016還包括近場通信(nfc)模塊,以促進(jìn)短程通信。例如,在nfc模塊可基于射頻識別(rfid)技術(shù),紅外數(shù)據(jù)協(xié)會(irda)技術(shù),超寬帶(uwb)技術(shù),藍(lán)牙(bt)技術(shù)和其他技術(shù)來實現(xiàn)。

      在示例性實施例中,裝置1000可以被一個或多個應(yīng)用專用集成電路(asic)、數(shù)字信號處理器(dsp)、數(shù)字信號處理設(shè)備(dspd)、可編程邏輯器件(pld)、現(xiàn)場可編程門陣列(fpga)、控制器、微控制器、微處理器或其他電子元件實現(xiàn),用于執(zhí)行上述方法。

      在示例性實施例中,還提供了一種包括指令的非臨時性計算機可讀存儲介質(zhì),例如包括指令的存儲器1004,上述指令可由裝置1000的處理器1020執(zhí)行以完成上述方法。例如,所述非臨時性計算機可讀存儲介質(zhì)可以是rom、隨機存取存儲器(ram)、cd-rom、磁帶、軟盤和光數(shù)據(jù)存儲設(shè)備等。

      本領(lǐng)域技術(shù)人員在考慮說明書及實踐這里公開的公開后,將容易想到本公開的其它實施方案。本申請旨在涵蓋本公開的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本公開的一般性原理并包括本公開未公開的本技術(shù)領(lǐng)域中的公知常識或慣用技術(shù)手段。說明書和實施例僅被視為示例性的,本公開的真正范圍和精神由下面的權(quán)利要求指出。

      應(yīng)當(dāng)理解的是,本公開并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本公開的范圍僅由所附的權(quán)利要求來限制。

      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1