蓝牙技术原理のBT协议の蓝牙核心协议の无线射频和基带

  • 0. 脑图
  • 1. 蓝牙射频
    • 1.1 射频信道
    • 1.2 射频规范
  • 2. 链路控制器和基带
    • 2.1 物理链路
    • 2.2 分组
    • 2.3 蓝牙编址
    • 2.4 数据加噪
    • 2.5 蓝牙时钟
    • 2.6 逻辑信道
    • 2.7 信道控制
    • 2.8 跳频序列选择
    • 2.9 蓝牙安全性

0. 脑图

本节介绍的是蓝牙无线射频,链路控制器及其所控制的基带功能。

以上是本节的知识结构脑图,比较繁杂。

1. 蓝牙射频

1.1 射频信道

蓝牙工作在2.4GHz ISM频段上,许多国家在这个频带范围是2400~2483.5MHz。蓝牙采用跳频扩谱技术主动的避免工作频段受干扰(微波炉的工作频率也是2.4GHz)。

蓝牙收发机是跳频扩展频谱(FHSS)的无线系统,在m个1MHz带宽的信道上运行。由于国家规定不同,m=79或23。下图为各国的ISM频段使用情况:

信道由在79或23个射频信道上跳变的伪随机跳变序列来变现。该序列在同一个Piconet中唯一,且其相位由主单元的蓝牙时钟决定。

信道被分为许多时隙,每个时隙长度625微妙,且每个时隙对应一个跳频射频的跳频。连续跳频对应不同的射频跳频。跳频速率为1600跳/秒。时隙编号范围为0:227−10 : 2^{27} -10:227−1,大概一天循环一次。

时分双工(TDD)策略用于主单元和从单元交替传输,主单元偶时隙发送,从单元奇时隙发送。

时隙也可以最多拓展为5个单时隙的长度,此时采用的调频频率应该是分组开始传输的时隙的跳频频率。

【注意:这个图只是一个形象化,根据后面的章节可以看出,多时隙发送时全部在奇时隙发送,这样才能保证主单元总是在偶数时隙发送,从单元总是在奇数时隙发送。】

1.2 射频规范

  • 发射机功率
    发射机功率分为三个等级:一级功率100mW(20dBm);二级功率2.5mW(4dBm);三级功率1mW(0dBm);
    对于的传输距离为:100m, 10m, 1m。
  • 调制特性
    采用带宽时间为BT=0.5BT=0.5BT=0.5的高斯频移键控(GFSK),调制指数为0.28~0.35。符号时间的范围应该大于±20ppm。
  • 伪发射
    不太理解书中伪发射的意思,我理解是调频频率按照伪随机跳频序列选择在信道上发射。
    伪发射包括带内和带外两种,由在单一频率上跳变的发射机的跳变频率来衡量。所有合成器需要改变接受时隙和发送时隙之间的频率,通常保持相同的发送频率。
  • 无线频率容差
    发送的初中心频率精确度必须是FcFcFc的±75Hz±75Hz±75Hz。对于单时隙的分组频率偏移为 ±75Hz±75Hz±75Hz,3或5时隙的分组频率偏移为±40Hz±40Hz±40Hz
    下图为蓝牙无线规范的关键操作参数:

2. 链路控制器和基带

2.1 物理链路

  • SCO链路
    同步面向连接链路:SCO链路是piconet中主单元与从单元之间点对点的链路,主单元通过使用规则间隔的保留时隙运行SCO链路。SCO链路传输对时间比较敏感的通信,如:语音;最多只支持3条SCO链路,不支持重传。
  • ACL链路
    异步无连接链路:ACL链路是Piconet中的主单元和所有从单元之间的点到多点链路。在非保留时隙上,主单元以时隙为单位,建立到任何单元的ACL链路,包括已经处于SCO连接的从单元。ACL链路用于数据传输,并且支持分组重传。

SCO链路的优先级比ACL链路的优先级高,故为了优先建立SCO链路,ACL链路中必须承载SCO连接控制信息。

2.2 分组

