0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

低功耗蓝牙的简介

454398 来源:网络整理 作者:网络整理 2019-11-27 11:40 次阅读

简介

低功耗蓝牙的简介

低功耗蓝牙(BLE),有时也称为“蓝牙智能”,是经典蓝牙的轻量子集,是蓝牙4.0核心规范的一部分。尽管与经典的蓝牙有一些重叠,但BLE实际上具有完全不同的沿袭,并且由诺基亚作为内部项目“ Wibree”启动,然后被蓝牙SIG采纳。

有很多无线协议。对于工程师产品设计师来说,使BLE如此有趣的是,这几乎肯定是设计可以与现有的任何现代移动平台(iOSAndroid,Windows手机等)通信的东西的最简单方法。 Apple设备是唯一的硬件设计选项,不需要您无休止地钻研,即可合法地为iOS设备销售产品。

本指南将为您提供BLE的快速概述,特别是数据的处理方式

,以“蓝牙低功耗”的方式进行组织,以及设备如何宣传它们的存在,以便您可以连接到它们并开始来回传递数据。

BLE平台支持以下列出的大多数主要平台均支持蓝牙4.0和低功耗蓝牙(BT 4.0的子集):

iOS5 +(首选iOS7 +)

Android 4.3+(4.4+中的许多错误修复)

Apple OS X 10.6+

Windows 8( XP,Vista和7仅支持蓝牙2.1) )

GNU/Linux Vanilla BlueZ 4.93 +

GAP

GAP是通用访问配置文件的缩写,它控制蓝牙中的连接和广告。 GAP使您的设备对外界可见,并确定两个设备如何(或不能)彼此交互。

设备角色 GAP定义了设备的各种角色,但是要记住的两个关键概念是 Central 设备和 Peripheral 设备。

外围设备设备是小型,低功耗,资源受限的设备,可以连接到功能更强大的中央设备。外围设备是诸如心率监视器,启用了BLE的接近标签之类的东西。

中央设备通常是您连接的具有更大处理能力的手机或平板电脑和记忆。

和扫描响应数据。通过GAP发送广告有两种方法。 广告数据 有效载荷和扫描响应有效载荷。

两个有效载荷是相同的,最多可以包含31字节的数据,但是只有广告数据有效负载是强制性的,因为这是不断从设备传输出去的有效负载,以使范围内的中央设备知道它的存在。扫描响应有效负载是中央设备可以请求的可选辅助有效负载,并允许设备设计人员在广告有效负载中添加更多信息,例如设备名称字符串等。

广告过程下图应说明广告过程以及广告有效载荷和扫描响应有效载荷的方式

外围设备将设置一个特定的广告间隔,并且每经过此间隔,它将重新传输其主要广告包。如果设备仅每2秒而不是每20ms发布一次广告,则较长的延迟可以节省功率,但响应速度会变慢。

如果侦听设备对扫描响应有效负载(并且在外围设备上可用)感兴趣,则可以选择请求扫描响应有效负载,外围设备将使用其他数据进行响应。

广播网络拓扑外设通告自己,以便可以建立连接并可以使用GATT服务和特征(这允许双向交换更多数据),在某些情况下,您只想通告数据。

这里的用例是您希望外围设备一次将数据发送到多个设备。这只能通过广告数据包实现,因为在连接模式下发送和接收的数据只能被这两个连接的设备看到。

通过在31字节广告或扫描响应有效载荷中包含少量自定义数据,您可以使用低成本的蓝牙低功耗外设,可将数据单向发送到侦听范围内的任何设备,如下图所示。这在低功耗蓝牙技术中被称为广播。

例如,这是Apple的iBeacon所使用的方法,它使用 Manufacturer Specific数据字段。

一旦您在外围设备和中央设备之间建立了连接,广告过程通常将停止,并且通常将不再能够发送广告包,并且您将使用GATT服务和特性在两个方向上进行通信。/div》

GATT

GATT是“通用属性配置文件”的缩写,它定义了两个低功耗蓝牙设备使用称为服务的概念来回传输数据的方式。 》和特征。它使用称为属性协议(ATT)的通用数据协议,该协议用于在表中的每个条目使用16位ID的简单查找表中存储服务,特征和相关数据。 。

一旦在两个设备之间建立了专用连接,GATT就开始起作用,这意味着您已经完成了GAP规定的广告流程。

