蓝牙 BLE 三种 UUID 格式转换
蓝牙广播中对服务 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为xxxx,那么 128 bit UUID 为 0000xxxx-0000-1000-8000-00805F9B34FB
若 32 bit UUID为xxxxxxxx,那么 128 bit UUID 为 xxxxxxxx-0000-1000-8000-00805F9B34FB
看到我的现在:【我的UUID是FEE7 】
[distance=-1.0],
[rssi=-67],
[UUIDs=[0000fee7-0000-1000-8000-00805f9b34fb]],
[address=01:02:03:04:05:06],
[localName=TW00010203040506],
[flags=Flags(LimitedDiscoverable=false,
GeneralDiscoverable=true,LegacySupported=false,
ControllerSimultaneitySupported=false,HostSimultaneitySupported=false)],
[ADManufacturerSpecific=ADManufacturerSpecific(Length=9,Type=0xFF,CompanyID=0x0000)]
得到:若 16 bit UUID为xxxx,那么 128 bit UUID 为 0000xxxx-0000-1000-8000-00805F9B34FB
也就是我的UUID是FEE7 在哪里修改?
{#IF 0
再看一个BM77的
[distance=-1.0],
[rssi=-80],
[UUIDs=[000018f0-0000-1000-8000-00805f9b34fb]],
[address=34:81:F4:15:F3:26],
[localName=TW003481F415F326],
[flags=Flags(LimitedDiscoverable=false,
GeneralDiscoverable=true,LegacySupported=true,
ControllerSimultaneitySupported=false,HostSimultaneitySupported=false)],
[ADManufacturerSpecific=ADManufacturerSpecific(Length=9,Type=0xFF,CompanyID=0x5354)]
#ENDIF
看文档 我修改
distance=0.5552121421125982],
[rssi=-66],
[UUID=00010203-0405-0607-0809-0a0b0c0d0e0f],
[Major=772],
[Minor=1286],
[Power=-70],
[UUIDs=[0000fee7-0000-1000-8000-00805f9b34fb]],
[address=01:02:03:04:05:06],
[localName=TW00010203040506],
[flags=Flags(LimitedDiscoverable=false,GeneralDiscoverable=true,
LegacySupported=false,ControllerSimultaneitySupported=false,HostSimultaneitySupported=false)]
我多了一个UUID
我的代码是:
for(char y=0;y<16;y++)UUID[y]=y;
也就是0-1-2-3
00010203
我修改前面4个看看
static uint8_t UUID[] = {0x00 ,0x00,0x18,0xF0,0xB2,0xF8,0x47,0x92,0x85,0x7A,0x2D,0x26,0x8E,0x4F,0x6D,0x94};
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)