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 客户端应用程序的功能。

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

相关推荐
for_ever_love__1 天前
python基础语法学习: 数据容器
windows·python·学习
huainingning1 天前
微软windows系统官网IPV6临时地址介绍
windows·microsoft·智能路由器
小此方1 天前
Re:Linux系统篇(五十四)线程篇 · 七:互斥锁的底层实现原理:从硬件上下文、原子交换指令(Swap)到并发封装实战
linux·运维·驱动开发
.Peter1 天前
.NET/WPF 程序在部分 Windows 电脑无法保存用户环境变量:使用 DPAPI 实现安全兼容
windows·信息安全·c#·.net·wpf·环境变量·dpapi
码字的特恩1 天前
微软确认暂不为 Windows 11 加入透明效果自定义功能,建议用户使用第三方工具
人工智能·windows·算法·microsoft·计算机·大模型·编程
神奇小梵1 天前
安全和开发的需要了解的知识————下载内容的安全,和下载内容如何运行
android·windows·安全·个人开发
zhangfeng11331 天前
Windows AMD显卡跑PyTorch
人工智能·pytorch·windows
楷哥爱开发1 天前
如何在 Windows、macOS 和 Linux 上安装 scikit-learn (sklearn)
linux·windows·macos
2603_965148111 天前
eBay商品数据API:寻找海外仓与价格洼地
大数据·人工智能·windows·python·microsoft
江畔柳前堤2 天前
HBM:大语言模型时代的「算力血液」——从内存墙到带宽革命的深度拆解
服务器·人工智能·windows·目标检测·语言模型·自然语言处理·软件工程