藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng)及傳輸方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明是有關(guān)于一種藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng)及傳輸方法。
【背景技術(shù)】
[0002]隨著電子科技的進(jìn)步,可攜式的消費(fèi)性電子產(chǎn)品成為人們?nèi)粘I钪械闹匾ぞ?。而利用可攜式電子產(chǎn)品進(jìn)行信息的交換,是一種重要的功能,因此,如何提供穩(wěn)定的近距離的無線數(shù)據(jù)傳輸系統(tǒng)成為一個重要的課題。
[0003]藍(lán)牙接口的傳輸系統(tǒng)是其中常用的一種無線傳輸接口。在現(xiàn)有的技術(shù)領(lǐng)域中,利用藍(lán)牙通用屬性協(xié)議當(dāng)中的寫入與通知命令,兩個相互傳輸數(shù)據(jù)的藍(lán)牙模塊間并沒有回應(yīng)的機(jī)制,因此,藍(lán)牙模塊間的數(shù)據(jù)傳輸?shù)目煽慷葧?yīng)降低。舉例來說,當(dāng)藍(lán)牙模塊間進(jìn)行高速率的數(shù)據(jù)傳輸動作時,主端藍(lán)牙模塊會持續(xù)的進(jìn)行數(shù)據(jù)的傳輸動作,一旦從屬端藍(lán)牙模塊的緩沖器寬間被填滿,會導(dǎo)致從屬端藍(lán)牙模塊中未被處理的數(shù)據(jù)被覆蓋而消失的現(xiàn)象。造成數(shù)據(jù)傳輸?shù)牟豢煽楷F(xiàn)象。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng)及傳輸方法,有效提升藍(lán)牙接口在高傳輸速率操作下的數(shù)據(jù)傳輸?shù)姆€(wěn)定性。
[0005]本發(fā)明的藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng)包括主端電子裝置以及從屬端電子裝置。主端電子裝置具有主端藍(lán)牙通用屬性協(xié)議傳輸模塊(以下簡稱主端藍(lán)牙模塊),從屬端電子裝置具有從屬端藍(lán)牙通用屬性協(xié)議傳輸模塊(以下簡稱從屬端藍(lán)牙模塊)。其中,主端藍(lán)牙模塊與從屬端藍(lán)牙模塊間進(jìn)行多數(shù)個特性元信息傳收動作,其中特性元信息指示主端藍(lán)牙模塊以及從屬端藍(lán)牙模塊中的多數(shù)個緩沖器尺寸信息。主端藍(lán)牙模塊以及從屬端藍(lán)牙模塊間并分別通過主端啟動標(biāo)記以及從屬端啟動標(biāo)記來依據(jù)特性元信息進(jìn)行彼此間的數(shù)據(jù)傳輸動作。
[0006]本發(fā)明的藍(lán)牙接口的數(shù)據(jù)傳輸方法,包括通過主端電子裝置中的主端藍(lán)牙模塊與從屬端電子裝置中的從屬端藍(lán)牙模塊間進(jìn)行多數(shù)個特性元信息傳收動作,其中,特性元信息指示主端藍(lán)牙模塊以及從屬端藍(lán)牙模塊中的多數(shù)個緩沖器尺寸信息;并且,通過主端啟動標(biāo)記以及從屬端啟動標(biāo)記來依據(jù)特性元信息進(jìn)行主端藍(lán)牙模塊以及從屬端藍(lán)牙模塊間的數(shù)據(jù)傳輸動作。
[0007]基于上述,本發(fā)明通過在主端藍(lán)牙模塊以及從屬端藍(lán)牙模塊間進(jìn)行特性元信息的傳輸,并通過特性元信息所指示的主端藍(lán)牙模塊以及從屬端藍(lán)牙模塊中的緩沖器尺寸信息,主端藍(lán)牙模塊以及從屬端藍(lán)牙模塊可以獲知彼此間的緩沖器的使用狀況,如此一來,主端藍(lán)牙模塊以及從屬端藍(lán)牙模塊在進(jìn)行彼此間的數(shù)據(jù)傳輸動作時,可以針對待傳送的數(shù)據(jù)量的大小進(jìn)行有效的控制,實(shí)現(xiàn)可靠性的數(shù)據(jù)傳輸。
[0008]為讓本發(fā)明的上述特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉實(shí)施例,并配合附圖作詳細(xì)說明如下。
【附圖說明】
[0009]圖1示出本發(fā)明一實(shí)施例的藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng)的示意圖;
[0010]圖2示出本發(fā)明一實(shí)施例的藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng)的實(shí)施方式的示意圖;
[0011]圖3示出本發(fā)明一實(shí)施例的藍(lán)牙接口的數(shù)據(jù)傳輸方法的流程圖。
[0012]附圖標(biāo)記說明:
[0013]100:藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng);
[0014]110:主端電子裝置;
[0015]120:從屬端電子裝置;
[0016]111、210:主端藍(lán)牙模塊;
[0017]121、220:從屬端藍(lán)牙模塊;
[0018]211,221:應(yīng)用層;
[0019]212、222:通用屬性協(xié)議棧(GATT);
[0020]213,223:藍(lán)牙控制器;
[0021 ] RBUFl、RBUF2:接收數(shù)據(jù)緩沖器;
[0022]TBUFl、TBUF2:傳送數(shù)據(jù)緩沖器;
[0023]2111,2211:應(yīng)用程序;
[0024]S310?S320:藍(lán)牙接口的數(shù)據(jù)傳輸步驟。
【具體實(shí)施方式】
[0025]以下請參照圖1,圖1示出本發(fā)明一實(shí)施例的藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng)的示意圖。藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng)100包括主端電子裝置110以及從屬端電子裝置120。主端電子裝置110以及從屬端電子裝置120分別具有主端藍(lán)牙模塊111以及從屬端藍(lán)牙模塊121。其中主端藍(lán)牙模塊111為主端藍(lán)牙通用屬性協(xié)議傳輸模塊,從屬端藍(lán)牙模塊121則為從屬端藍(lán)牙通用屬性協(xié)議傳輸模塊。當(dāng)主端電子裝置110以及從屬端電子裝置120間要進(jìn)行數(shù)據(jù)傳輸動作時,其中的主端藍(lán)牙模塊111與從屬端藍(lán)牙模塊121間會進(jìn)行多數(shù)個特性元信息的交換動作。其中,所述的特性元信息用來指示相關(guān)于主端藍(lán)牙模塊111以及從屬端藍(lán)牙模塊121中的緩沖器尺寸信息。進(jìn)一步來說,特性元信息可用來記錄主端藍(lán)牙模塊111與從屬端藍(lán)牙模塊121中,用來暫存數(shù)據(jù)的緩沖器的使用狀態(tài)。而通過這些特性元信息的傳輸動作,主端藍(lán)牙模塊111可將其中的暫存器使用狀態(tài)告知從屬端藍(lán)牙模塊121,相同的,從屬端藍(lán)牙模塊121可將其中的暫存器使用狀態(tài)告知主端藍(lán)牙模塊111。
[0026]具體來說明,在本發(fā)明一實(shí)施例中,特性元信息分別指示主端藍(lán)牙模塊111的主端最大接收緩沖器尺寸與主端歸還緩沖器尺寸以及從屬端藍(lán)牙模塊121的從屬端最大接收緩沖器尺寸與從屬端歸還緩沖器尺寸。當(dāng)主端藍(lán)牙模塊111要對從屬端藍(lán)牙模塊121進(jìn)行數(shù)據(jù)的寫入動作時,主端藍(lán)牙模塊111可接收由從屬端藍(lán)牙模塊121傳至的從屬端最大接收緩沖器尺寸與從屬端歸還緩沖器尺寸等特性元信息。主端藍(lán)牙模塊111并依據(jù)從屬端最大接收緩沖器尺寸與從屬端歸還緩沖器尺寸以及主端已傳輸數(shù)據(jù)尺寸來進(jìn)行從屬端可允許傳輸數(shù)據(jù)尺寸的計算。在此,主端已傳輸數(shù)據(jù)尺寸為主端藍(lán)牙模塊111在此次寫入動作前所發(fā)生的已傳送至從屬端藍(lán)牙模塊121的數(shù)據(jù)的大小,而從屬端歸還緩沖器尺寸則為從屬端藍(lán)牙模塊121中被應(yīng)用程序釋出的緩沖器的大小。
[0027]其中,從屬端可允許傳輸數(shù)據(jù)尺寸=從屬端最大接收緩沖器尺寸-主端已傳輸數(shù)據(jù)尺寸+從屬端歸還緩沖器尺寸。
[0028]相對的,當(dāng)要對主端藍(lán)牙模塊111進(jìn)行數(shù)據(jù)的寫入動作時,從屬端藍(lán)牙模塊121可接收由主端藍(lán)牙模塊111傳至的主端最大接收緩沖器尺寸與主端歸還緩沖器尺寸等特性元信息。從屬端藍(lán)牙模塊121并依據(jù)主端最大接收緩沖器尺寸與主端歸還緩沖器尺寸以及從屬端已傳輸數(shù)據(jù)尺寸來進(jìn)行主端可允許傳輸數(shù)據(jù)尺寸的計算。在此,從屬端已傳輸數(shù)據(jù)尺寸為從屬端藍(lán)牙模塊121在此次寫入動作前所發(fā)生的已傳送至主端藍(lán)牙模塊111的數(shù)據(jù)的大小,而主端歸還緩沖器尺寸則為主端藍(lán)牙模塊121中被應(yīng)用程序釋出的緩沖器的大小。
[0029]其中,主端可允許傳輸數(shù)據(jù)尺寸=主端最大接收緩沖器尺寸-從屬端已傳輸數(shù)據(jù)尺寸+主端歸還緩沖器尺寸。
[0030]在另一方面,在本發(fā)明的藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng)100中,主端藍(lán)牙模塊111以及從屬端藍(lán)牙模塊121間還包括啟動標(biāo)記的控制機(jī)制。其中,主端藍(lán)牙模塊111以及從屬端藍(lán)牙模塊121間的數(shù)據(jù)傳輸動作是依據(jù)寫入彼此的啟動標(biāo)記來啟動。
[0031]具體來說明,在當(dāng)主端藍(lán)牙模塊111或從屬端藍(lán)牙模塊121將數(shù)據(jù)傳送給對方時,除上述的需要先取得主端可允許傳輸數(shù)據(jù)尺寸或從屬端可允許傳輸數(shù)據(jù)尺寸外,還需要針對主端啟動標(biāo)記或從屬端啟動標(biāo)記進(jìn)行寫入來啟動后續(xù)的數(shù)據(jù)寫入動作。這個數(shù)據(jù)的寫入動作可以是通用屬性協(xié)議棧(General Attribute profile,簡稱GATT)信息的寫入動作。也就是說,當(dāng)主端藍(lán)牙模塊111要對從屬端藍(lán)牙模塊121進(jìn)行數(shù)據(jù)寫入動作前,須先計算出從屬端藍(lán)牙模塊121的從屬端可允許傳輸數(shù)據(jù)尺寸,并針對從屬端藍(lán)牙模塊121的從屬端啟動標(biāo)記進(jìn)行寫入來啟動后續(xù)的通用屬性協(xié)議棧信息的寫入動作。并且,依據(jù)從屬端可允許傳輸數(shù)據(jù)尺寸,主端藍(lán)牙模塊111可選擇小于或等于從屬端可允許傳輸數(shù)據(jù)尺寸的數(shù)據(jù)來進(jìn)行寫入動作,如此一來,寫入至從屬端藍(lán)牙模塊121的通用屬性協(xié)議棧信息可以確保一定可被寫入至從屬端藍(lán)牙模塊121的暫存器中。相對應(yīng)的,原先存儲在從屬端藍(lán)牙模塊121的暫存器中的數(shù)據(jù)也不會被復(fù)寫或排除,可以暫存在從屬端藍(lán)牙模塊121的暫存器中以等待進(jìn)行有效的處理。
[0032]與上述說明相類似的,當(dāng)從屬端藍(lán)牙模塊121要對主端藍(lán)牙模塊111進(jìn)行數(shù)據(jù)寫入動作前,這個數(shù)據(jù)的通知動作可以是通用屬性協(xié)議棧(General Attribute profile,簡稱GATT)信息的通知動作(Notify),須先計算出主端藍(lán)牙模塊111的主端可允許傳輸數(shù)據(jù)尺寸,并針對主端藍(lán)牙模塊111的主端啟動標(biāo)記進(jìn)行寫入來啟動后續(xù)的通用屬性協(xié)議棧信息的寫入動作。而依據(jù)主端可允許傳輸數(shù)據(jù)尺寸,從屬端藍(lán)牙模塊121可選擇小于或等于主端可允許傳輸數(shù)據(jù)尺寸的數(shù)據(jù)來進(jìn)行寫入動作,如此一來,寫入至主端藍(lán)牙模塊121的通用屬性協(xié)議棧信息可以確保一定可被寫入至主端藍(lán)牙模塊111的暫存器中。相對應(yīng)的,原先存儲在主端藍(lán)牙模塊111的暫存器中的數(shù)據(jù)也不會被復(fù)寫或排除,可以暫存在主端藍(lán)牙模塊111的暫存器中以等待進(jìn)行有效的處理。
[0033]附帶一提的,主端啟動標(biāo)記特性元的特性為通知或是指示,而從屬端啟動標(biāo)記特性元的特性為寫入或是寫入需求。
[0034]以下請參照圖2,圖2示出本發(fā)明一實(shí)施例的藍(lán)牙接口的數(shù)據(jù)傳輸系統(tǒng)的實(shí)施方式的示意圖。其中,主端藍(lán)牙模塊210與從屬端藍(lán)牙模塊220間進(jìn)行數(shù)據(jù)傳輸?shù)膭幼?。主端藍(lán)牙模塊210中規(guī)劃有應(yīng)用層211以及通用屬性協(xié)議棧(GATT) 212,并建構(gòu)有藍(lán)牙控制器213。藍(lán)牙控制器213中則建構(gòu)傳送數(shù)據(jù)緩沖器TBUFl以及接收數(shù)據(jù)緩沖器RBUFl。相類似的,從屬端藍(lán)牙模塊220中規(guī)劃有應(yīng)用層221以及通用屬性協(xié)議棧(GATT) 222,并建構(gòu)有藍(lán)牙控制器223。藍(lán)牙控制器223中則建構(gòu)傳送數(shù)據(jù)緩沖器TBUF2以及接收數(shù)據(jù)緩沖器RBUF2。
[0035]在動作的細(xì)節(jié)方面,在第一次的數(shù)據(jù)傳輸動作時,從屬端歸還緩沖器尺寸以及主端已傳輸數(shù)據(jù)尺寸可以視為等于O。主端藍(lán)牙模塊210通過應(yīng)用層211中的應(yīng)用程序2111來讀取從屬端最大接收緩沖器尺寸的特性元信息,并將對從屬端啟動標(biāo)記進(jìn)行寫入以啟動對從屬端藍(lán)牙模塊220的寫入動作。從屬端藍(lán)牙模塊220則回應(yīng)主端藍(lán)牙模塊210的從屬端最大接收緩沖器尺寸的特性元信息的讀取需求,并將從屬端最大接收緩沖器尺寸的特性元信息傳送給主端藍(lán)牙模塊210。而主端藍(lán)牙模塊210則可依據(jù)從屬端最大接收緩沖器尺寸計算出從屬端可允許傳輸數(shù)據(jù)尺寸(從屬端最