蓝牙----蓝牙协议栈Host层

蓝牙协议栈----Host层

  • 蓝牙物理层基本信息
  • 链路层的状态机
    • 进入连接态的步骤
    • 主动扫描与被动扫描
    • 链路层通信模式
  • 蓝牙地址
    • 蓝牙设备地址
    • 蓝牙标识地址
    • 蓝牙接入地址
  • 蓝牙广播信道管理
  • 蓝牙数据信道跳频


蓝牙协议栈Host层包括PHY、LL、HCL层,注重关注PHY物理层和LL链路层。

蓝牙物理层基本信息

► 蓝牙使用高斯频移键控GFSK
► 频率范围2.4000 GHz - 2.4835GHz,又划分为40个channel,
► 第一个通道的中心频率是2402MHz,最后一个通道的中心频率是2480MHz
► 有效频率偏移为:±185kHz

LE 物理层的四种工作模式:

  • LE 1M sym/s:三种模式,非编码模式,S=2映射编码模式,S=8映射编码模式。
  • LE 2M sym/s:1种模式, 非编码模式。

2M因为传输速率更快,所以具有更低的功耗
1Mcode因为由编码传递适用FEC纠错码,所以具有更远的连接距离

物理层调制方式符号速率信息速率通信距离数
LE 1M PHY1M sym/s1Mb/s1Mb/s1
LE CodedPHY S=21M sym/s1Mb/s500kb/s2
LE CodedPHY S=81M sym/s1Mb/s125kb/s4
LE 2M PHY1M sym/s2Mb/s2Mb/s0.8

链路层的状态机

  • Standby State(就绪态):设备上电后,设备处于就绪态
  • advertising State(广播态):设备进行广播数据和扫描响应数据发送。广播态在链路层有两种变化:广播态设备停止广播进入就绪态。广播态的设备收到发连接请求后进入连接态。
  • Scanning(扫描态):设备监听哪些设备正在广播,扫描态的设备停止扫描进入就绪态。
  • Initiating(发起态):设备处于发起态进而发起连接,处于发起态的发起者,收到想连接设备的广播报文,链路层会向其发起连接请求并进入连接态,广播者也进入了连接态
  • Connection(连接态):主设备从发起态进入连接态,从设备从广播态进入连接态。
    在这里插入图片描述

进入连接态的步骤

广播态不断发送广播
扫描态扫描到广播进入就绪态,再由就绪态进入发起态
发起态进入连接态;广播态进入连接态

主动扫描与被动扫描

  • 主动扫描:广播态设备接收了广播报文后,发送扫描请求给广播设备,并接收广播设备的扫描响应数据。
  • 被动扫描:广播态设备仅侦听正在广播的设备,并接收其发送的广播报文。

链路层通信模式

  • Advertiser — Scanner:广播者与扫描者之间通过广播信道传输数据,是一种一对多的通信方式,进行广播者到扫描者的单方向通信。
  • Master/Central — Slave/Peripheral:主从设备通过数据信道传输数据,是一种一对一的通信方式,没对主从机进行各自的双向通信。

蓝牙地址

蓝牙设备地址Device Addres
蓝牙标识地址Identity Address
蓝牙接入地址Access address

蓝牙设备地址

设备地址Device Addres为48bit有两大类公共地址、随机设备地址,一共有四种:
1.公共地址
公共设备地址创建时需要获得IEEE分配的MAC地址块
2.随机设备地址

随机静态地址:电源重启后设备赋予新的静态地址值
在这里插入图片描述

可解析的私有地址:为生成可解析私有地址设备必须有本地身份解析码(IRK)或对等身份解析码(IRK)。
可解析私有地址通过IRK和随机产生的24位随机数来生成。可解析私有地址的随机数被称为prand值。
一端通过IRK和Prand生成Hash,Prand和Hash做为可解析的私有地址发送;
发送另一端用接收到的Prand和使用的IRK计算得到Hash,与接收到的Hash比较,相同代表识别成功。
在这里插入图片描述

不可解析的私有地址
在这里插入图片描述

私有地址是实现蓝牙设备隐私(Privacy)的技术基础

蓝牙标识地址

► 如果一个设备仅支持public address, 那么该public address 可以作为这个设备的indentify address,在配对过程中使用
► 如果一个设备支持random static address,同样可以作为indentify address使用
► 如果一个设备使用的是resolvable private address,通过IRK解析之后的地址,是indentify addres

