蓝牙 (六) Bluetooth Core_V4.0

2024-05-27 16:38
文章标签 core bluetooth 蓝牙 v4.0

本文主要是介绍蓝牙 (六) Bluetooth Core_V4.0,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • LE 综述
    在这里插入图片描述

  • 架构
    在这里插入图片描述

ble 没有 LMP 

全书架构overview 	volume 0book change volume 1host 		volume 3 // 必读hci 		volume 4 // 必读controllerbr/edr 	volume 2amp 	volume 5le 		volume 6 // 必读

架构

  • L2CAP
Logical Channel只有一条,而要利用它传输数据的上层应用却不止一个(例如协议框架中的ATT和SMP),怎么复用?L2CAP为上层协议提供面向连接和无连接的数据服务Logical Channel所能传输的有效payload长度最大只有251bytes,怎是否意味着上层应用每次只能传输少于这个长度的数据?(显然不能!)具有协议复用功能和分段和重新组装操作。L2CAP允许更高级别的协议和应用程序传输和接收最长64千字节的上层数据包(L2CAP服务数据单元,SDU)。Logical Channel仅提供了简单的应答和流控机制,如果传输的数据出错怎么办L2CAP还允许每个通道的流量控制和重传logic channel 有很多,具体用哪一个传输?L2CAP层提供名为L2CAP通道的逻辑通道,这些通道在一个或多个逻辑链路上进行多路复用。
  • sdp
服务发现协议(SDP)为应用程序提供了一种方法来发现哪些服务可用,并确定
那些可用的服务。
  • gap
介绍与传输和应用程序配置文件使用的模式和访问过程相关的定义、建议和通用要求。
描述设备如何在待机和连接状态下工作,以确保蓝牙设备之间始终可以建立链接和通道,并且可以进行多配置文件操作。
特别关注发现、链接建立和安全程序。
说明用户界面方面的要求,主要是编码方案和程序和参数的名称,以保证用户满意的体验。
  • att

属性协议允许被称为服务器的设备向被称为客户机的对等设备公开一组属性及其相关值。
服务器公开的这些属性可以由客户机发现、读取和写入,并且可以由服务器指示和通知。
  • gatt

通用属性配置文件(gatt)使用att定义服务框架。
这个框架定义了服务的过程和格式及其特性。
定义的过程包括发现、读取、写入、通知和指示特性,以及配置特性的广播。

1.1 属性构成 (ATT) // volume 3 Part F 3.3属性句柄属性类型属性值属性许可1.2 GATT 服务器 中的属性(属性实例) // volume 3 Part G 3服务服务声明include声明特性特性声明特性值声明特性描述声明2.1 操作属性的方法及对应的PDU(L2CAP的负载,ATT层的封包) (ATT) // volume 3 Part F 3.42.1.1 分类标准 (按交互方式)request 与 responsecommandnotificationindication 与 confirmation2.1.2 分类标准 (按交互内容)Error Handling 方法Exchange MTU 方法requestresponse2.2 GATT 规程 (对n个操作属性方法的封装) // volume 3 Part G 4Server Configuration 规程Exchange MTU 方法Error Handling 方法

这篇关于蓝牙 (六) Bluetooth Core_V4.0的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1008023

相关文章

开放式耳机好用?平价开放式耳机推荐?四款开放式的蓝牙耳机推荐

开放式耳机好用吗?有平价些的开放式耳机推荐吗?那这两个问题的回答当然是肯定的。 首先开放式耳机好不好用取决于对耳机的需求,因为开放式耳机其实是比较适用于需要注意周围环境、需要‌长时间佩戴舒适以及需要频繁与人交流的场景中,在这些场景下使用开放式耳机的话就会比较有优势。就例如跑步骑行健身等运动的时候,能够兼得佩戴舒适度的同时,增加一定的安全性;还有在办公学习的时候,会很适合长时间佩戴,能够方便和

Web Bluetooth 与点对点连接

前言 需求需要实现手持终端设备与 web 网页的点对点数据传输,不希望有服务器参与,想到了 web 的 USB 与 Bluetooth API,对 Web Bluetooth API 进行了研究。 蓝牙 GATT 基础知识 GATT(通用属性配置文件,蓝牙低功耗(BLE)中定义的一种规范)定义了如何在蓝牙低功耗设备之间进行数据的传输和交互。它规定了蓝牙设备之间的数据格式、通信协议以及数据的组

