




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第1章 BlueTooth Roles-Broadcaster1.1 廣播類型廣播可設(shè)置以下幾種類型: 1) Connectable Undirected Event Type(可連接無(wú)定向廣播)2) Connectable Directed Event Type(可連接定向廣播)3) Scannable Undirected Event Type(可掃描無(wú)定向廣播)4) Non-connectable Undirected Event Type(不可連接無(wú)定向廣播)所謂定向和無(wú)定向是針對(duì)廣播的對(duì)象而言的,如果是針對(duì)特定對(duì)象的廣播(在廣播包PDU中會(huì)包含目標(biāo)對(duì)象的BD_ADDR)就是定向廣播,
2、反之就是無(wú)定向??蛇B接和不可連接是指是否接受連接請(qǐng)求,如果是不可連接的廣播類型,它將不回應(yīng)連接請(qǐng)求??蓲呙桀愋褪侵富貞?yīng)掃描請(qǐng)求。在TICC2540中實(shí)現(xiàn):廣播類型定位在(include/gap.h),具體定義的類型如下:GAP_ADTYPE_ADV_IND/! Connectable undirected advertisementGAP_ADTYPE_ADV_HDC_DIRECT_IND/! Connectable high duty cycle directed advertisementGAP_ADTYPE_ADV_SCAN_IND /! Scannable undirected adv
3、ertisementGAP_ADTYPE_ADV_NONCONN_IND /! Non-Connectable undirected advertisementGAP_ADTYPE_ADV_LDC_DIRECT_IND /! Connectable low duty cycle directed advertisement其中定向可連接廣播類型分成兩種方式(High duty cycle和Low duty cycle)參數(shù)設(shè)置的API為:GAPRole_SetParameter( GAPROLE_ADV_EVENT_TYPE, sizeof( uint8 ), &advType );1.1.1
4、 Connectable Undirected Event Type可連接非定向廣播包為(ADV_IND PDU)。在可連接的無(wú)定向廣播類型下,一個(gè)“掃描者”或“發(fā)起者”可以用掃描請(qǐng)求或連接請(qǐng)求來(lái)回應(yīng)這個(gè)廣播包?!皰呙枵摺笨砂l(fā)送一個(gè)掃描請(qǐng)求(SCAN_REQ PDU)來(lái)獲取廣播的額外信息(SCAN_RSP);“發(fā)起者”可發(fā)送一個(gè)連接請(qǐng)求(CONNECT_REQ PDU)來(lái)要求Link Layer(鏈接層)進(jìn)入鏈接狀態(tài)。Link Layer(鏈接層)需在同一個(gè)廣播信道上監(jiān)聽(tīng)來(lái)自“掃描者”或“發(fā)起者”的請(qǐng)求。如果“廣播者”收到一個(gè)掃描請(qǐng)求包(SCAN_REQ PDU),該請(qǐng)求包含有它的設(shè)備地址,并
5、且該“掃描者”為廣播過(guò)濾策略所允許,那么“廣播者”就會(huì)在同一信道上回應(yīng)一個(gè)數(shù)據(jù)包(SCAN_RSP PDU)。當(dāng)(SCAN_RSP PDU)發(fā)送完成后,或由于廣播過(guò)濾策略阻止了該請(qǐng)求包,“廣播者”就會(huì)移到下一個(gè)廣播信道來(lái)發(fā)送另一個(gè)廣播包(ADV_IND PUD),或關(guān)閉廣播事件。如果“廣播者”收到一個(gè)連接請(qǐng)求包(CONNECT_REQ PDU), 該請(qǐng)求包含有它的設(shè)備地址,并且該“發(fā)起者”為廣播策略所允許,Link Layer(鏈接層)就會(huì)退出廣播狀態(tài)并轉(zhuǎn)移到連接狀態(tài),并且角色轉(zhuǎn)化為“從設(shè)備”。如果廣播過(guò)濾策略阻止了該連接請(qǐng)求包,“廣播者”就會(huì)移到下一個(gè)廣播信道來(lái)發(fā)送另一個(gè)廣播包(ADV_IN
6、D PUD),或關(guān)閉廣播事件。在一個(gè)廣播事件中的兩個(gè)相鄰廣播包(ADV_IND PDU)的時(shí)間間距小于等于10ms,廣播狀態(tài)將在advertising interval內(nèi)完成狀態(tài)的關(guān)閉。一個(gè)沒(méi)有掃描請(qǐng)求和連接請(qǐng)求的廣播事件(使用所有廣播信道37、38、39)如下圖所示:(示意圖)一個(gè)包含掃描請(qǐng)求的廣播事件(使用所有廣播信道37、38、39),掃描請(qǐng)求在廣播事件的中間,如下圖所示:(示意圖)一個(gè)包含掃描請(qǐng)求的廣播事件(使用所有廣播信道37、38、39),掃描請(qǐng)求在廣播事件的末尾,如下圖所示:(示意圖)一個(gè)包含連接請(qǐng)求的廣播事件,如下圖所示:(示意圖)1.1.2 Connectable Direc
7、ted Event Type可連接的定向廣播包為(ADV_DIRECT_IND PDU)。該類型允許一個(gè)“發(fā)起者”以連接請(qǐng)求包來(lái)回應(yīng)(CONNECT_REQ PDU)該廣播包,“發(fā)起者”發(fā)送一個(gè)連接請(qǐng)求包要求Link Layer(鏈接層)進(jìn)入連接狀態(tài)??蛇B接的定向廣播包(ADV_DIRECT_IND PDU)同時(shí)包含“發(fā)起者”設(shè)備地址和“廣播者”設(shè)備地址。只有符合該地址的“發(fā)起者”才可向“廣播者”發(fā)起一個(gè)連接請(qǐng)求(CONNECT_REQ PDU),也就是說(shuō)當(dāng)“發(fā)起者”收到該廣播包時(shí),它會(huì)檢測(cè)是否和自己的地址一致,如果不一致就丟棄該包不做任何回應(yīng),如果是自己的地址,它會(huì)將它提交到Host層,由H
8、ost層來(lái)決定是否發(fā)起一個(gè)連接請(qǐng)求。當(dāng)“廣播者”發(fā)送一個(gè)廣播包(ADV_DIRECT_IND PDU)后,它將在同一信道上監(jiān)聽(tīng)連接請(qǐng)求包(CONNECT_REQ PDU)。任何掃描包將被忽略,也就是說(shuō)不接受掃描請(qǐng)求。如果“廣播者”收到一個(gè)包含它設(shè)備地址的連接請(qǐng)求包,并且該“發(fā)起者”就是廣播包的指定目標(biāo),那么Link Layer(鏈接層)將退出廣播狀態(tài)并轉(zhuǎn)移到連接狀態(tài),并且角色將由“廣播者”轉(zhuǎn)化為“從設(shè)備”。否則,“廣播者”將切換到下一個(gè)廣播信道發(fā)送下一個(gè)廣播包,或者關(guān)閉這個(gè)廣播事件。在同一個(gè)廣播信道上的兩個(gè)相鄰廣播包的時(shí)間間隔小于等于3.75ms,可見(jiàn)該類型的廣播速度比可連接非定向廣播包(=3
9、0ms)要快很多。當(dāng)進(jìn)入廣播狀態(tài)后,Link Layer(鏈接層)會(huì)在1.28s內(nèi)退出廣播狀態(tài)。一個(gè)沒(méi)有連接請(qǐng)求(CONNECT_REQ PDU),含有5個(gè)廣播包(ADV_DIRECT_IND PDU)的兩個(gè)廣播事件序列圖,如下所示:(示意圖)應(yīng)用場(chǎng)合:可連接的定向廣播類型用于期望快速建立連接的場(chǎng)合(如:重連)。1.1.3 Scannable Undirected Event Type可掃描非定向廣播包(ADV_SCAN_IND PDU),允許一個(gè)“掃描者”回應(yīng)一個(gè)掃描請(qǐng)求包(SAN_REQ PDU)來(lái)向“廣播者”獲取附加信息(SCAN_RSP)。Link Layer(鏈接層)將在同一個(gè)信道上
10、監(jiān)控來(lái)自掃描者的請(qǐng)求。如果“廣播者”收到一個(gè)包含它的地址的掃描請(qǐng)求包(SCAN_REQ PDU),并且該“掃描者”的地址符合過(guò)濾策略(說(shuō)白了就是該設(shè)備合法,不被“廣播者”的地址過(guò)濾策略過(guò)濾),那么“廣播者”將在同一廣播信道上回應(yīng)一個(gè)數(shù)據(jù)包(SCAN_RSP PDU)。當(dāng)SCAN_RSP PDU數(shù)據(jù)包發(fā)送完成后或SCAN_REQ被過(guò)濾策略阻止,那么“廣播者”將切換到下一個(gè)廣播信道發(fā)送下一個(gè)廣播包或關(guān)閉該廣播事件。在一個(gè)廣播事件中的兩個(gè)相鄰廣播包(ADV_IND PDU)的時(shí)間間距小于等于10ms,廣播狀態(tài)將在advertising interval內(nèi)完成狀態(tài)的關(guān)閉。沒(méi)有掃描請(qǐng)求的包序列示意如下:
11、(示意圖)有掃描請(qǐng)求的包序列示意如下,其中一個(gè)掃描請(qǐng)求在中間,另一個(gè)掃描請(qǐng)求在末尾:(示意圖)(示意圖)1.1.4 Non-connectable Undirected Event Type不可連接非定向廣播包(ADV_NONCONNN_IND PDU),該廣播類型不接受任何請(qǐng)求包(包含:掃描請(qǐng)求和連接請(qǐng)求),“掃描者”可接收來(lái)自“廣播者”的廣播包。在一個(gè)廣播事件中的兩個(gè)相鄰廣播包(ADV_IND PDU)的時(shí)間間距小于等于10ms,廣播狀態(tài)將在advertising interval內(nèi)完成狀態(tài)的關(guān)閉。廣播事件如下圖所示:(示意圖)1.2 廣播相關(guān)參數(shù)說(shuō)明與廣播相關(guān)可設(shè)置的參數(shù)有:1) Adv
12、ertising_Interval_Min2) Advertising_Interval_Max,3) Advertising_Type,4) Own_Address_Type,5) Direct_Address_Type,6) Direct_Address,7) Advertising_Channel_Map,8) Advertising_Filter_Policy9) Advertising Data10) Scan Reponse Data1.2.1 Advertising interval首先介紹一下Advertising interval(廣播時(shí)間間隔):在所有的非定向廣播事件中,兩
13、個(gè)相鄰的廣播事件的時(shí)間間隔(T_advEvent)為:T_AdvEvent = advInterval + advDelayadvInterval必須是0.625ms的整數(shù)倍,并且范圍在20ms-10.24s之間,對(duì)于“可掃描非定向廣播”和“不可連接非定向廣播”這兩種類型,該值應(yīng)不小于100ms(即至少要160個(gè)0.625ms),對(duì)于“可連接的非定向廣播”該值可設(shè)置的范圍為20ms-10.24s。advDelay是Link Layer(鏈接層)分配的一個(gè)偽隨機(jī)數(shù),它的范圍為0-10ms。廣播包的時(shí)間間隔示意圖如下:(示意圖)參數(shù)Advertising_Interval_Min和Advertis
14、ing_Interval_Max就是用于調(diào)整advertising interval的,它們通常是以0.625ms為單位的,這里設(shè)置一個(gè)上限值和下限值,目的是希望讓控制器根據(jù)其工作情況來(lái)動(dòng)態(tài)調(diào)整合適的廣播包發(fā)送頻率,當(dāng)然你也可以設(shè)置為同一個(gè)值。Advertising_Interval_Min Size: 2 Bytes值參數(shù)描述N = 0xXXXX非定向廣播包的最小廣播間隔。范圍:0x0020-0x4000默認(rèn)值:N = 0x0800(1.28秒)Time = N * 0.625ms時(shí)間范圍:20ms-10.24sAdvertising_Interval_Max Size: 2 Bytes值參
15、數(shù)描述N = 0xXXXX非定向廣播包的最大廣播間隔。范圍:0x0020-0x4000默認(rèn)值:N = 0x0800(1.28秒)Time = N * 0.625ms時(shí)間范圍:20ms-10.24s1.2.2 Advertising_Type就是本章介紹的各種廣播類型。Advertising_Type Size: 1 Bytes值參數(shù)描述0x00Connectable undirected advertising (ADV_IND)(default)0x01Connectable directed advertising (ADV_DIRECT_IND)0x02Scannable undirec
16、ted advertising (ADV_SCAN_IND)0x03Non connectable undirected advertising (ADV_NONCONN_IND)0x04 0xFFReserved for future use廣播類型決定了回應(yīng)包類型,下表列出各種類型下的掃描請(qǐng)求和連接請(qǐng)求的對(duì)照關(guān)系:廣播類型廣播包(PDU)回應(yīng)包(PDU)掃描請(qǐng)求(SCNA_REQ)連接請(qǐng)求(CONNECT_REQ)可連接非定向廣播ADV_INDYESYES可連接定向廣播ADV_DIRECT_INDNOYES不可連接非定向廣播ADV_NOCONN_INDNONO可掃描非定向廣播ADV_SCA
17、N_INDYESNO1.2.3 Own_Address_TypeOwn_Address_Type Size: 1 Bytes值參數(shù)描述0x00Public Device Address (default)0x01Random Device Address0x02 0xFFReserved for future use“廣播者”自身使用的設(shè)備地址類型。設(shè)備地址類型:Public Device Address:公有設(shè)備地址是設(shè)備所特有的并且是不可改變的,類似網(wǎng)絡(luò)設(shè)備的MAC地址,它的長(zhǎng)度為位。這個(gè)地址是從IEEE注冊(cè)當(dāng)局獲取的,由2個(gè)部分組成:Company_id部分:高地址部分由24位組成。Co
18、mpany_assigned部分:低地址部分由24位組成。LSB MSBCompany_assigned (24位)Company_id (24位)Ramdom Device Address:隨機(jī)設(shè)備地址(私有設(shè)備地址),它也是48位LSB MSBhash (24位)random (24位)1.2.4 Direct_Address_Type,定向目標(biāo)的地址類型,同上。1.2.5 Direct_Address,定向?qū)ο蟮脑O(shè)備地址(根據(jù)類型設(shè)置,可以是公有設(shè)備地址或私有設(shè)備地址)1.2.6 Advertising_Channel_Map廣播信道的選擇Advertising_Channel_Map
19、Size: 1 Bytes值參數(shù)描述00000000b保留xxxxxxx1b允許使用37信道xxxxxx1xb允許使用38信道xxxxx1xxb允許使用39信道00000111bDefault (允許所有廣播信道)1.2.7 Advertising_Filter_Policy“廣播者”過(guò)濾策略,對(duì)發(fā)來(lái)請(qǐng)求包設(shè)備采用的過(guò)濾策略設(shè)置:Advertising_Filter_Policy Size: 1 Bytes值參數(shù)描述0x00允許任何掃描請(qǐng)求,允許任何連接請(qǐng)求(default)0x01只允許來(lái)自白名單的掃描請(qǐng)求,允許任何連接請(qǐng)求0x02允許任何掃描請(qǐng)求,只允許來(lái)自白名單的連接請(qǐng)求0x03只允許來(lái)
20、自白名單的掃描和連接請(qǐng)求0x04 0xFF保留1.2.8 Advertising Data廣播包中攜帶的廣播數(shù)據(jù),它的長(zhǎng)度最多不超過(guò)31個(gè)字節(jié)(0-31),數(shù)據(jù)必須符合下面的格式要求:(可以有多個(gè)AD數(shù)據(jù)段,每個(gè)AD數(shù)據(jù)段由Length:Data組成,其中Length為1個(gè)字節(jié),Data的長(zhǎng)度為L(zhǎng)enth,所有一個(gè)AD段的長(zhǎng)度為L(zhǎng)ength+1)。廣播數(shù)據(jù)可以根據(jù)實(shí)際需要進(jìn)行適時(shí)改變。(示意圖)1.2.9 Reponse Data掃描請(qǐng)求回應(yīng)的附加數(shù)據(jù),它的長(zhǎng)度最多不超過(guò)31個(gè)字節(jié)(0-31),數(shù)據(jù)包的格式同Advertising Data。1.3 廣播流程(Undirected Advertisi
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 新春公司抽紅包活動(dòng)方案
- 新年拔河活動(dòng)方案
- 明星粉絲活動(dòng)方案
- 新品白酒充值活動(dòng)方案
- 文胸店活動(dòng)策劃方案
- 文明休息活動(dòng)方案
- 旅游酒店國(guó)慶活動(dòng)方案
- 新品引流活動(dòng)方案
- 新年文明出行活動(dòng)方案
- 無(wú)錫移動(dòng)親子活動(dòng)方案
- 高中化學(xué)乙醇教學(xué)反思
- 如皋市直屬機(jī)關(guān)遴選筆試真題
- 2022-2023學(xué)年山東省濟(jì)南市高一下學(xué)期期末數(shù)學(xué)試題(解析版)
- 2022-2023學(xué)年安徽省阜陽(yáng)市高一下學(xué)期期末教學(xué)質(zhì)量統(tǒng)測(cè)數(shù)學(xué)試卷(解析版)
- 華東師大版數(shù)學(xué)七年級(jí)上冊(cè)教案全冊(cè)
- 數(shù)字資產(chǎn)監(jiān)管框架優(yōu)化
- 醫(yī)患之間暴力行為預(yù)防與處理管理制度
- 2022年版初中物理課程標(biāo)準(zhǔn)解讀-課件
- MOOC 大學(xué)物理實(shí)驗(yàn)-鄭州大學(xué) 中國(guó)大學(xué)慕課答案
- 眼科臨床路徑培訓(xùn)記錄課件
- 術(shù)后病人燙傷不良事件PDCA循環(huán)分析課件
評(píng)論
0/150
提交評(píng)論