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

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

相关推荐
jyOverQ9 小时前
ChatGPT Windows 客户端点击无反应、有进程却没窗口?一次 MSIX 非系统盘启动卡死的完整排查
windows·chatgpt
还是大剑师兰特12 小时前
MySQL8.0 Windows完整安装教程
windows·mysql·大剑师
redfred14 小时前
HandBrake 使用教程:开源视频压缩工具 视频太大压缩 MKV转MP4 批量转码 硬件加速 Windows/macOS/Linux
windows·开源·音视频
kakakahahahaha15 小时前
【Windows】C盘拒绝访问0x80070005的7步排查
windows·电脑·内容运营·软件需求
万年咸鱼17 小时前
Java ArrayList 详解:原理、用法与实战
java·开发语言·windows
奈斯先生Vector17 小时前
本地图片识别怎么接入多模态 AI?用 Python API 理解 GPT-4o Vision 的真实工作流
开发语言·人工智能·windows·python·网络协议·http·aigc
yyywxk18 小时前
ChatGPT/Codex Windows 桌面版“幽灵会话”问题:网页端已删除,桌面端仍显示且无法删除/归档
windows·chatgpt
万年咸鱼19 小时前
Java List 接口详解:从基础到实战
java·windows·list
Neighbor_OldY19 小时前
【实战复盘】RDP暴力破解与内网横向移动溯源:Windows全套排查命令与事件ID硬核解析
运维·windows·web安全
深念Y20 小时前
Windows 11 工具链部署与 SSH 踩坑笔记
windows·笔记·ssh