目前市面上流行在ble应用中,uuid“universally unique identifier”用于标识蓝牙服务以及通讯特征访问属性,不同的蓝牙服务和属性使用不同的访问方法,就像人们语言交流一样,语言相同才能正常交流。
蓝牙技术联盟sig定义uuid共用了一个基本的uuid:0x0000xxxx-0000-1000-8000-00805f9b34fb。总共128位,为了进一步简化基本uuid,每一个蓝牙技术联盟定义的属性有一个唯一的16位uuid,以代替上面的基本uuid的‘x’部分。使用16位的uuid便于记忆和操作,如sig定义了“device information”的16位uuid为0x180a。
蓝牙不同服务各自定义了“特征字段”用于实现数据访问,允许定义read、write、notification不同的特征属性,实现对应通道的读写操作,而“特征字段”也采用了uuid来唯一标识,如sig在“device information”服务下定义了“manufacture name string”实现“read”属性,其16位uuid为0x2a29。
可见,蓝牙服务uuid以及服务特征字段,在蓝牙服务交互过程中起着非常重要的作用,而sig标准中允许用户自定义服务,采用128位完成蓝牙服务,以及128位特征字段定义。在实际应用中,通常不同厂商的蓝牙模块都会各自定义蓝牙服务以及特征字,这就导致了市面上不同厂商生产的蓝牙模块相互间无法通讯。
为了更好的兼容不同厂商的蓝牙服务定义,蓝牙模块需要支持服务自定义配置功能,通过支持自定义蓝牙服务和特征字兼容不同的蓝牙定义,从而实现不同厂商模块间的互通。
凯发app官方网站-凯发k8旗舰厅注册登录的支持蓝牙服务uuid和服务特征uuid的配置,可灵活兼容不同厂商蓝牙模块,实现透传通讯。