在一个蓝牙Piconet中数据以分组的形式传输。


  1. 分组通用格式

    分组具有以下几种不同的类型:
    (1)仅含识别码:比如在呼叫和查询过程,识别码单独作为信令消息。
    (2)含识别码+分组头
    (3)含识别码+分组头+有效荷载
    分组在传送期间没有跳频发生,并且在频率保持期间至多有一个分组发送。空间中的传送从LSB开始逐步到MSB。

更具体的结构图:
结构图引用:https://www.chomptech.com/3971.html


  1. 分组的三个部分
    (1)识别码
       分组中识别码主要用于时钟同步,DC补偿平衡和身份识别,可以过滤掉从其他Piconet中接收到的传送。同一个Piconet中发送的所有分组有相同的信道识别码(识别码的一种)。识别码也可以用于呼叫和查询过程,此时识别码单独作为信令消息。
    【DC补偿序列推测应该是频率偏移量,待确定】
  • 识别码的组成及其作用
    典型的识别码由头(4bits),同步字组成(64bits),有时包括尾(4bits)。

  • 识别码的分类
    识别码分为:信道识别码( CAC ),设备识别码( DAC )和查询识别码( IAC )。其中查询识别码又分为 通用查询识别码(GIAC), 专用查询识别码( DIAC )。

    (2)分组头(分组的头字段)
       分组的头字段中包含链路控制数据,帮助中间接入控制。头字段为了降低开销,包括HEC在内仅包含18为的信息,它采用前向纠错编码FEC,在特殊情况下,头字段每一个比特在序列中发送三次,即利用1/3比例前向纠错编码提高发送的可靠性,经过1/3比例FEC后变为54位的代码字段。

  • 分组头组成及其作用:

关于FLOW解释中提到的流控制:
蓝牙建议使用FIFO(先进先出)队列来实现ACL和SCO链接的发送和接收,链接管理器负责填充这些队列,而链接控制器负责自动清空队列。接收FIFO
队列已满时则使用流控制来避免分组丢失和拥塞。如果不能接收到数据,接收者的链接控制器发送一个STOP指令,并插入到返回的分组头(Header)中,
并且FLOW位置1。当发送者接收到STOP指示,就冻结它的FIFO队列停止发送。如果接收器已准备好,发送一个GO分组给发送方重新恢复数据传输,
FLOW位置0。
原文链接:https://blog.csdn.net/dyufei/article/details/5844861

(3)有效荷载
   有效荷载中有两种字段应区分开来:(同步)语音段和(异步)数据段。具体见下图:

有效荷载主体为用户信息,他代表有效流通量。

  • 数据段的有效荷载头
    只有数据段带有有效荷载头。有效荷载头长度为1Byte或者2Byte。第一和第二段(类)的分组有效荷载头为1B,第三个和第四个段的有效荷载头为2B。下图为其格式和组成部分作用。

这里的*段指的是分组的类别。下文还有总结。
第一段:链路控制分组:ID,NULL,POLL,FHS.
第二段:单时隙分组
第三段:三时隙分组
第四段:五时隙分组

  • 这里应该注意,有效荷载头中的流控制并没有实时性要求,最后正确接收的有效荷载头决定了FLOW的状态。实时的流控制由链路管理器在分组的层次上通过设置分组头中的FLOW比特来完成。

    蓝牙数据分组格式总结:
  1. 分组类型
  • 通用分组类型: 链路控制分组

  • ACL分组类型
    ACL 分组表示为DM1,DM3,DM5, DH1,DH3,DH5,其中
    “DM”:表示荷载利用2/3率FEC编码的中速编码;
    “DH”:表示载荷利用无FEC编码的高速数据。
    “1,3,5”:表示分组占有的时隙数。

    DM分组的载荷部分 和 DV分组的ACL部分 是由其本身的ACL分组头和包含2位的循环冗余检测(CRC)的载荷构成的。

  • SCO分组类型
    SCO分组具有一个时隙长,表示HV1 ,HV2 ,HV3。其中,
    “HV”:表示高质量声音;
    “1”:是1/3 率FEC,设备每2个时隙发送一个单时隙分组;
    “2”:是2/3率FEC,设备每4个时隙发送一个单时隙分组;
    “3”:是无FEC,设备每6个时隙发送一个单时隙分组。

    除此之外,还有一个DV分组,混合了2/3率FEC编码的ACL 和 无FEC编码的SCO,数据是单时隙分组。设备每2个时隙发送1个DV分组。