jupyter在加载pkl文件时报错ModuleNotFoundError: No module named 'pandas.core.internals.managers'; '的解决方法

笔者当看到这个错误的时候一脸懵逼,在pycharm上正常运行的code 放在jupyter就不成了,于是就研究一翻。 一开始以为自己的pkl文件有问题,研究重点放在这里,最后发现不是。 然后取搜索pycharm和jupyter下的python的\Lib\site-packages\pandas\core\internals有什么不同 发现jupyter下没有pandas\core\intern

Flutter 中的低功耗蓝牙概述

随着智能设备数量的增加,控制这些设备的需求也在增加。对于多种使用情况,期望设备在需要进行控制的同时连接到互联网会受到很大限制,因此是不可行的。在这些情况下,使用低功耗蓝牙(也称为 Bluetooth LE 或 BLE)似乎是最佳选择,因为它功耗低,在我们的手机中无处不在,而且无需连接到更广泛的网络。因此,蓝牙应用程序的需求也在不断增长。 通过阅读本文,您将了解如何开始在 Flutter 中开

开放式蓝牙耳机哪个品牌好用?盘点五款超优秀的开放式耳机!

开放式蓝牙耳机现在挺受欢迎的,它们最大的好处就是不塞耳朵,戴着舒服,特别适合长时间佩戴。而且,这种耳机能让你在听音乐的同时,还能听到周围的环境声,这样在外面运动或者骑车的时候就更安全。音质方面,现在的开放式耳机也做得越来越好,有些高端款式还有特别的技术来减少漏音,保护你的隐私。但是现在市场上的开放式耳机品牌太多了,很多人不知道怎么选?为了帮助您在众多选项中做出选择,我根据个人经验挑选了一些表现良好

Anroid BLE蓝牙(手机分别作为中心设备和外围设备)

蓝牙是一种短距的无线通讯技术,可实现固定设备、移动设备之间的数据交换。一般将蓝牙3.0之前的BR/EDR蓝牙称为传统蓝牙,而将蓝牙4.0规范下的LE蓝牙称为低功耗蓝牙。  BLE蓝牙模块主要应用领域     1、移动扩展设备     2、汽车电子设备     3、健康医疗用品:心跳带、血压计等     4、定位应用:室内定位、井下定位等     5、近距离数据采集:无线

C#/.NET/.NET Core推荐学习路线文档文章

前言 专门为C#/.NET/.NET Core推荐学习路线&文档&文章提供的一个Issues,各位小伙伴可以把自己觉得不错的学习路线、文档、文章相关地址分享出来🤞。 https://github.com/YSGStudyHards/DotNetGuide/issues/10 🏷️C#/.NET/.NET Core优质学习资料 📚.NET 入门教程 📚

ASP.NET Core 入门教学十七 GraphQL入门指南

GraphQL 是一种用于 API 的查询语言,允许客户端请求所需的数据,并能够合并多个资源到一个请求中。在 ASP.NET Core 中使用 GraphQL 可以提供更灵活、高效和实用的数据查询方式。以下是 ASP.NET Core 中 GraphQL 的入门指南: 1. 安装必要的 NuGet 包 首先,你需要安装以下 NuGet 包: GraphQLGraphQL.Server.Tra

linux bluez bluetooth工具命令使用

bluez 编译生成的工具集: bccmdbluemoonbluetoothctlbtattachbtmonciptoolhciattachhciconfighcidumphcitoolhex2hcdl2pingl2testmpris-proxyrctestrfcommsdptool hcitool: hcitool - HCI Tool ver 5.48U

【UE4源代码观察】观察Core模块

话题 Core模块是整个引擎中最核心的模块,在之前的博客【UE4源代码观察】可视化所有模块的依赖情况中有统计,它被983个模块引用,恐怕除了第三方的模块外基本所有模块都有引用。我想首先观察其中的内容,然后再做测试:将Core模块拷贝到之前【UE4源代码观察】手动建立一个使用UBT进行编译的空白工程建立的空白工程中,看能否将它成功编译,理论上讲,“核心”不应再依赖太多其他的东西,所以我应该不会再需