GATT和连接要记住的最重要的一点是连接是排他的。这意味着 BLE外围设备一次只能连接到一个中央设备(移动电话等)!外围设备一旦连接到中央设备,它将立即停止广告本身,其他设备将无法再看到它或连接到它,直到现有的连接断开。

建立连接也是允许双向通信的唯一方法,其中中央设备可以发送有意义的数据到外围设备,反之亦然。

拓扑下图应说明蓝牙低能耗设备在连接环境中的工作方式。外围设备一次只能连接到一个中央设备(例如移动电话),但是中央设备可以连接到多个外围设备。

如果需要在两个外围设备之间交换数据,则需要在所有消息都通过中央设备的地方实现自定义邮箱系统。

一旦外围设备与中央设备之间建立了连接,通信就可以双向发生,与仅使用广告数据和GAP的单向广播方法不同。

GATT交易与GATT一起理解的一个重要概念是服务器/客户端关系。

外围设备称为 GATT服务器,其中包含ATT查找数据,服务和特征定义,以及 GATT客户端(电话/平板电脑),向该服务器发送请求。

所有交易均由主设备GATT客户端启动,该设备从从设备GATT接收响应服务器。

何时建立建立连接后,外围设备将向中央设备建议一个“连接间隔”,并且中央设备将尝试重新连接每个连接间隔,以查看是否有新数据可用,等等。务必牢记此连接间隔不过,这实际上只是一个建议!您的中央设备可能无法满足请求,因为它正忙于与另一个外围设备通信,或者所需的系统资源不可用。

下图应说明外围设备(GATT服务器)与外部设备之间的数据交换过程。中央设备(GATT客户端),主设备启动每个事务:

服务和特征 GATT BLE中的事务基于称为 Profiles , Services 和 Characteristics 的高级嵌套对象,如下图所示:

配置文件

配置文件实际上不在BLE外围设备本身上,这很简单,已定义的已定义服务集合由蓝牙SIG或外围设计人员堆积。例如,心率配置文件将心率服务和设备信息服务结合在一起。可以在此处查看正式采用的基于GATT的配置文件的完整列表:配置文件概述。

Services

Services用于将数据分解为逻辑实体,并包含称为特征的特定数据块。服务可以具有一个或多个特征,并且每个服务都通过称为UUID的唯一数字ID与其他服务区分开,UUID可以是16位(对于正式采用的BLE服务)或128位(对于自定义服务) )。可以在Bluetooth Developer Portal的“服务”页面上查看正式采用的BLE服务的完整列表。例如,如果您查看心率服务,我们可以看到此正式采用的服务具有16位UUID 0x180D,并包含多达3个特征,尽管只有第一个是必选的:心率测量,身体传感器位置和心率控制点。

特征

GATT事务中最底层的概念是“特征”,它封装了一个数据点(尽管它可能包含一系列相关数据数据,例如来自3轴加速度计的X/Y/Z值等)。

与服务类似,每个特性通过预定义的16位或128位UUID进行区分。可以免费使用Bluetooth SIG定义的标准特性(确保跨BLE启用的硬件/软件之间的互操作性),也可以定义自己的自定义特性,只有外围设备和软件可以理解。

例如,心率测量特性对于心率服务是必选的,并且使用0x2A37的UUID。它以一个描述HRM数据格式的单个8位值开头(无论数据是UINT8还是UINT16等),然后继续包含与该配置字节匹配的心率测量数据。

特征是重点是您将与BLE外设进行交互,因此了解这一概念很重要。它们还用于将数据发送回BLE外设,因为您也可以写入特征。您可以实现一个具有自定义“ UART服务”和两个特征的简单UART类型接口,一个特征用于TX通道,一个特征用于RX通道,其中一个特征可能被配置为只读,而另一个则具有写特权。/p》

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 蓝牙
    +关注

    关注

    112

    文章

    5426

    浏览量

    165627