2.3 蓝牙编址

(1) 蓝牙设备地址(BD_ADDR)
48位,由三部分组成:低地址段24位(LAP),高地址段16位(UAP)和未定义地址段8位(NAP)。

(2) 活动成员地址(AM_ADDR)
在Piconet中,主设备会给每一个活动的从单元分配一个唯一的AM_ADDR来区分从单元。

  • 当从单元解除连接或者进入休眠状态,从单元将失去AM_ADDR。
  • 当从单元被激活时,AM_ADDR由主单元对从单元进行分配而得。在连接状态时,AM_ADDR包含在 FHS有效净荷中(FHS头本身携带全零的 AM_ADDR),同时FHS 的BB_PDU中也包含了主单元的地址和时钟信息。在休眠状态时,AM_ADR包含在解除休眠消息中。

FHS:专用控制分组,包含蓝牙设备地址和发端时钟信息。

(3) 休眠成员地址(PM_ADDR)

处于休眠模式的从单元可以通过其BD_ADDR或通过休眠成员地址(PM_ADDR)识别。PM_ADDR是一个用于区分休眠从单元的8位成员地址。

  • 只有当从单元处于休眠状态时,PM_ADDR才有效。
  • 如果从单元被激活,将被分配一个AM_ADDR,同时将丢失PM_ADDR。
    PM_ADDR是在从单元休眠时分配的。休眠从单元保留全零PM_AD,而要解除休眠只用它们的BD_ADDR。

(4) 访问请求地址(AR_ADDR)

访问请求地址(AR_ADDR)用于休眠从单元在访问窗口内确定从-主时隙。在这半个时隙中,它被允许发送访问请求消息。当从单元进入休眠模式时,AR_ADDR分配给从单元,而且,只有从单元处于休眠模式时,AR_ADDR才有效。同时,AR_ADDR不必是唯一的,不同的从单元可以共享一个AR_ADDR。

2.4 数据加噪

在传输前,分组头和有效净荷都要使用数据加密字加噪,目的是使具有较高冗余模式的数据随机化,并减少分组的直流偏移。

  • 发送端,在FEC编码之前执行加扰过程。
  • 接收端,解噪过程在FEC解码后完成。

2.5 蓝牙时钟


微微网信道中的定时和跳频由主单元的蓝牙时钟决定。当一个微微网已经确立,主单元将时钟传送给从单元。
每个从单元在它的本地时钟上增加一个时钟偏移,可以和主单元时钟保持同步。因为时钟是自由运转的,所以偏移必须有规律的更新。

蓝牙时钟的功能是确定在什么时候设备能否发送,或在什么时候监听传送,以什么频率和什么类型发送或监听分组。从单元利用主单元蓝牙时钟值来完成的微微网通信。

时钟决定临界周期并触发蓝牙收发机的事件。在蓝牙系统中有四个周期很重要:312.5 us,625 1s,1.25 1s,1.28s。这些周期分别与定时器比特位的CLK0CLK_{0}CLK0​,CLK1CLK_{1}CLK1​,CLK2CLK_{2}CLK2​和CLK12CLK_{12}CLK12​ 对应。

CLKN:本地时钟:
CLKE:预计时钟,扫描寻呼过程中用到;
C LK :设备实际运行的时钟频率。
CLKE、CLK 由 CLKN 加上一个偏移量得到的。

2.6 逻辑信道


(1)链路控制器控制信道(Link Control, LC)
   LC控制信道映射在分组头中,此信道携带底层链路控制信息,如:ARQ,流控和有效荷载特性。

(2)链路管理器控制信道(Link Manage, LM)
   LM控制信道携带控制信息,在主单元和从单元的链路管理器之间进行交换。LM信道特别用于在保护DM分组。在L_CH码的有效荷载头中,LM信道用 11 表示。

(3)异步用户/等时数据信道(User Asynchronization/Isochronous , UA/UI)
   UA信道携带 L2CAP透明异步用户数据。这个数据可以用一个或多个基带分组传送。

