自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 问答 (1)
  • 收藏
  • 关注

原创 蓝牙开发那些事儿(11)——BLE愉快地交互

上一章手机和flip4已经建立了连接,接下来的数据包格式就是data channel pdu了。Data channel pdu的格式如下:之前我们说过,和经典蓝牙不同的是,LE只有一个header,而BR的包头有两个——packet header和payload header,实际上这里的LLID类似于BR的payload header中的LLID,这里的NESN和SN类似于BR的packet header中的SEQN, 当然也并不完全一样,前者收发双方都维护一个sequence num.

2020-08-14 15:31:18 1868 4

原创 蓝牙开发那些事儿(10)——初识BLE

其实LE和BR/EDR完全是两种不同的东西,物理层的channel数减少了一半,AFH调频算法有了新的改进,应用场景也不同,LE主要是应用于物联网,所以从设计上来讲,有以下考虑:功耗低,数据量少,基于这个考虑,和传统蓝牙不同的是,很多场景下,BLE并不依赖于有连接的方式,无连接的方式具备功耗低,使用时间更长的优点,比如BLE的beacon技术就是一个设备定时发非连接广播包,通常要求这样一个节点,可以工作一到两年左右。虽然BR也有广播的内容,但是在BLE的领域里,广播的重要性被强化了。 因为都是蓝牙

2020-08-13 09:03:45 2058 4

原创 蓝牙开发那些事(9)——结合代码看a2dp协议

上一章讲了一下avdtp的连接过程,这一章我们看一下btstack的实例。因为a2dp是一个音频传输的框架协议,具体的使用已经牵涉到应用层了,比如说我们的设备是个音箱设备还是个音源设备,我们目前是个音箱设备,所以可以看一下a2dp_sink_deom.c。其中首先调用a2dp_and_avrcp_setup函数进行了一系列的初始化,从这个函数名就知道,初始化的内容包括了a2dp协议和avrcp协议,a2dp之前我们已经讲了其基础协议avdtp,avrcp的话呢是基于avctp协议的,AVCTP协议.

2020-08-06 11:39:45 2789 2

原创 蓝牙开发那些事儿(8)——avdtp连接过程

上一章中的最后,我们看到一条avdtp的l2cap channel已经建立好了,接下来avdtp可以开始走起来了。Avdtp的文档又是一个140多页的庞然大物,全部看下来东西还是挺多的。Avdtp是a2dp(advanced audio distribution protocol)的基础协议,一般来说,avdtp的l2cap channel是需要建立两条的,这里先建立第一条,也就是signal channel(这个说法和l2cap的signal channel好接近,大体上,可以认为signal c

2020-08-05 17:15:36 3162

原创 蓝牙开发那些事儿(7)——l2cap层连接过程

L2cap层是连接hci和上层profile的中转站,我们之前分析包格式的时候就说过,payload header中的llid如果标示是acl-u的话,说明就是个l2cap包。上层profile在连接的时候,都需要先建立l2cap逻辑链路,每个逻辑链路分配cid(channel id),这也是l2cap最重要的功能:协议/信道多路复用然后比较重要的是,l2cap提供分包和重组功能,比如说上层的包比较大,controller支持的包比较小,就有可能需要分包了,我们前文说过,payload header.

2020-08-04 15:31:49 4468 3

原创 蓝牙开发那些事儿(6)——蓝牙协议架构扫盲

蓝牙协议架构扫盲蓝牙的协议架构图真的是五花八门的,我们以前见过,以hci层区分host和controller的楚河汉界,然后两边细分,hci层以下有lc、lmp层,hci以上有l2cap和profile。我们再来看这张图,这张图又有所区别了,l2cap层以下是logical layer和physical layer。是不是又晕了?其实只是角度不同而已,以前的架构图更侧重的是软件协议,这张图的侧重点则是物理链路、逻辑链路等等大量被抽象出来的基带概念。看一下下面这张图就更清晰了。

2020-08-04 10:37:07 3467 2

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除