蓝牙接入地址

32Bit,用于标识一个蓝牙通信事件

蓝牙广播信道管理

BLE有12个channel与wifi的常用信道不重合,其中37,38,39用于广播,所有BLE设备共用这三个信道广播

► 每包广播数据,都会在37、38、39三个信道上依次发送一次。
► 广播信道的随机延时:每一个广播包实际发送的广播间隔,会+10ms以内的随机延时,避免和其他设备产生冲撞。
► 广播信道不允许发送超过37字节的数据。
►广播信道不支持5.0协议的2M PHY的传输速率。

蓝牙数据信道跳频

信道地图:
信道评估依靠RSSI(接收信号强度指示)PER(分组错误率)对每一个物理信道的可用性进行分类标注为可用或不可用。对于标注为不可用的物理信道在跳频时不予选用。信道地图由低功耗蓝牙连接中的中心设备绘制并提供给与其相连接的周边设备。

跳频公式:
f(n+1)=(fn+hop)mod37
fn:为上一次连接事件使用的信道索引(初始时此值为0);
f(n+1):为首次计算的下一次连接事件使用的信道索引;
hop:为跳频参数值,取值范围为5到16,由中心设备决定并在发起连接时通知与其连接的周边设备

CSA#1:
► 根据跳频算法计算后当f_(n+1) 为信道地图中的可用信道时直接使用
► 当f_(n+1) 为信道地图中的不可用信道时则重新计算。
○ 重新计算算法: f_new= f_(n+1) mod N,
f_new 为重新计算得到的信道地图索引所对应的信道 (信道地图中的可用信道从0开始升序编号)
N:指信道地图中可用信道数量。

CSA#2:跳频阶跃hop不是固定的。
hop每次计算的目的是:每个连接事件与先前的连接事件相比发生在最小频率偏移,避免干扰和多路径衰落效应。

跳频#1只适用于连接信道,跳频#2可以用在广播信道和连接信道。

自适应跳频AFH:允许蓝牙通过识别固定的干扰源并将其从可用信道列表中排除来适应环境。
信道地图重新获取,需要传递的参数:
新的信道图:channel Map
瞬时:设备双方使用新的channel Map的切换时间。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/350701.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【RT-DETR有效改进】轻量化ConvNeXtV2全卷积掩码自编码器网络

前言 大家好,我是Snu77,这里是RT-DETR有效涨点专栏。 本专栏的内容为根据ultralytics版本的RT-DETR进行改进,内容持续更新,每周更新文章数量3-10篇。 专栏以ResNet18、ResNet50为基础修改版本,同时修改内容也支持Re…

Leetcode:二分搜索树层次遍历