对于分段消息,起始分组使用值为10的L_CH有效载荷头,后续的分组使用值为01的L_CH有效载荷头。
如果没有分段,所有的分组使用L2CAP起始码为10。

等时数据信道有高层正确定时的起始分组支持。在基带层,L_CH码的使用与UA信道相同。

(4)同步用户信道(User Synchronization, US)
   US信道携带透明同步用户数据,此信道在SCO链路上传送。

LC信道映射到分组头,其他信道映射到有效载荷。US信道仅能映射到SCO分组。所有其它信道都映射到ACL分组,或SCO DV分组。如果涉及到较高优先权的信息,则LM,UA和UI信道可以中断US信道。

2.7 信道控制

(1)状态描述
上图中描述了蓝牙设备的操作状态。从待机状态到连接状态,中间需要经过查询和呼叫状态,这两种状态是两种不同的情况,但在潜在主单元和潜在从单元中是互补的。其中,子状态用于向Piconet 增加新的从单元的过渡状态。要从一个状态转移到另一个状态,需要用到链路管理命令或者链路控制器的内部信令。

  • 在查询状态,设备在其范围之内搜索其他设备的标识,其他设备必须处于查询扫描状态,随时监听和响应查询;

  • 在呼叫状态,设备以主单元的身份请求其他设备加入微微网,其他设备必须处于呼叫扫描状态,随时监听和响应呼叫。如果已知设备的标识,设备可以越过查询状态。当某个设备是微微网的成员时,它仍然执行查询和呼叫状态,以便其他设备加入到本微微网或其他微微网中。当有其他微微网加入时,会产生一个散射网。

(2)微微网操作

  • 呼叫操作

    1. 作用:设备利用呼叫功能邀请其他设备加入微微网。
    2. 参数:呼叫设备每隔312.5us 选择一个新的频率点发送一次呼叫。在呼叫扫描期间,当一个设备监听发送的呼叫时,每隔 1.28s 选择一个新的监听频率点。
    3. 过程:在呼叫过程中,采用跳频序列。为产生这个序列,呼叫设备和被呼叫设备采用了 被呼叫设备 的28比特LSB地址,在BD_ADDR中所描述的地址LAP段和部分UAP,作为他们分别的地址输入。对每一个设备,他的呼叫序列早已经定义好了,在2.4GHz的频段上可允许的79个信道(或23个信道)上,呼叫序列是由32个(或16个)均匀的频率组成。呼叫的周期可以是32跳(或16跳)。
    4. 条件:在呼叫过程中,每一个基于呼呼叫序列的频率点的传送和每一个响应都需要在其前面加上设备识别码(DAC), DAC是利用呼叫设备地址的LAP产生的。
  • 查询操作

    1. 作用:设备利用查询功能搜寻范围内的其他设备。
    2. 参数:查询设备每隔312.5us 选择一个新的频率点发送一次查询信息。被查询设备每隔1.28s 选择一个新监听频率点执行查询操作。
    3. 过程:在查询过程中,采用查询跳频序列。为产生这个序列,查询设备和被查询设备采用了28比特LSB的“查询地址”,作为他们各自的FSM地址输入,此查询地址又称为通用查询识别码(GIAC)。对每一个设备,他的查询序列早已经定义好的周期序列,在2.4GHz的频段上可允许的79个信道(或23个信道)上,查询序列是由32个(或16个)均匀的频率组成。查询的周期可以是32跳(或16跳)。
    4. 条件:在查询过程中,每一个基于查询序列的频率点的传送和每一个响应都需要在其前面加上查询识别码(IAC), 共64个查询识别码(包括GIAC)被放入预留的64个LAP中(???),设备地址的LAP不可以与这些预留的LAP相同

(3)蓝牙设备的操作状态
   蓝牙设备的操作状态有连接状态,查询状态和呼叫状态。设备处于连接状态时,有四种操作模式:Active,Sniff,Hold,Park。

  • 连接状态:时钟和地址都来自主单元,识别码为CAC,与主单元的DAC一致。
  • 查询状态:时钟是本地时钟(CLKN),地址为GIAC,识别码为GIAC或者DIAC。
  • 呼叫状态:时钟和地址都为被呼叫的设备的时钟和地址,识别码为被呼叫设备的设备识别码DAC。

