Windows 蓝牙驱动开发-BLE低功耗

蓝牙的版本为1.0 ~5.2版本,蓝牙1.0~3.0都是经典蓝牙(rfcomm)。而蓝牙4.0开始就是包括蓝牙BLE了。蓝牙4.0的蓝牙芯片都是双模的,既包括经典蓝牙也包括低能耗蓝牙。经典蓝牙和蓝牙BLE完全是两个东西,只是它们在底层上有一些相似的地方。蓝牙BLE相比于经典蓝牙的优点是搜索、连接的速度更快,关键就是BLE都是低能耗,缺点是传输的速度慢,传输的数据量也很小,每次只有20个字节,但BLE因为其低能耗的优点,在智能穿戴设备和车载系统上的应用越来越广泛。

注意,在windows平台,经典蓝牙编程和BLE编程分别是两个概念,蓝牙API是使用经典蓝牙进行开发,而BLE则是在winrt中集成。不过在应用层无法直接区分是经典蓝牙还是BLE蓝牙。

蓝牙 BLE 引入了一个新的物理层,该层与蓝牙基本速率共享相同的频率空间。 基于此技术开发的配置文件组织成通用属性配置文件 (GATT)。

每个配置文件定义了使用一个或多个服务来创建用例或场景。 合规服务实现是根据一些特征构造的,这些特征的组织方式符合蓝牙特别兴趣小组开发人员网站上定义的已建立架构。

下图演示了对象在典型 GATT 服务内的结构方式。

当蓝牙 LE 设备与 Windows 计算机配对时,设备将成为系统的一部分。 Windows 提供设备对象来表示设备所报告的设备和主要服务。

每个设备及其主要服务都表示为 Windows 中的设备对象,可以使用设备安装函数(例如 SetupDiEnumDeviceInfo 和 SetupDiGetDeviceProperty)查询和管理这些设备对象。

除了标准蓝牙配置文件驱动程序函数,蓝牙BLE 函数还提供用于开发蓝牙 GATT 客户端应用程序的功能。

这些函数允许枚举服务及其对象(包括服务、特征及其描述符),以及读取和写入功能。

相关推荐
流星白龙1 小时前
【Linux】35.封装 UdpSocket(2)
linux·运维·windows
waicsdn_haha2 小时前
Visual Studio Code 2025 安装与高效配置教程
c语言·ide·windows·vscode·微软·编辑器·win7
ChoSeitaku3 小时前
12.重复内容去重|添加日志|部署服务到Linux上(C++)
linux·c++·windows
Major_xx4 小时前
装win10系统提示“windows无法安装到这个磁盘,选中的磁盘采用GPT分区形式”解决方法
windows·gpt
CoderIsArt4 小时前
Windows图形开发库Kernel32,OpenGL32,Glu32,Gdi32与User32
windows
伪装成塔的小兵4 小时前
Windows使用docker部署fastgpt出现的一些问题
windows·docker·容器·oneapi·fastgpt
开开心心就好5 小时前
娱乐使用,可以生成转账、图片、聊天等对话内容
windows·python·智能手机·软件工程·娱乐·软件需求
~kiss~7 小时前
python的thrift2pyi学习
windows·python·学习
爱学习的大牛1238 小时前
ZLMediaKit Windows 编译指南
windows
cen难取名17 小时前
驱动开发WDK(1)-环境准备和初始程序。详细教程
驱动开发·microsoft