题目: 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例: 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:[[3],[9,…

研发日记,Matlab/Simulink避坑指南(五)——CAN解包 DLC Bug

文章目录 前言 背景介绍 问题描述 分析排查 解决方案 总结 前言 见《研发日记,Matlab/Simulink避坑指南(一)——Data Store Memory模块执行时序Bug》 见《研发日记,Matlab/Simulink避坑指南(二)——非对称数据溢出Bug》 见《…

springboot 项目,返回的实体类里面字段是null ,现在想要为空应该是““,空字符串,而不是null

目录 1 问题2 实现 1 问题 返回给前端的数据,如果数据库的字段没有数据,给返回的是null 要变成这个,全局都变成这样 2 实现 springboot返回给页面的json数据中,如果有数据为null,则返回空字符串。 springboot默认使…

同为科技(TOWE)自动控制循环定时插座

随着科技的发展,智能化家居已成为我们生活的重要组成部分。作为国内领先的智能家居品牌,同为科技(TOWE)推出的自动控制循环定时插座,无疑将科技与生活完美地结合在一起。 1.外观设计 同为科技(TOWE&#x…

Spring第二天

今日目标 能够掌握注解开发定义Bean对象 能够掌握纯注解开发模式 能够配置注解开发依赖注入 能够配置注解开发管理第三方Bean 能够配置注解开发为第三方Bean注入资源 能够使用Spring整合Mybatis 能够使用Spring整合Junit 一、第三方资源配置管理 说明:以管理DataSo…

保险箱(第十四届蓝桥杯省赛PythonB组)

小蓝有一个保险箱,保险箱上共有 n 位数字。 小蓝可以任意调整保险箱上的每个数字,每一次操作可以将其中一位增加 1 或减少 1。 当某位原本为 9 或 0 时可能会向前(左边)进位/退位,当最高位(左边第一位&am…

AM5-DB低压备自投装置在河北冠益荣信科技公司洞庭变电站工程中的应用——安科瑞赵嘉敏

摘 要:随着电力需求的不断增加,电力系统供电可靠性要求越来越高,许多供电系统已具备两回或多回供电线路。备用电源自动投入装置可以有效提高供电的可靠性,该类装置能够在工作电源因故障断开后,自动且迅速地将备用电源投…

Lisflood

3.耦合LisFlood模型 C解决方案在\LisFlood\LISFLOOD-FP-trunk 执行在LisFlood\LISFLOOD-FP-trunk\out\build\msvc-x64-Debug 3.1输入文件 文献:基于SWMM和LISF&#…

vue day06

1、路由模块封装 2、声明式导航 实现导航高亮效果 直接通过这两个类名对相应标签设置样式 点击a链接进入my页面时,a链接 我的音乐高亮,同时my下的a、b页面中的 我的音乐也有router-link-active类,但没有精确匹配的类(只有my页…

HTTP连接池在Java中的应用:轻松应对网络拥堵

网络拥堵是现代生活中无法避免的问题,尤其是在我们这个“点点点”时代,网页加载速度直接影响到我们的心情。此时,我们需要一位“救世主”——HTTP连接池。今天,就让我们一起探讨一下,这位“救世主”如何在Java中大显神…

12个强大的 JavaScript 动画库,可帮助你提升用户体验

文章目录 12个强大的 JavaScript 动画库,可帮助你提升用户体验1.Anime.js2.Lottie3. Velocity4.Rough Notation5.Popmotion6. Vivus7.GSAP:Green Stocking Animation Platform8. Three.js9.ScrollReveal10.Barba.js11.Mo.js12.Typed.js总结 12个强大的 J…

【Python】01快速上手爬虫案例一:搞定豆瓣读书

文章目录 前言一、VSCodePython环境搭建二、爬虫案例一1、爬取第一页数据2、爬取所有页数据3、格式化html数据4、导出excel文件 前言 实战是最好的老师,直接案例操作,快速上手。 案例一,爬取数据,最终效果图: 一、VS…

降维(Dimensionality Reduction)

1.动机一:数据可视化 将数据可视化,我们便能寻找到一个更好的解决方案,降维可以帮助我们。 假使我们有有关于许多不同国家的数据,每一个特征向量都有 50 个特征(如 GDP,人均 GDP,平均寿命等&a…

python深度学习—第6章(波斯美女)

第6章 深度学习用于文本和序列 6.1 处理文本数据 与其他所有神经网络一样,深度学习模型不会接收原始文本作为输入,它只能处理数值张量。 文本向量化(vectorize)是指将文本转换为数值张量的过程。它有多种实现方法。 将文本分割…

力扣80、删除有序数组中的重复项Ⅱ(中等)

1 题目描述 图1 题目描述 2 题目解读 对于有序数组nums,要求在不使用额外数组空间的条件下,删除数组nums中重复出现的元素,使得nums中出现次数超过两次的元素只出现两次。返回删除后数组的新长度。 3 解法一:双指针 双指针法可以…

【代码随想录-数组】二分查找

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 jav…

学习笔记-李沐动手学深度学习(四)(12-13,权重衰退、L2正则化、Dropout)

总结 【trick】过拟合及正则化项参数的理解 实际数据都有噪音,一般有噪音后,模型实际学习到的权重w就会比 理论上w的最优解(即没有噪音时)大。(QA中讲的) 【好问题】 (1)不使用正…

Jupyter Notebook安装以及简单使用教程

Jupyter Notebook安装以及简单使用教程 本文章将,简要的讲解在已经拥有Python环境下如何进行Jupyter Notebook的安装。并且简短的介绍Jupyter Notebook的使用方法。 Jupyter Notebook是什么 Jupyter Notebook是一个基于Web的交互式计算环境,它支持多种…

101.乐理基础-五线谱-五线谱的构造、谱号是什么

内容参考于:三分钟音乐社 上一个内容:100.乐理基础-五线谱-是否需要学习五线谱-CSDN博客 首先简谱的构造,如下图:真正影响音乐的是左上角的三部分,调号、拍号、情绪与速度,如图1 然后不管用什么谱&#xf…