蓝牙时钟和微微网主单元的蓝牙设备地址(BD. ADDR)完全可以确定微微网中的跳频序列和信道相位。由于主单元和从单元之间的通信只能在微微网内发生,因此徽徽网中的每一个从单元都必须知道主单元的时钟和 BD.ADDR。如果一个主单元要邀请一个潜在的从单元加入,它必须知道此从单元的时钟和地址。在查询过程中,设备之间交换地址和时钟信息,主单元收集从单元的操作信息。在呼叫过程中,主单元向从单元发送自己的操作信息。设备的操作信息包括地址BD.ADDR和时钟值,将以跳频序列(FHS)基带分组形式发送。

在查询状态,设备在其范围之内搜索其他设备的标识,其他设备必须处于查询扫描状态,随时监听和响应查询;
在呼叫状态,设备以主单元的身份请求其他设备加入微微网,其他设备必须处于呼叫扫描状态,随时监听和响应呼叫。
上面说的呼叫状态的时钟和地址使用被呼叫设备的,那么被呼叫设备也就是 潜在从单元 了。

过程预演:(待完善)
主设备发起查询,从设备查询扫描。主设备通过查询获得从设备的地址和时钟以及DAC。
主设备想要以主单元的身份邀请从设备加入Piconet中,故对查询到的从设备发起呼叫,主设备使用寻呼发起一个主—从设备连接,通过在不同的跳频点上重复发送从设备DAC来扑捉从设备。从设备在寻呼扫描状态被唤醒,接收寻呼。呼叫使用的时钟和地址均为从设备的,识别码为从设备DAC。寻呼扫描状态下的设备扫描窗口Twindowpage scan内监听自己的DAC。
小结:
(1)在查询过程中,设备之|间交换地址和时钟信息,主单元收集从单元的操作信息。
(2)在呼叫过程中,主单元向从单元发送自己的操作信息。
设备的操作信息包括地址BD.ADDR和时钟值,将以跳频序列(FHS)基带分组形式发送。


3.1 连接状态
处于连接状态时,主单元的时钟成为Piconet中定时事件的调整器,主单元的LAP用于产生识别码。这里要注意,主从单元的发送每隔626us交替一次,主单元偶时隙,从单元奇时隙。但是多时隙的发送限制为奇数时隙(1,3,5),从而必须保证主单元总是在偶数时隙开始发送,从单元发送在奇时隙开始。

连接状态以主单元发送的轮训(POLL)分组为起点,检查主单元的定时和信道跳频的切换,从单元可以用任意类型的分组响应。若从单元未收到POLL分组,或者主单元未收到响应分组,主从单元将返回呼叫或者呼叫扫描子状态。

  • 活动模式
    在活动模式中,蓝牙从单元积极加入信道。活动从单元监听主从时隙的分组,保持与信道同步。

  • 呼吸模式
    减少从单元监听周期的职责。主单元开始传输的某个指定从单元的时隙数减小,即主单元智能在特定的时隙开始传输,这就是被称为呼吸时隙的规则间隔TsniffT_{sniff}Tsniff​。从单元必须在每个呼吸周期在偏移DsniffD_{sniff}Dsniff​时隙监听。要进入呼吸模式,主单元通过LM响应发出呼吸命令,此信息包含呼吸间隔TsniffT_{sniff}Tsniff​ 和偏移DsniffD_{sniff}Dsniff​。

  • 保持模式
    在连接状态下,指向ACL链路的从单元可以被置为保持模式,这表明从单元暂时不能支持信道上的ACL分组(仍支持SCO链路)。在Hold模式下,从单元可将容量空出来用于其他事件,如扫描,呼叫和加入另一个微微网。它也可以进入低功耗睡眠模式。注意!此模式下,从单元保留它的活动成员的地址(AM_ADDR)。

  • 待机模式
    当从单元不需加入Piconet信道,但仍希望与信道保持同步时,可进入休眠模式。此时,从单元放弃活动成员地址AM_ADDR,并接受两个新地址用于休眠模式:
    (1)休眠成员地址(PM_ADDR):此地址能区分不同的休眠从单元,用于在主单元解除休眠进程中。
    (2)访问请求地址(AR_ADDR):也可以使用此地址解除休眠,被从单元用于初始化从单元解除休眠进程。

