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 天前
嵌入式 LVGL / SquareLine UI 标准命名规则(行业通用版)
windows·ui
小麦嵌入式1 天前
FPGA入门(四):时序逻辑计数器原理与 LED 闪烁实现
linux·驱动开发·stm32·嵌入式硬件·fpga开发·硬件工程·dsp开发
十八旬1 天前
快速安装ClaudeCode完整指南
开发语言·windows·python·claude
谁的小耳朵1 天前
一次小米电脑管家安装失败排查:官网安装包闪退,最后发现是埋点接口异常
windows
x***r1511 天前
DLL错误专修工具_TBI3264安装步骤详解(附DLL缺失一键修复与运行库安装教程)
windows
阿萨德528号1 天前
Windows RabbitMQ 启动完整指南(附启动报错解决、如何以服务方式后台运行)
windows·rabbitmq·ruby
私人珍藏库1 天前
[吾爱大神原创工具] 鼠标轨迹美化工具
windows·工具·鼠标·软件·win·多功能
小小测试开发1 天前
AI Agent 重构单体应用实战:1Password 经验与避坑指南
人工智能·windows·重构
您^_^1 天前
专家(一):Claude Code 微服务实战——6 个服务从拆分到 K8s 部署,$0.45 全套 YAML 照抄
人工智能·windows·微服务·架构·kubernetes·个人开发·claude code
TE-茶叶蛋1 天前
Java 8 引入的Stream API-stream()
java·windows·python