簡單的BLE連線流程和說明

2021-09-19 03:44:24 字數 1172 閱讀 7038

bluetooth low energy 簡稱 ble

1.連線流程

初始化藍芽bluetoothmanager-->bluetoothadapter-->startscan ble 廣播-->通過uuid唯一標識進行匹配bluetoothgatt連線-->stopscan ble

2.什麼是gatt

gatt=generic attribute profile=通用屬性協議    定義了service和characteristic兩種東西來完成低功耗藍芽裝置之間的傳輸

gatt連線是獨佔的  乙個中心裝置連線同時只能與乙個周邊裝置進行連線

乙個ble藍芽裝置有多個profile

乙個profile有多個service(通過服務的uuid找到對應的service)    乙個service有多個特徵characteristic(通過特徵的uuid找到對應哪個characteristic)    乙個characteristic中包括乙個value和多個descriptor(通過descriptor的uuid找到對應的descriptor)

1.profile    profile可以理解成為一種規範,乙個標準的通訊協議,它存在與從機中,藍芽組織規定了一些標準的profile,列如hid over gatt 防丟器 心率計等,每個profile中包含多個service,每個service代表從機的一種能力。

2.service

service可以理解成為乙個服務,在ble從機中,通過有多個服務,例如電量資訊服務,系統資訊服務,每個service中又包含多個characteristic特徵值。每個具體的characteristic特徵值才是ble通訊的主題。比如當前電量是80%,所以會通過電量的characteristic特徵值存在的profile裡,這樣主機就可以通過這個characteristic來賭徒80%這個資料。

3.characteristic    characteristic特徵值,ble主從機的通訊均是通過characteristic來實現,可以理解為乙個標籤,通過這個標籤可以獲取或寫入想要的內容

4.uuid    統一識別碼,剛提到的service和charactistic,都需要乙個唯一的uuid來標識

uuid的格式:00001101-0000-1000-8000-00805f9b34fb

tcp連線和斷開流程

說起tcp,我們一般都需要知道發起乙個tcp連線和終止乙個tcp連線是所發生的事情,下邊,我將跟大家介紹下tcp的三次握手及四次揮手的過程。tcp三路握手 1 伺服器必須準備好接受外來的連線。這通常在呼叫socket,bind,listen這三個函式來完成,我們稱之為被動開啟 passive ope...

Struts的MVC和簡單流程

今天起的很晚,下午又停了一會電,真是 只好看看書了。總結了一下對struts關於mvc的一些理解。把struts標籤和form提交處理流程整理了一下。do action apache.struts.action.actionservlet config web inf struts config.x...

簡單說明 cdecl stdcall和

cdecl 是 c declaration 的縮寫,表示 c 和 c 預設的函式呼叫約定。是c c 和mfcx的預設呼叫約定。stdcall是standard call的縮寫,是c 的標準呼叫方式,當然這是微軟定義的標準,stdcall通常用於win32 api中 可檢視winapi的定義 fast...