3.2 查询状态
查询状态是由主单元和从单元执行几个查询子状态组成的:
主单元执行查询状态,从单元执行查询扫描状态和查询响应状态。

更具体的说:
主单元发送查询分组,从单元在查询扫描状态时接受此分组,随后从单元进入查询响应状态并向主单元传输他们的基本信息。
在需要的时候,可以通过呼叫过程同其中任意一个建立联系。

3.3 呼叫状态
设备呼叫的目的是邀请被呼叫设备加入微微网,主单元就是呼叫设备。呼叫设备使用呼叫设备的地址BD_ADDR和时钟估计值发送它的呼叫,呼叫状态包括几个在主单元和从单元之间执行的子状态:主单元执行的呼叫子状态和主单元响应子状态,从单元执行的呼叫扫描子状态和从单元响应子状态。

更具体的说:
主单元发送呼叫蓝牙单元地址,由处于呼叫扫描子状态的从单元接收,呼叫传送仅仅包含从单元的DAC,此基带分组称为从单元ID分组。
在它的呼叫响应中,从单元也发送从单元ID分组,主要目的是通知主单元它已经收到呼叫。
最后,主单元进入主单元响应子状态,在此期间主单元向从单元发送它的基本元素(时钟,地址,识别码)和从单元的AM_ADDR,允许从单元参加微微网的通信。
这些基本元素和AM_ADDR在 FHS分组中传送。从单元利用一个从单元ID分组响应,并且进入连接状态,准备开始微微网通信。

2.8 跳频序列选择


(1)跳频序列
总共存在10累跳频序列,其中79跳 和 23跳 系统各有 5 类。括号内表示23跳系统的参数。

  • 呼叫跳频序列:包括32 (16) 个不同唤醒频率,均匀分布在79(23)MHz上,周期长度为32(16);
  • 呼叫应答序列:覆盖32(16)个不同的与当前呼叫跳频序列一 一对应的响应频率。主单元和从单元可以使用不同的规则以获得相同的序列。
  • 查询序列:包括32 (16) 个不同唤醒频率,均匀分布在79(23)MHz上,周期长度为32(16);
  • 查询响应序列:覆盖32(16)个不同的与当前查询跳频序列一 一对应的响应频率。
  • 信道跳频序列:具有较长周期,一段时间内跳频图案不出现重复并且频点均匀分布在79(23)MHz范围内。

(2)选择方案

从输入到特定的跳频序列映射在频率选择模块中完成。频率选择模块(FSM)包括了选择下一个使用频率的过程。

2.9 蓝牙安全性

在链路层使用四种不同的实体来保证安全,每个用户具有唯一的公共地址,两个字和一个随机数。

  • 随机数发生器
  • 字管理
    字类型
    字产生和初始化
  • 加密
  • 鉴权
    这部分比较复杂,用到的时候再去补充!

参考资料:
《蓝牙技术》 严紫健
《蓝牙技术原理与协议》 刘刚
博客:https://blog.csdn.net/xubin341719/article/details/38303881

