藍牙設(shè)備及其通信方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信領(lǐng)域,特別涉及一種藍牙設(shè)備及其通信方法。
【背景技術(shù)】
[0002]藍牙通信方式是可變速率的通信方式,有關(guān)廣播數(shù)據(jù)包的間隔等通信參數(shù)均規(guī)定在兩個藍牙設(shè)備之間的傳輸協(xié)議里,該傳輸協(xié)議規(guī)定了廣播數(shù)據(jù)包的間隔的最大值和最小值,從藍牙設(shè)備可以聲明自己能工作的參數(shù)范圍,正常情況下在連接前主藍牙設(shè)備通過搜索(scan)的方式來獲得從藍牙設(shè)備的對應(yīng)信息,然后主藍牙設(shè)備發(fā)送連接請求(該連接請求中包含了幀間間隔(下文中詳述)等信息,由主藍牙設(shè)備自行決定),從藍牙設(shè)備應(yīng)答,此時,兩者之間便建立了藍牙連接。在主藍牙設(shè)備和從藍牙設(shè)備間進行藍牙連接之后,當從藍牙設(shè)備請求更新連接參數(shù),主藍牙設(shè)備應(yīng)答,然后主藍牙設(shè)備發(fā)送更新參數(shù)的請求,從而達成通過藍牙實現(xiàn)的兩者之間的傳輸協(xié)議。主藍牙設(shè)備和從藍牙設(shè)備之間在無數(shù)據(jù)通信時通過發(fā)送空包(NULL packet,其中,空包沒有凈荷(payload,也可稱為負載)且僅由信道訪問碼(channel access code)和包頭組成,其總長度為126bit,且空包不必確認)來維持長連接(也可以稱為維活,keep alive),在兩個藍牙設(shè)備之間的藍牙傳輸協(xié)議(該協(xié)議中設(shè)定了兩個藍牙設(shè)備之間關(guān)于數(shù)據(jù)包的發(fā)送方案)中存在一個設(shè)置值,該值控制用于維持長連接的空包的發(fā)送間隔(也可稱為維持連接的每兩個數(shù)據(jù)幀之間的幀間間隔(InterframeSpace,即,同一信道索引(channel index)中的兩個連續(xù)的包之間的時間間隔)),且在維持長連接期間,兩個藍牙設(shè)備之間發(fā)送空包的發(fā)送方案通過如下方式進行調(diào)整:即主藍牙設(shè)備發(fā)送關(guān)于調(diào)整發(fā)送方案的通知至從藍牙設(shè)備,從而使所發(fā)送的方案在兩個藍牙設(shè)備之間生效。之后如果在主機和設(shè)備之間存在數(shù)據(jù)通信,則雙方會互發(fā)數(shù)據(jù)包以進行數(shù)據(jù)通信。而如果主機和設(shè)備之間沒有數(shù)據(jù)通信,則主機會以固定間隔(100ms左右)發(fā)送空包至設(shè)備,設(shè)備可以反饋主機一個空包(通常設(shè)備在收到主機所發(fā)的空包后小于400 μ s時間內(nèi)進行反饋)表示設(shè)備在線,其中,空包內(nèi)具有鏈路控制信息(link control informat1n),通過這種方式,主機和設(shè)備之間可以在無數(shù)據(jù)通信的狀態(tài)下維持長連接。
[0003]由于現(xiàn)有技術(shù)中主機和設(shè)備之間在無數(shù)據(jù)通信且保持連接期間以固定間隔來發(fā)送空包,且空包的發(fā)送間隔較小,因此在兩個藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接時藍牙設(shè)備的功耗較大。
【發(fā)明內(nèi)容】
[0004]本發(fā)明所要解決的是現(xiàn)有技術(shù)中在藍牙設(shè)備之間無數(shù)據(jù)通信時,所提供的維護鏈接有效性的方法太過耗能的問題。
[0005]為了解決上述問題,本發(fā)明提供了一種藍牙設(shè)備之間的通信方法,其包括以下步驟:
[0006]在藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接的不同持續(xù)時間與藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接期間發(fā)送空包的不同發(fā)送方案之間預(yù)先設(shè)定對應(yīng)關(guān)系;
[0007]在藍牙設(shè)備之間停止數(shù)據(jù)通信之后保持連接期間記錄無數(shù)據(jù)通信的持續(xù)時間;
[0008]根據(jù)所記錄的持續(xù)時間對藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接期間發(fā)送空包的發(fā)送方案基于預(yù)先設(shè)定的對應(yīng)關(guān)系進行相應(yīng)的調(diào)整。
[0009]作為優(yōu)選,在對應(yīng)關(guān)系中:不同的持續(xù)時間對應(yīng)于空包的不同發(fā)送間隔,其中,持續(xù)時間越長對應(yīng)的空包發(fā)送間隔越長,發(fā)送間隔為從一次發(fā)送空包結(jié)束到下次發(fā)送空包開始之間的間隔。
[0010]作為優(yōu)選,通信方法包括:
[0011]設(shè)定預(yù)設(shè)時間;
[0012]在記錄的持續(xù)時間小于預(yù)設(shè)時間時,藍牙設(shè)備之間以建立連接時協(xié)商的以固定間隔發(fā)送空包的方式發(fā)送空包;
[0013]在記錄的持續(xù)時間大于預(yù)設(shè)時間之后,在藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接期間,根據(jù)所記錄的持續(xù)時間對藍牙設(shè)備之間發(fā)送空包的發(fā)送方案基于預(yù)先設(shè)定的對應(yīng)關(guān)系進行相應(yīng)的調(diào)整。
[0014]作為優(yōu)選,上述通信方法還包括:
[0015]設(shè)定停止時間,
[0016]則在所記錄的持續(xù)時間達到停止時間之后,藍牙設(shè)備之間不再保持連接。
[0017]作為優(yōu)選,上述通信方法還包括:
[0018]在藍牙設(shè)備之間停止數(shù)據(jù)通信后重新開始數(shù)據(jù)通信時,以建立連接時所協(xié)商的傳輸數(shù)據(jù)包的方式傳輸數(shù)據(jù)包。
[0019]作為優(yōu)選,藍牙設(shè)備包括主藍牙設(shè)備和從藍牙設(shè)備,其中,主藍牙設(shè)備和從藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接期間發(fā)送空包的發(fā)送方案以如下方式進行調(diào)整:
[0020]從藍牙設(shè)備給主藍牙設(shè)備發(fā)送更改發(fā)送方案的請求,主藍牙設(shè)備應(yīng)答從藍牙設(shè)備。
[0021]本發(fā)明還提供了一種藍牙設(shè)備,包括:
[0022]預(yù)設(shè)定模塊,其配置為在藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接的不同持續(xù)時間與藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接期間發(fā)送空包的不同發(fā)送方案之間預(yù)先設(shè)定對應(yīng)關(guān)系;
[0023]記錄模塊,其配置為在藍牙設(shè)備之間停止數(shù)據(jù)通信之后保持連接期間記錄無數(shù)據(jù)通信的持續(xù)時間;
[0024]調(diào)整模塊,其配置為根據(jù)記錄模塊所記錄的持續(xù)時間對藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接期間發(fā)送空包的發(fā)送方案基于預(yù)設(shè)定模塊預(yù)先設(shè)定的對應(yīng)關(guān)系進行相應(yīng)的調(diào)整。
[0025]作為優(yōu)選,在對應(yīng)關(guān)系中:不同的持續(xù)時間對應(yīng)于空包的不同發(fā)送間隔,其中,持續(xù)時間越長對應(yīng)的空包發(fā)送間隔越長,發(fā)送間隔為從一次發(fā)送空包結(jié)束到下次發(fā)送空包開始之間的間隔。
[0026]作為優(yōu)選,預(yù)設(shè)定模塊還用于設(shè)定預(yù)設(shè)時間;
[0027]藍牙設(shè)備還包括:
[0028]發(fā)送模塊,其配置為在記錄模塊記錄的持續(xù)時間小于預(yù)設(shè)時間時,以建立連接時協(xié)商的以固定間隔發(fā)送空包的方式發(fā)送空包;
[0029]調(diào)整模塊還其配置為在記錄模塊記錄的持續(xù)時間大于預(yù)設(shè)時間之后,在藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接期間,根據(jù)所記錄的持續(xù)時間對藍牙設(shè)備之間發(fā)送空包的發(fā)送方案基于預(yù)先設(shè)定的對應(yīng)關(guān)系進行相應(yīng)的調(diào)整。
[0030]作為優(yōu)選,預(yù)設(shè)定模塊還配置為設(shè)定停止時間,
[0031]通信裝置還包括:
[0032]中斷連接模塊,其配置為在記錄模塊所記錄的持續(xù)時間達到停止時間之后,使藍牙設(shè)備之間不再保持連接。
[0033]作為優(yōu)選,調(diào)整模塊還配置為在藍牙設(shè)備之間停止數(shù)據(jù)通信后重新開始數(shù)據(jù)通信時,以建立連接時所協(xié)商的傳輸數(shù)據(jù)包的方式傳輸數(shù)據(jù)包。
[0034]本發(fā)明相對于現(xiàn)有技術(shù)的有益效果在于:
[0035]1、能根據(jù)藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接的不同持續(xù)時間基于預(yù)先設(shè)定的對應(yīng)關(guān)系對它們之間的空包的發(fā)送方案進行調(diào)整,從而適應(yīng)不同的情況而節(jié)約藍牙設(shè)備的能耗,通過設(shè)備發(fā)送請求提高幀間隔來降低發(fā)射次數(shù),減少功耗;
[0036]2、在藍牙設(shè)備之間無數(shù)據(jù)通信的持續(xù)時間達到停止時間之后,則使藍牙設(shè)備之間不再保持連接,有利于進一步節(jié)約能耗,避免不必要的空包傳輸。
【附圖說明】
[0037]圖1為根據(jù)本發(fā)明實施例的藍牙設(shè)備之間的通信方法的流程圖;
[0038]圖2為根據(jù)本發(fā)明實施例的藍牙設(shè)備的框圖。
【具體實施方式】
[0039]以下結(jié)合附圖對本發(fā)明的進行詳細描述。
[0040]藍牙設(shè)備可以包括主藍牙設(shè)備(也可以是服務(wù)器,即service)和從藍牙設(shè)備(也可以是從設(shè)備,即slave),其中,主藍牙設(shè)備和從藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接期間發(fā)送空包的發(fā)送方案以如下方式進行調(diào)整:從藍牙設(shè)備給主藍牙設(shè)備發(fā)送更改發(fā)送方案的請求,主藍牙設(shè)備應(yīng)答從藍牙設(shè)備。在兩個藍牙設(shè)備之間建立藍牙無線連接之后,藍牙設(shè)備之間可以進行無線通信,在正常數(shù)據(jù)通信狀態(tài)時,藍牙設(shè)備的各個模塊均正常工作。而當兩個藍牙設(shè)備之間沒有數(shù)據(jù)通信且保持連接時,則根據(jù)本發(fā)明的實施例,提供了一種藍牙設(shè)備之間的通信方法,具體地為在藍牙設(shè)備之間沒有進行數(shù)據(jù)通信且保持連接以后調(diào)整空包傳輸方式的通信方法,如圖1所示,為根據(jù)本發(fā)明實施例的藍牙設(shè)備之間的通信方法的流程圖,該通信方法包括以下步驟:
[0041]步驟SI,在藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接的不同持續(xù)時間與藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接期間發(fā)送空包的不同發(fā)送方案之間預(yù)先設(shè)定對應(yīng)關(guān)系。根據(jù)本發(fā)明的一個實施方式,發(fā)送方案可以與空包的不同發(fā)送間隔相關(guān),優(yōu)選地,在所述對應(yīng)關(guān)系中:不同的持續(xù)時間對應(yīng)于空包的不同發(fā)送間隔,其中,持續(xù)時間越長對應(yīng)的空包的發(fā)送間隔越長,其中,發(fā)送間隔為從一次發(fā)送空包結(jié)束到下次發(fā)送空包開始之間的間隔。當然該對應(yīng)關(guān)系可以由用戶根據(jù)不同需求而設(shè)定。
[0042]步驟S2,在藍牙設(shè)備之間無數(shù)據(jù)通信之后保持連接期間記錄藍牙設(shè)備之間無數(shù)據(jù)通信的持續(xù)時間,此步驟所記錄的時間即可為調(diào)整空包的發(fā)送方案作依據(jù),例如當所記錄的持續(xù)時間超過10min/30min (或其它用戶預(yù)設(shè)定的持續(xù)時間)時,跳轉(zhuǎn)到步驟S3 ;
[0043]步驟S3,根據(jù)所記錄的持續(xù)時間對藍牙設(shè)備之間無數(shù)據(jù)通信且保持連接期間發(fā)送空包的發(fā)送方案基于預(yù)先設(shè)定的對應(yīng)關(guān)系進行相應(yīng)的調(diào)整,即,相應(yīng)地調(diào)整空包的發(fā)送間隔。本發(fā)明的技術(shù)方案主要致力于在藍牙設(shè)備之間建立連接之后,在無數(shù)據(jù)通信且保持連接期間,從藍牙設(shè)備能夠根據(jù)藍牙設(shè)備之間的無數(shù)據(jù)傳輸且保持連接的持續(xù)時間基于預(yù)設(shè)的對應(yīng)關(guān)系對它們之間的空包發(fā)送方案進行調(diào)整,即,從藍牙設(shè)備能夠主動給主藍牙設(shè)備發(fā)送更改空包發(fā)送方案的請求,以將空包的發(fā)送間隔延長,在主藍牙