
BLE
文章平均质量分 86
Bluetooth Low Enegy学习笔记
tilblackout
score til you black out.
展开
-
泰凌微BLE实操(2):ATT自定义UUID并实现Notification数据传输
GATT(Generic Attribute Protocol)的实质是由多个Attribute构成,每个Attribute都具有一定的信息量,当多个不同种类的Attribute就反映出一个基本的service。UUID用来区分每个Attribute类型,全长为16字节。在中定义了一些标准的UUID。多个Attrbute组成一个,每个Attribute都有一个值,用来区分不同的Attribute。原创 2022-11-23 23:13:45 · 1965 阅读 · 2 评论 -
BLE学习(4):蓝牙地址类型和设备的隐私
蓝牙地址也被称为蓝牙MAC地址,它能唯一标识一个蓝牙设备的48位的值。在蓝牙规范中,它被称为BD_ADDR。和,其中。原创 2022-11-21 23:27:42 · 6576 阅读 · 0 评论 -
BLE学习(3):ATT和GATT详解
ATT协议负责管理设备之间的数据存储。它为服务端提供了一种客户端可以进行读写的Attribute数据结构,并为客户端提供了访问、写入和读取数据的机制(访问方法和权限)。GATT层定义了一个层次化的数据结构,它有助于理解存储在服务端中数据之间的关系。原创 2022-11-21 00:06:01 · 11003 阅读 · 2 评论 -
BLE学习(2):广播包报文格式详解
为了能够充分理解蓝牙的广播,我们先了解一下BLE架构的GAP()层。在一个BLE设备中GAP可以实现:发现蓝牙设备和广播报文并连接、广播并接受连接、发送广播报文、发现蓝牙设备和广播报文但不连接(仅扫描)。对于连接模式而言,两个设备之间可以双向传输数据;对于一个正在广播中的设备而言,无法接收数据(但有一个例外:可以回复报文)。原创 2022-11-18 18:29:53 · 14530 阅读 · 1 评论 -
BLE学习(1):蓝牙协议栈的介绍
GATT封装了ATT,主要用来规范attribute中的数据内容,并将不同的attribute进行分组分类。负责协调蓝牙LE链路中配置文件的交换,配置文件包括诸如handle分配、UUID和权限等信息和数据。GAP用于指定设备的角色(Server/Client)、工作模式和过程。它还管理连接的建立和安全。HCI层负责处理主机和控制器之间的通信。HCI为数据包数据的传输和接收定义了一组命令和事件。)两种技术的协议栈。)层的任务,它直接与蓝牙PHY层直接相连,并管理链路状态。下图展示了蓝牙的协议栈和OSI(原创 2022-11-18 15:48:15 · 10394 阅读 · 1 评论 -
泰凌微BLE实操(1):HCI层事件的注册和使用
断开连接事件属于HCI事件中,所以这里以建立连接和断开连接的事件为例。但是这毕竟是泰凌微官方给的事件,我们还是想知道真正的蓝牙协议中是如何处理这个事件,还有原始的报文是什么样的。是通过HCI将Controller所有的event报告给Host。来处理产生的事件,加入我们连接成功要获得连接句柄。首先我们来看一下在Host或App层接收。其中Octet为拉丁文,即字节,可以看到。原创 2022-11-17 22:31:15 · 1171 阅读 · 0 评论