日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

GATT(四)

發(fā)布時間:2024/3/24 编程问答 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GATT(四) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

五、L2CAP互操作性要求

5.1 BR/EDR L2CAP

BR/EDR上的ATT_MTU是L2CAP協(xié)商的,最小值是48個字節(jié)

至于其他方面,因為一般不用BR/EDR,用的時候在關注

5.2 LE L2CAP

1、Default ATT_MTU為23個字節(jié)

2、GATT發(fā)送的ATT消息都使用L2CAP的固定通道L2CAP fixed CID=0x0004,LE connection建立以后就可以直接使用這個固定通道,不需要在建立L2CAP通道

通道配置如下圖所示(都是默認值不需要配置):

?

如下圖所示:BT chip初始化以后,沒有配置L2CAP通知直接就使用了?

六、 GAP INTEROPERABILITY REQUIREMENTS

6.1 BR/EDR GAP INTEROPERABILITY REQUIREMENTS

6.1.1 Connection Establishment

建立ATT Bearer需要使用Channel Establishment procedure (參考Generic Access Profile, Section 7.2),任何一個設備可能在任何時間斷開連接

6.2 LE GAP INTEROPERABILITY REQUIREMENTS

6.2.1 Connection Establishment

建立ATT Bearer需要使用Connection Establishment procedure (參考Generic Access Profile, Section 9.3.5 through Section 9.3.8) ,任何一個設備可能在任何時間斷開連接

6.2.2 Profile Roles

GATT會用到GAP中的兩種角色:Central和Peripheral

6.3 DISCONNECTED EVENTS

6.3.1 Notifications and Indications While Disconnected

?????? 如果client已經(jīng)配置server發(fā)送notification或者indication給client,則當斷開連接時,client應該有能力重新建立連接。client已經(jīng)斷開連接,如果client想要變成Central,則client應該執(zhí)行GAP connection establishment procedure,如果client想要變成Peripheral,則client應該進入GAP connectable mode

?????? 如果連接已經(jīng)斷開,且server要發(fā)送notification或者indication時,server應該有能力與client重新建立連接,server已經(jīng)斷開連接,如果server想要變成Peripheral,則server應該進入GAP connectable mode,如果server想要變成Central,則server應該執(zhí)行GAP connection establishment procedure.

?????? 如果server不能重新建立連接,則產(chǎn)生notification或者indication時,應該忽略。

七、DEFINED GENERIC ATTRIBUTE PROFILE SERVICE

這部分定義的所有的characteristics都應該包含在一個primary service內,但是只能有一個實例

這部分定義的所有的characteristics如下圖所示:

?

7.1 SERVICE CHANGED

?Service Changed? characteristic是一個control-point attribute,是server用來告知client有services發(fā)生了變化(增加、刪除或者修改)。當有trusted relationship的client重新連接時也使用?Service Changed? characteristic告知。

Characteristic Value應該使用Client Characteristic Configuration descriptor配置為indicated。如果client不能使用Client Configuration Characteristic Descriptor將Characteristic Value設置為indications,則service發(fā)生變化產(chǎn)生的Service Changed Characteristic Value 的Indications會被認為丟失了

Service Changed Characteristic Value包括兩個16-bit的Attribute Handles,表示被(service刪除、修改、增加)影響的Attribute Handle的范圍,如果被影響的范圍不是Service Changed characteristic value,而是GATT service definition characteristic values中的其他地方,那么Attribute Handle的范圍應該設置為GATT service definition的開始到結束的handle

?

如果GATT service都不會發(fā)生變化,則Service Changed Characteristic不需要存在,如果server上存在Service Changed characteristic,那么server就必須要要支持Characteristic Value Indication

八、如果一個設備支持在BR/EDR上支持GATT,需要添加SDP record(一般不用BR/EDR)

?

九、舉例:一個server及server上所有的attribute?

?

?

?

總結

以上是生活随笔為你收集整理的GATT(四)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。