收藏 人收藏

    评论

    相关推荐

    低功耗蓝牙技术的特点 低功耗蓝牙如何实现低功耗

    低功耗蓝牙技术是一种优化的蓝牙技术,专为满足低功耗需求而设计。它通过采用一系列节能措施和技术,实现了更低的功耗消耗,延长了设备的续航时间。
    的头像 发表于 02-07 16:49 742次阅读

    低功耗蓝牙技术发展势头强劲

    今天要跟大家讨论的是低功耗蓝牙技术(BLE)。就字面意思来说,与经典的蓝牙技术相比,低功耗蓝牙技术胜在
    的头像 发表于 01-20 10:32 870次阅读

    一文读懂低功耗蓝牙的应用

    蓝牙技术联盟于2010年推出了蓝牙4.0规范,其中低功耗蓝牙的出现满足了小型电池供电设备进行低功耗无线连接的需求,因此得到广泛应用。本文章将
    的头像 发表于 12-28 08:24 411次阅读
    一文读懂<b class='flag-5'>低功耗</b><b class='flag-5'>蓝牙</b>的应用

    【应用笔记】STM32WB 低功耗蓝牙无线接口

    低功耗蓝牙是由蓝牙技术联盟(Bluetooth SIG)设计和销售的无线个人局域网技术,该技术面向医疗保健、健身、信标、安全和家庭娱乐行业的创新应用。与标准蓝牙相比,
    发表于 12-12 16:30 1次下载

    蓝牙低功耗系统的开发

    电子发烧友网站提供《蓝牙低功耗系统的开发.pdf》资料免费下载
    发表于 11-10 16:16 2次下载
    <b class='flag-5'>蓝牙</b><b class='flag-5'>低功耗</b>系统的开发

    海凌科BLE低功耗蓝牙模块物联网应用

    低功耗蓝牙(Bluetooth Low Energy、低功耗蓝牙,俗称BLE,以前称为Bluetooth Smart )一般来说是指支持蓝牙
    的头像 发表于 10-16 10:12 662次阅读
    海凌科BLE<b class='flag-5'>低功耗</b><b class='flag-5'>蓝牙</b>模块物联网应用

    使用STM32CubeMX和X_CubeBLE例程开发基于STM32的低功耗蓝牙应用

    蓝牙4.0技术简介蓝牙无线技术是使用范围最广泛的全球短距离无线标准之一,全新的蓝牙4.0版本将三种蓝牙技术(传统
    发表于 09-08 06:02

    通过蓝牙低功耗蓝牙(LE)唤醒主机

    电子发烧友网站提供《通过蓝牙低功耗蓝牙(LE)唤醒主机.pdf》资料免费下载
    发表于 08-16 16:52 0次下载
    通过<b class='flag-5'>蓝牙</b>或<b class='flag-5'>低功耗</b><b class='flag-5'>蓝牙</b>(LE)唤醒主机

    低功耗蓝牙协议栈 API 参考手册:基础 Rev.1.19

    低功耗蓝牙协议栈 API 参考手册:基础 Rev.1.19
    发表于 07-07 19:18 1次下载
    <b class='flag-5'>低功耗</b><b class='flag-5'>蓝牙</b>协议栈 API 参考手册:基础 Rev.1.19

    自定义蓝牙低功耗配置文件

    自定义蓝牙低功耗配置文件
    发表于 07-06 19:24 0次下载
    自定义<b class='flag-5'>蓝牙</b><b class='flag-5'>低功耗</b>配置文件

    低功耗蓝牙协议栈介绍

    低功耗蓝牙协议栈介绍
    发表于 07-04 19:32 2次下载
    <b class='flag-5'>低功耗</b><b class='flag-5'>蓝牙</b>协议栈介绍

    低功耗蓝牙芯片

    PHY6222 超低功耗蓝牙芯片 是一款低功耗蓝牙芯片,主要应用在数据传输的产品领域。例如,车载蓝牙、手环、医疗、
    发表于 06-27 17:30

    使用低功耗蓝牙进行位置分析

    电子发烧友网站提供《使用低功耗蓝牙进行位置分析.zip》资料免费下载
    发表于 06-15 11:38 0次下载
    使用<b class='flag-5'>低功耗</b><b class='flag-5'>蓝牙</b>进行位置分析

    低功耗蓝牙版本的特性演进简介

    蓝牙是一种基于2.4GHz ISM频段的短距离无线通信技术,具有低功耗、低成本、方便快捷的特点,被广泛应用于智能手机、电脑、无线遥控等场景,是实现无线通信的主流技术之一。自1999
    的头像 发表于 05-10 17:00 2528次阅读
    <b class='flag-5'>低功耗</b><b class='flag-5'>蓝牙</b>版本的特性演进<b class='flag-5'>简介</b>

    有可以进行mesh组网的低功耗蓝牙模块么?

    有可以进行mesh组网的低功耗蓝牙模块么?这种低功耗蓝牙模块组网支持多少个节点?是低功耗蓝牙模块
    发表于 05-09 17:16