藍芽 BLE 三種 UUID 格式轉換

2022-09-05 02:06:10 字數 577 閱讀 6720

藍芽廣播中對服務 uuid 格式定義都有三種 16 bit uuid、32 bit uuid、128 bit uuid。

但是熟悉安卓開發的小夥伴都知道介面都 uuid 格式,fromstring 時候 16bit 的 uuid 該咋辦呢?

16bit 和 32bit 的 uuid 與 128bit 的值之間轉換關係:

128_bit_uuid = 16_bit_uuid * 2^96 + bluetooth_base_uuid

128_bit_uuid = 32_bit_uuid * 2^96 + bluetooth_base_uuid

其中 bluetooth_base_uuid 定義為 00000000-0000-1000-8000-00805f9b34fb 

如果你想說這是啥呀,那我這樣說你應該可以明白點:

若 16 bit uuid為***x,那麼 128 bit uuid 為 0000***x-0000-1000-8000-00805f9b34fb

若 32 bit uuid為******xx,那麼 128 bit uuid 為 ******xx-0000-1000-8000-00805f9b34fb

低功耗藍芽UUID三種格式轉換

熟悉ble技術同學應該對uuid不陌生,服務 特徵值 描述都是有uuid格式定義。藍芽廣播中對服務uuid格式定義都有三種16 bit uuid 32 bit uuid 128 bit uuid。但是熟悉安卓開發的小夥伴都知道介面都uuid格式,fromstring時候16bit的uuid該咋辦呢?...

藍芽支援的三種編碼格式

以下當前較為常用的幾種音訊傳輸格式和支援廠商。下面按照編碼的位元速率由低到高列舉。sbc sub band coding,子帶編碼 最早的格式應該是sbc,sbc是a2dp advanced audio distribution profile,藍芽音訊傳輸協議 協議強制規定的編碼格式。所有的藍芽都...

if 的三種格式

if 語句 條件判斷 以及它的三種格式 public class main false 為假 所以不會執行裡面的語句if false 判斷 int a 1 int b 2 如果 a b 返回true 否則 返回 false a 1 b 2 aif a b aif a if 語句的三種格式 1.if ...