BT-2の蓝牙技术原理のBT协议の蓝牙核心协议の无线射频和基带相关推荐

  1. 蓝牙技术|什么是低功耗蓝牙(BLE)芯片?

    蓝牙是蓝牙技术联盟设计和销售的一种个人局域网络技术,旨在用于医疗保健.运动健身.信标(Beacon).安防.家庭娱乐等领域的新兴应用.相较经典蓝牙,蓝牙低功耗技术旨在保持同等通信范围的同时显著降低功耗 ...

  2. 蓝牙核心技术概述(三): 蓝牙协议规范(射频、基带链路控制、链路管理)

    关键词:蓝牙核心技术协议射频基带链路控制链路管理 作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢!) 欢迎指正错误,共同学习.共同进步!! 下载链接:Bluetooth PROF ...

  3. DA14580-01UNA蓝牙低功耗4.2 SoC 无线收发器和基带处理器DIALOG

    DA14580-01UNA DA14580蓝牙低功耗4.2 SoC最终概述DA14580集成电路具有完全集成的无线收发器和基带处理器,用于Blue-tooth®低功耗. 它可用作独立应用程序处理器或托 ...

  4. 蓝牙技术|蓝牙技术联盟发最新蓝牙5.3版本规范

    蓝牙技术成为支持物联网的全球无线标准的关键原因之一是其发展速度.蓝牙核心规范的更新涵盖了广泛的范围,从对现有功能的增强到主要新功能的引入,这些功能代表了技术的重大进步并为无线创新开辟了新的可能性.蓝牙 ...

  5. 蓝牙技术联盟宣布开放蓝牙网关架构 IoT设备无须Wi-Fi即可联网

    本周,蓝牙技术联盟Bluetooth SIG正式宣布面向开发者开放一项全新的"蓝牙网关架构标准(Bluetooth gateway architecture)",允许开发者让物联网 ...

  6. 蓝牙技术|新能源车与蓝牙

    乘联会数据显示,9 月新能源乘用车批发销量达到 35.5 万辆,环比增长 14.7%,同比增长 184.4%.1-9 月新能源乘用车批发 202.3 万辆,同比增长 218.9%.此外,9 月新能源乘 ...

  7. 蓝牙协议规范(射频、基带链路控制、链路管理)

    转自:http://blog.csdn.net/xubin341719/article/details/38303881 作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢!) 欢迎 ...

  8. 蓝牙核心技术概述: 蓝牙协议规范(射频、基带链路控制、链路管理)

    原文出处:https://blog.csdn.net/xubin341719/article/details/38303881 作者:xubin341719(欢迎转载,请注明作者,请尊重版权,谢谢!) ...

  9. BT种子的技术原理是什么?就是.torrent文件该如何理解?

    看到很多咨询BT种子原理的问题,在这里整理些资料,希望对需要的朋友有帮助. 可以分两个层面来分析一下: 1.torrent文件的原理:如果这个问题是指torrent文件本身,那么,当你对一个文件(或者 ...

最新文章

  1. 低代码技术与市场(Mendix与 OutSystems)
  2. java nio 应用场景_BIO、NIO、AIO简述及应用场景
  3. oracle 会话 lock,相克军_Oracle体系_随堂笔记014-锁 latch,lock
  4. 博士生Science发文:很庆幸导师要求每周交工作进展汇报!
  5. 图像目标检测(Object Detection)原理与实现(二)
  6. Lynis – 用于Linux服务器的自动安全审计工具
  7. 卷积神经网络CNN的由来,为什么要用卷积?
  8. c++ map是有序还是无序的_C++无序关联容器(一)-使用场合和常用函数
  9. 基于bp神经网络的房价预测,房价预测 神经网络
  10. 解决charles代理手机请求后,手机无法上网问题
  11. 适用智能电表,热能表,气表等段码LCD液晶显示驱动芯片I2C 接口VK2C22A/B,RAM映射44*4, 40*4
  12. html网页在图片的后面同一行追加,htmlcss
  13. 用python从身份证中提取生日信息(切片计算)
  14. c 数组上限_深度文章,高手必看:C编程表驱动法编程实践(精华帖,建议收藏并实践)...
  15. IDEA中如何快速的阅读源码
  16. api 定位 微信小程序 精度_微信小程序3种位置API的使用方法详解
  17. CentOS4.4下架设简单的邮件服务器笔记
  18. 软件产品版本命名规范
  19. 【JSON】PHP JSON
  20. 1000Mbps以太网

热门文章

  1. 机械加工ERP系统的模块有哪些?以下关键要了解
  2. vue 组件延时加载_为什么以及如何延迟加载角组件
  3. 杭州趣链科技CEO李伟:区块链场景分析和实践
  4. python 函数修饰_python修饰函数 python 函数有多个修饰符
  5. ps基础-day05形状工具
  6. 使用显卡训练DL4J的问题总结
  7. Foundations of Machine Learning 2nd——第四章Model Selection(二)
  8. java url转义_url特殊字符转义及解决方法
  9. Java - 读取Excel并转CSV格式
  10. Python 打包项目生成exe文件大启动慢解决办法