当前位置: 首页 > news >正文

营销型设计网站网站 系统 区别

营销型设计网站,网站 系统 区别,网站建设项目进展情况汇报,运营网站前言 这阵子用到蓝牙比较多#xff0c;想写一个专栏专门讲解蓝牙协议及其应用#xff0c;本篇是第一篇文章#xff0c;讲解低功耗蓝牙和蓝牙协议栈。 参考网上各大神文章#xff0c;及瑞萨的文章#xff0c;参考GPT#xff0c;并且加入了一些本人的理解。 图片部分源自…前言 这阵子用到蓝牙比较多想写一个专栏专门讲解蓝牙协议及其应用本篇是第一篇文章讲解低功耗蓝牙和蓝牙协议栈。 参考网上各大神文章及瑞萨的文章参考GPT并且加入了一些本人的理解。 图片部分源自网络侵删。 有纰漏请指出转载请说明。 学习交流请发邮件 1280253714qq.com 专业名词解释 BLEBluetooth Low Energy低功耗蓝牙SIGSpecial Interest Group蓝牙技术联盟ISMIndustry Science Medical工业、科学、医学IEEEInstitute of Electrical and Electronic Engineers美国电气与电子工程师学会HIDHunman Interface Device人机交互设备PDUProtocol Data Unit协议数据单元PHYPhysical Layer物理层LLLink Layer链路层HCIHost Controller Interface主机控制器接口L2CAPLogical Link Control and Adaptation Layer Prot逻辑链路控制和适配协议ATTAttribute protocal属性协议GATT(Generic Attribute Profile)通用属性协议SMSecurity Manager安全管理GAPGeneric Access Protocol通用访问协议UUIDUniversally Unique Identifier通用唯一识别码 蓝牙是什么 蓝牙是一种无线通信技术用于在短距离范围内传输数据。它可以连接不同类型的设备如手机、电脑、音响等使它们之间可以进行数据传输和通信。蓝牙技术广泛应用于无线耳机、蓝牙音箱、蓝牙键盘鼠标、蓝牙打印机等各种消费电子产品中。蓝牙技术具有低功耗、简单易用、成本低廉等优点因此被广泛应用于各种领域。 蓝牙工作在全球通用的2.4GHz ISM即工业、科学、医学频段使用IEEE802.11协议。 低功耗蓝牙BLE BLE是低功耗蓝牙的英文缩写Bluetooth Low Energy是蓝牙4.0版本起开始支持的新的、低功耗版本的蓝牙技术规范。 蓝牙技术联盟Bluetooth SIG在2010年发布了跨时代的蓝牙4.0它并不是蓝牙3.0的简单升级版本而是全新的技术架构蓝牙4.0版本分两种模式单模蓝牙和双模蓝牙。 常见的蓝牙音箱是典型的双模蓝牙它需要传输大量的音频数据。而小米手环蓝牙温度计则属于单模蓝牙。行业里一般不讲单模蓝牙而是统一称为低功耗蓝牙。 蓝牙 4.0 协议版本在蓝牙 3.0 高速版本的基础上增加了低功耗的部分。 有些嵌入式设备在很多应用场景要求能耗非常低但要求的传输速率不高对于这类设备可以仅实现 4.0 协议中低功耗能蓝牙部分通过与支持双模的主机设备进行通信或者跟同类设备通信。广泛应用于计步器、心律监视器、智能仪表、传感器物联网等众多领域大大扩展蓝牙技术的应用范围。 蓝牙 4.0 的芯片模式分为 Single mode 与 Dual mode。Single mode 只能与蓝牙 4.0 互相传输无法向下与 3.0/2.1/2.0 版本兼容Dual mode 可以向下兼容 3.0/2.1/2.0 版本。 BLE有很多功能例如 1.允许设备物理定位其他设备。例如使用智能手机寻找启用了BLE的钥匙链反之亦然。 2.通过BLE传输人机接口设备HID数据。例如用于键盘、鼠标、遥控器等设备。 3.通过BLE传输传感器数据。 //这些功能都是通过“服务”的方式来进行SIG定义的16bit的UUID服务包括 /// name 16bit Service UUIDs in air format. /// sa https://developer.bluetooth.org/gatt/services/Pages/ServicesHome.aspx ///{ /** Alert Notification Service */ #define ADV_UUID_ALERT_NOTIFICATION_SERVICE \x11\x18 /** Battery Service */ #define ADV_UUID_BATTERY_SERVICE \x0F\x18 /** Blood Pressure */ #define ADV_UUID_BLOOD_PRESSURE_SERVICE \x10\x18 ... 硬件配置 1.大多数传感器应用倾向于使用集成处理器(SoC)硬件配置因为它可以降低整体系统的复杂性和相关的印刷电路板(PCB)实现成本。 2.强大的计算设备如智能手机和平板电脑通常选择外部处理器配备相应的人机交互协议HCI协议这些协议可以是专有的或标准的。这种方法还允许集成专门的微控制器进行蓝牙低功耗BLE连接而无需修改整体设计。 配置文件与协议 蓝牙规范明确区分了协议和配置文件的概念。这种区别是由于每个概念所服务的目的不同。总体规格分为: 协议:是所有符合蓝牙规范的设备所使用的构建块。协议本质上构成了实现不同数据包格式、路由、多路复用、编码和解码的层这些层允许数据在对等点之间有效地发送。 配置文件:是功能的垂直切片定义所有设备所需的基本操作模式(如通用访问配置文件和通用属性配置文件)或特定用例(接近配置文件葡萄糖配置文件);概要文件本质上指定了应该如何使用协议来实现特定的目标无论是通用的还是特定的。 广播与连接 BLE设备使用两种不同的通信方法广播和连接。每种方法都有一定的优点和局限性这两种方法都遵循通用访问配置文件(GAP)建立的某些程序。 面向连接时角色为客户端和服务端 Central--Peripheral 允许连接 中央设备通常是具有更强的处理能力和电池电量如智能手机。外围设备通常是处理能力较低且能源资源有限的设备如健身追踪器、心率监测器等。 在连接的过程中外围设备发送可连接的广播包中央设备扫描到广播包后发送连接请求之后建立连接。一旦连接建立外围设备和中央设备遵循一定的时序定期传输数据数据可以双向传输。 面向广播角色为广播者和扫描者 Observer--Broadcast 只能广播 广播时广播设备发送无连接的广播包到任何正在扫描的设备只有通过广播才能在同一时刻内将一端数据传输到多端。 蓝牙广播包 先用通俗的方法来讲解一下蓝牙数据包的组成比如我要将传感器数据01A9发出去作为开发者只需要将传感器数据01A9丢到应用层。 但是实际上BLE协议栈不只发传感器数据01A9我们先来看一下简单的广播情况这种情况下我们把设备A叫advertiser广播者设备B叫scanner或者observer扫描者。由于设备B可以同时接收到很多设备的广播因此数据包还必须包含设备A的设备地址0x8E89BED6以确认该广播包来自设备A链路层还要检查数据的完整性即数据在传输过程中有没有发生窜改为此引入CRC24对数据包进行检验 (假设为0x73D165) 同时还要标明这一帧数据的长度。同时为了调制解调电路工作更高效每一个数据包的最前面会加上1个字节的preamble前导帧preamble一般为0x55或者0xAA。这样整个空中包就变成AA 8E89BED6 02 1A 48872D9B16EB 03 03 0A18 09 09 444C472D5052454C 05 FF CDAB A901 73D165 注空中包用小端模式表示 以下是用纬图抓包得到的结果 有关服务的内容后面再讨论 前导序列访问地址PDU报头PDU长度PDU数据CRC preamble 1-2 Access-Address 4 PDU 2-258 CRC 3 广播模式 //广播模式有很多种包括ADV_IND 可连接的非定向广播表示当前设备可以接受任何设备的连接请求ADV_DIRECT_IND可连接的定向广播设备不能被主动扫描ADV_NONCONN_IND不可连接的非定向广播仅发送广播数据而不被连接ADV_SCAN_IND可扫描的非定向广播设备可以被发现既可以发送广播数据也可以响应扫描发送扫描回应数据但不能建立连接SCAN_REQ主动扫描请求SCAN_RSP 主动扫描回复CONNECT_REQ 连接请求.../* Advertise mode operations *//* ************************************************ *//// Start non connectable advertisingGAPM_ADV_NON_CONN,/// Start undirected connectable advertisingGAPM_ADV_UNDIRECT,/// Start directed connectable advertisingGAPM_ADV_DIRECT,/// Start directed connectable advertising using Low Duty CycleGAPM_ADV_DIRECT_LDC,/// Update on the fly advertising dataGAPM_UPDATE_ADVERTISE_DATA,/* Scan mode operations *//* ************************************************ *//// Start active scan operationGAPM_SCAN_ACTIVE,/// Start passive scan operationGAPM_SCAN_PASSIVE, ... 广播地址Broadcast-Address是一个固定值0x8E89BED6扫描到数据包后验证确认是广播访问地址后才把它认定为广播包否则认为是噪音或者无效包 数据访问地址Access-Address是一个随机值不同的连接对应不同的值当主机扫描到广播后发送连接请求这个请求会包含一个连接访问地址断开重连后此地址不同随机生成连接上后数据包都是用这个地址 数据传输单元PDU蓝牙PDUProtocol Data Unit是蓝牙通信中的数据传输单元。 PDU是在蓝牙协议栈的不同层之间传输的数据包。在蓝牙协议栈中PDU被用于在不同的层之间传递数据和控制信息。不同的层会根据自身的功能和需求对PDU进行封装和解封装。 在蓝牙物理层PDU通常包含了物理层的控制信息如同步字、帧类型、频道指示等。物理层的PDU被称为PHY PDU。 在蓝牙链路层PDU被称为LL PDU包含了链路层的控制信息和数据。LL PDU被用于处理蓝牙设备之间的连接管理、数据传输和错误检测等功能。 在蓝牙协议的更高层如L2CAP逻辑链路控制和适配协议、RFCOMM串行端口协议和应用层PDU被用于封装和传输更高层的数据和控制信息。 总之蓝牙PDU是蓝牙通信中的数据传输单元用于在不同层之间传递数据和控制信息。不同层的PDU具有不同的结构和功能用于实现蓝牙协议栈的各项功能。 链路状态机 蓝牙链路状态机是指蓝牙设备在建立和维护蓝牙连接时所遵循的状态转换规则。蓝牙链路状态机由一系列状态和事件组成设备在不同的状态下对不同的事件做出相应的响应。状态转换规则可以根据蓝牙协议规范进行定义和实现以确保蓝牙设备之间的连接能够正确建立和维护。 Standby待机状态 Advertising: 发送广播包 Scaning主动或被动扫描 Initiating初始化连接设备 Connection连接上可通信状态。 BLE协议栈 蓝牙协议栈有点难但是如果学过OSI参考模型这里应该就比较好理解一些。 其实就是每一层向下封装向上提供服务。 OSI参考模型是一种用于描述计算机网络体系结构的概念模型它将网络通信过程划分为七个不同的层次。每一层都有不同的功能和责任下面是对每一层的简要描述 物理层Physical Layer该层负责传输数据的物理媒介例如电缆、光纤等。它定义了电气、光学和机械特性以及数据的传输速率、编码和调制等。 数据链路层Data Link Layer该层负责在物理连接上传输数据帧并提供错误检测和纠正的功能。它将原始比特流转换为有意义的数据块并通过帧同步和流量控制来管理数据的传输。 网络层Network Layer该层负责在不同网络之间进行数据路由和转发。它使用IP地址来标识和定位网络设备并通过路由选择算法将数据包从源主机传输到目标主机。 传输层Transport Layer该层负责提供端到端的可靠数据传输。它通过分段和重组数据流并为数据包提供错误检测和纠正以确保数据的完整性和可靠性。 会话层Session Layer该层负责建立、管理和终止会话Session或连接。它提供了会话控制和同步功能以及数据交换的管理机制。 表示层Presentation Layer该层负责数据的格式化和表示以便不同系统之间的互操作性。它处理数据的加密、压缩和转换以确保数据的安全性和可靠性。 应用层Application Layer该层负责提供特定应用程序的服务和协议。它包含了各种应用层协议如HTTP、FTP、SMTP等用于实现不同的应用功能。 每一层都在为上一层提供服务并利用下一层的功能来实现数据通信。通过这种分层的结构网络协议的设计和实现变得更加模块化和可扩展不同的层次可以独立进行开发和优化。 协议栈分为主要的三层控制器、主机和应用。 蓝牙协议栈通常由控制器、主机和应用三个部分组成它们各自承担着不同的功能和责任。 控制器Controller控制器是蓝牙协议栈的底层硬件部分通常由蓝牙芯片实现。控制器负责处理物理层和数据链路层的功能包括发送和接收蓝牙信号、处理频率跳转、执行链路管理和错误处理等。控制器通过蓝牙HCIHost Controller Interface与主机进行通信。 主机Host主机是蓝牙协议栈的中间层负责处理网络层、传输层和会话层的功能。主机通过蓝牙HCI与控制器通信控制器将处理后的数据传输给主机。主机负责管理蓝牙连接、数据传输和协议处理如路由选择、分段和重组数据、建立和终止会话等。 应用Application应用层是蓝牙协议栈的最上层负责提供特定应用程序的服务和功能。应用层使用主机层提供的协议和接口实现各种蓝牙应用如文件传输、音频传输、设备控制等。应用层可以根据具体需求开发自定义的蓝牙应用程序。 总结起来控制器负责底层物理层和数据链路层的处理主机负责中间层的网络层、传输层和会话层的处理应用层则负责最上层的应用程序的服务和功能。通过这种分层结构蓝牙协议栈能够实现不同层次的功能划分和模块化开发从而提供灵活且可扩展的蓝牙通信能力。 蓝牙协议栈是一组协议层用于管理和控制蓝牙设备之间的通信。它分为以下几个层级每个层级都有不同的功能和任务 物理层Physical Layer物理层负责处理蓝牙设备之间的无线通信包括射频信号的发送和接收调制解调频率跳频等。它定义了蓝牙设备的无线通信规范确保设备之间可以正确地进行无线通信。 链路层Link Layer链路层负责建立和管理蓝牙设备之间的连接包括设备的发现、配对和连接过程。它还负责处理链路的管理和控制包括数据的分段和重组错误检测和纠正等。 L2CAPLogical Link Control and Adaptation Protocol层L2CAP 层位于链路层和应用层之间提供透明的数据传输服务以便上层的应用程序可以通过蓝牙连接进行数据交换。它负责数据的分段和重组通道管理服务质量控制等。 ATTAttribute Protocol层ATT 层位于 L2CAP 层之上用于在蓝牙设备之间传输和管理属性数据。它定义了属性的结构和操作包括属性的读写、通知和指示等。 GATTGeneric Attribute Profile层GATT 层是建立在 ATT 层之上的协议层用于定义和管理蓝牙设备的属性数据库。它提供了一种统一的数据模型和访问机制使得设备之间可以方便地交换和访问属性数据。 应用层Application Layer应用层是蓝牙协议栈的最上层负责处理具体的应用逻辑和功能。它可以是各种不同的应用程序如音频传输、数据同步、远程控制等。 总之蓝牙协议栈的各层在不同的层次上负责管理和控制蓝牙设备之间的通信和数据交换。它们共同工作实现了蓝牙设备之间的互操作性和功能扩展。 物理层PHY 物理层负责处理蓝牙设备之间的无线通信。它定义了蓝牙设备之间的无线传输方式和规范。 BLE蓝牙物理层使用2.4 GHz的ISM频段进行通信采用频率跳变扩频技术以减少干扰和提高通信质量。它将频率分成40个通道每个通道的宽度为1 MHz设备在通信过程中会不断地在这些通道之间进行频率跳变。 蓝牙物理层还定义了不同的传输速率包括1 Mbps的基本速率和2 Mbps的增强速率。这些速率可以根据通信需求和设备能力进行选择。 此外蓝牙物理层还定义了蓝牙设备之间的连接管理和功率控制以确保通信的稳定性和可靠性。它还支持多点连接使得一个设备可以同时与多个其他设备进行通信。 数据链路层LL LL层要做的事情非常多比如具体选择哪个射频通道进行通信怎么识别空中数据包具体在哪个时间点把数据包发送出去怎么保证数据的完整性ACK如何接收如何进行重传以及如何对链路进行管理和控制等等。LL层只负责把数据发出去或者收回来对数据进行怎样的解析则交给上层的GAP或者ATT数据包。 主机控制器接口HCI 控制器端的HCI通过标准化接口提供了与主机通信的手段。蓝牙规范将HCI定义为主机和控制器相互交互的一组命令和事件以及数据包格式和一组流控制和其他过程的规则。此外该规范还定义了几种传输每种传输都为特定的物理传输(UART、USB、SDIO等)增强了HCI协议。 主机端的HCI接口提供了一种通过标准化接口与控制器通信的方式。与控制器端HCI类似该层的实现是通过软件API或通过硬件接口(如UART或SPI)建立的。 特别说明如果主机和控制器都在同一片SOC上一般是低功耗产品那么HCI接口就是通过软件API实现的。 逻辑链路控制与适应协议L2CAP L2CAPLogical Link Control and Adaptation Protocol是蓝牙协议栈中的一个重要协议位于主机层和应用层之间。它的主要功能是提供透明的数据传输服务以便上层的应用程序可以通过蓝牙连接进行数据交换。 L2CAP 提供了以下主要功能 数据分段和重组L2CAP 将上层应用程序的数据分割成适合于蓝牙链路传输的小数据包并在接收端重新组装成完整的数据。这样可以有效地利用蓝牙链路的带宽和资源。 可靠的数据传输L2CAP 提供了可靠的数据传输机制包括数据包的确认、重传和错误检测等。这样可以确保数据的完整性和可靠性减少数据传输的错误和丢失。 通道管理L2CAP 可以在蓝牙连接中创建多个逻辑通道Logical Channel每个通道可以独立地传输数据。这样可以实现同时进行多个应用程序的数据传输提高蓝牙连接的效率和灵活性。 服务质量Quality of ServiceL2CAP 支持服务质量参数的设置可以根据应用程序的需求调整数据传输的优先级、延迟和带宽等。这样可以满足不同应用场景下的实时性和可靠性需求。 总之L2CAP 是蓝牙协议栈中的一个关键协议提供了可靠的数据传输和通道管理功能为上层的应用程序提供了高效、可靠的蓝牙数据交换服务。 L2CAP层为上层提供数据封装服务。因此L2CAP允许使用数据传输进行逻辑端到端通信。从本质上讲L2CAP作为一个协议多路复用器从上层接收多个协议并将它们封装成标准的BLE数据包格式反之亦然。L2CAP还负责包的碎片化和重组。在这个过程中来自发送端的上层的大数据包被装入最大有效载荷大小27字节的BLE数据包。接收端则是相反的过程零散的上层大数据包被多个小BLE数据包重新组装并向上游发送给相应的上层实体。L2CAP层负责两个主要协议:属性协议(ATT)和安全管理协议(SMP)。此外L2CAP还可以为高吞吐量的数据传输创建自己的用户定义通道这种特性称为基于LE信用的流量控制模式。 属性协议ATT 蓝牙ATTAttribute Protocol是蓝牙协议栈中的一个重要协议位于主机层和L2CAP之间。它是一种轻量级的协议用于在蓝牙设备之间传输和管理属性数据。 ATT 协议的主要功能包括 1. 属性定义ATT 协议使用属性Attribute来表示设备的各种功能和数据。每个属性都有一个唯一的标识符Attribute Handle和一个类型Attribute Type用于标识和描述属性的特性。 2. 属性读写ATT 协议提供了读取和写入属性值的操作。通过读取操作一个设备可以获取另一个设备的属性值。通过写入操作一个设备可以修改另一个设备的属性值。 3. 属性通知和指示ATT 协议支持属性通知和指示功能。设备可以通过通知或指示方式向其他设备发送属性值的更新信息。接收设备可以及时获取到更新的属性值以便做出相应的处理。 4. 属性控制ATT 协议支持属性的控制操作包括属性的添加、删除和修改等。设备可以通过控制操作来管理和配置属性以适应不同的应用需求。 5. 属性权限ATT 协议定义了属性的权限机制用于控制对属性的访问权限。不同的属性可以设置不同的权限以保护属性的安全性和隐私性。 ATT 协议是蓝牙低功耗Bluetooth Low EnergyBLE技术中的核心协议用于实现低功耗、短距离通信和设备间的数据交换。它提供了灵活、高效的属性数据传输和管理机制为蓝牙设备之间的通信和互操作性提供了基础。 ATT层使BLE设备能够向另一个BLE设备提供某些数据片段(称为属性)。在ATT上下文中公开属性的设备称为服务器对这些属性感兴趣并使用这些属性的对等设备称为客户端。设备的链路层状态(主或从)与设备的ATT角色无关。例如主设备可以是ATT服务器或ATT客户端而从设备也可以是ATT服务器或ATT客户端。一个设备同时是ATT服务器和ATT客户端也是可能的。本质上ATT是一个简单的基于设备所呈现的属性的客户机/服务器无状态协议。客户端向服务器请求数据服务器向客户端发送数据。该协议是严格的这意味着在一个待处理请求的情况下(即对于已经发出的请求还没有收到响应)在响应被接收和处理之前不能提交进一步的请求。在两个对等点同时充当客户端和服务器的情况下这独立地适用于两个方向。每个ATT服务器包含以属性形式组织的数据每个属性被分配一个16位的属性句柄称为通用唯一标识符(UUID)一组权限最后是一个值。实际上属性句柄只是一个用于访问属性值的标识符。UUID指定值中包含的数据的类型和性质。当客户机希望从服务器读取或向服务器写入属性值时它使用属性句柄向服务器发出读取或写入请求。服务器将使用属性值或确认进行响应。在读取操作的情况下由客户端根据属性的UUID解析值并理解数据类型。另一方面在写操作期间期望客户端提供与属性类型一致的数据如果不是这种情况服务器可以自由地拒绝该操作。 通用属性配置文件(GATT) 通用属性配置文件(GATT)层是一个服务框架它定义了使用属性协议(ATT)的所有子过程。GATT详细描述了如何通过BLE连接交换配置文件和用户数据。GAP定义了与设备的低级交互而GATT只处理实际的数据传输过程和格式。 GATT还为SIG定义的所有基于GATT的配置文件提供了参考框架。通过有效地覆盖配置文件的精确用例GATT确保了来自不同供应商的设备之间的互操作性。因此所有标准BLE配置文件都是基于GATT的必须遵守GATT才能正确运行。这使得GATT成为BLE规范的关键部分因为与应用程序和用户相关的每个数据收集都必须根据其规则进行格式化、打包和传输。 GATT为交互BLE设备定义了两个角色: 客户端:向服务器发送请求接收响应和潜在的服务器发起的更新。GATT客户端事先并不知道服务器的属性因此它必须首先通过服务发现来查询这些属性的存在和性质。服务发现完成后它开始读写在服务器上找到的属性并接收服务器发起的更新。它对应于ATT客户端。 服务器:接收来自客户端的请求并发出响应。它还发送服务器发起的更新(当配置为这样做时)并且是负责存储用户数据并使用户数据对客户端可用的角色以属性组织。销售的每个BLE设备必须至少包括一个基本的GATT服务器该服务器可以响应客户端请求即使只是返回错误响应。对应于ATT服务器。 GATT和GAP角色是完全独立的但同时彼此兼容。例如GAP中心设备和GAP外围设备都可以充当GATT客户机或服务器甚至可以同时充当两者。 GATT使用ATT作为设备间数据交换的传输协议。这些数据在称为服务的部分中按层次组织这些部分将概念上相关的用户数据片段(称为特征)分组。 通用访问配置文件(GAP) 通用访问配置文件(GAP)层负责整个连接功能。GAP处理设备的访问模式和过程包括直接与应用程序和/或配置文件接口的设备发现并处理设备的设备发现和与连接相关的服务。此外GAP还负责安全特性的启动。 从本质上讲GAP可以被视为BLE最顶层的控制层因为GAP规定了设备如何执行设备发现和建立安全连接等控制过程。这样做是为了确保互操作性从而允许来自不同供应商的设备之间的数据交换。 GAP规定了设备在BLE网络中可以扮演的四种角色: 广播器:设备用特定的数据做广告让任何发起的设备知道例如它是一个可以建立连接的设备。此通告包含设备地址和可选的附加数据如设备名称。 观察者:扫描设备在收到广告后向广告方发送“扫描请求”。广告商的回应是“扫描回应”。这是设备发现的过程在此之后扫描设备意识到广告设备的存在并且知道与广告设备的连接是可能的。 中心:发起连接时中心设备必须指定要连接的对端设备地址。如果收到与对端设备地址匹配的通告中心设备将发出请求与该通告设备建立连接(链接)。它将在连接建立过程中考虑特定的连接参数。 外围设备:连接建立后如果设备是发布设备则充当从设备;如果设备是发起设备则充当主设备。 从根本上说GAP建立了不同的规则和概念集来规范和标准化设备的底层操作。特别是: 角色和它们之间的交互。 这些设备之间的操作模式和转换。 操作程序实现一致和可互操作的通信。 所有安全方面包括安全模式和程序。 非协议数据的附加数据格式。 服务 在蓝牙低功耗BLE中服务Service是指一组相关的特征Characteristics的集合用于定义蓝牙设备之间的数据交换和功能。每个BLE设备可以提供一个或多个服务每个服务可以包含一个或多个特征。 BLE服务通过唯一的服务UUIDUniversally Unique Identifier来标识UUID是一个128位的标识符用于唯一标识一个特定的BLE服务。常见的BLE服务包括 1. Generic Access Service (GAP)GAP服务是BLE设备中必须提供的一个基本服务用于管理设备的连接和广告。它包含了设备名称、外观、连接参数等信息。 2. Generic Attribute Service (GATT)GATT服务是BLE设备中定义的一种通用属性协议用于在设备之间传输和管理属性数据。GATT服务包含了一个或多个特征每个特征包含了一个或多个属性值。 3. Battery Service电池服务用于获取BLE设备的电池电量信息。它包含了一个电池电量特征可以通过读取该特征的值来获取设备的电池电量。 4. Heart Rate Service心率服务用于获取BLE设备的心率数据。它包含了一个心率测量特征可以通过读取该特征的值来获取设备的心率数据。 5. Environmental Sensing Service环境传感服务用于获取BLE设备的环境传感数据如温度、湿度、光照等。它包含了多个环境传感特征每个特征对应一种环境传感数据。 6. Health Thermometer Service健康温度计服务用于获取BLE设备的体温数据。它包含了一个体温测量特征可以通过读取该特征的值来获取设备的体温数据。 这些是一些常见的BLE服务不同的设备可能会提供不同的服务和特征以实现各种不同的功能和应用。通过BLE服务设备可以实现数据的传输、监测和控制等功能。 参考文章 全面且简单明了的蓝牙服务及UUID介绍 BLE低功耗蓝牙技术详解 协议栈文档 1. Introduction — DA14585/DA14531 SW Platform Reference Manual 服务 DA145XX Tutorial Create a Custom GATT Profile — DA145XX Tutorial Create a Custom GATT Profile
http://www.hkea.cn/news/14437502/

相关文章:

  • 和动物做的网站吗网站图片命名规范
  • 亳州有做网站的吗全国电子商务公共服务网
  • 做淘宝客网站要多少钱关键词分为哪三类
  • 地方信息网站怎么做wordpress搜索功能主题
  • 临清网站推广怎么做营销网站推广
  • 网站建设公司的业务范围哪些网站是用c语言做的
  • 外贸网站建设公司策划湖北十堰
  • 钟表商城网站建设方案wordpress 知更
  • 虫部落导航网站怎么做专业网站建设详细方案
  • 网站文件夹 安全设置帝国cms网站迁移
  • 做网站su软件网站的营销与推广
  • 有个找人做任务赚返佣的网站做网站多少钱西宁君博领衔
  • 怎么做网站的图片网络营销主要做些什么
  • 湖北省建设厅造价官方网站如何弄死一个网站
  • 网站开发项目进度完成表珠海公众号开发公司
  • .net做网站教程徐州cms建站模板
  • 厦门定制网站建设杭州网站建站
  • 外贸公司 如何做公司网站找人做网站需要准备什么材料
  • 昆明网站建设推荐谁好呢布吉网站的建设
  • wordpress制作图片站网站建设介绍ppt模板下载
  • 微信网站开发流程图wordpress 模板吧
  • 小公司网站如何做高校网站建设管理办法
  • 是网站建设手机网站你了解的
  • 淘宝客做网站多少钱wordpress仿淘宝页面
  • 贵州省住房和建设厅网网站首页公司起名网站
  • 互联网营销师考试河南搜索引擎优化
  • 如何快速优化网站二级建造师考试
  • 网站开发工具链接服务器手机制作购物网站
  • 中国十二冶金建设有限公司网站建设门户网站的目的和需求
  • iframe 一直网站底部wordpress取消更改