Logical Link Control and Adaptation Layer Protocol (L2CAP)


逻辑链路控制和适配层协议(L2CAP)L2CAP 运行在 HCI 之上的 Host ,实现 Host 更高层(GAP、GATT、APP)和低层协议栈之间传输数据。该层负责在 Host 和协议栈之间把交换的数据进行分割( segmentation )和重组( reassembly )以提供协议的多路处理能力。L2CAP 允许更高级别的协议和应用程序发送和接收高达 64KB(实际受限于蓝牙设备实际内存)的上层数据包(L2CAP 服务数据单元,SDU)。图1. L2CAP 层数据传输示意图注意:可能还是不太明白这里的 L2CAP,简单理解就是对上层协议数据多路处理,同时提供数据缓存以及重新拆包...

Generic Attribute Profile (GATT)


通用属性配置文件(GATT)GAP 层负责连接相关的功能,GATT 主要是负责在两个已经连接的设备之间进行交互数据。GAP 层把 BLE 设备区分为主机 Master(Central)和从机 Slave(Perpherial),在 GATT 层则区分为 Server 和 Client 。客户端读取和写入存储在服务端的特征值( Characteristics )。 Server 该设备包含由 GATT 客户端读取或写入的 characteristic。 Client 从 GATT 服务器读取或写入数据的蓝牙设备。图1. Server 和 Client注意:GATT 分层的 Server/C...

Generic Access Profile (GAP)


概述GAP 分层负责设备建立连接的相关功能,包括设备发现、数据链路建立、终止、初始化安全管理和设备配置,参见下图 1 。图1. GAP 分层的建立连接的示意图在 Standby 状态,双方设备都处于未连接状态。Advertiser 尝试广播数据,Scanner 接收到广播数据后尝试进行扫描请求,并且得到扫描回复。此时 Scanner 产生连接意图,转变成 Initiator 发送连接请求,成功连接后发送广播的 Advertiser 作为 Master ,进行连接请求的 Initiator 成为 Slave。Standby:复位后设备处于初始空闲状态。Advertiser:设备正在通过特定...

simple_peripheral 应用框架


应用程序本章节将详细讲解 CC2640R2F BLE5.0 的应用程序框架,我们希望您已经按照学习线路图储备了 CC2640R2F平台的软硬件架构知识 ,明白应用工程区分 App 和 Stack 工程管理。本章主要内容是围绕基于 TI-RTOS 的 App 应用程序框架。图1. 应用程序框架图以 simple_peripheral Demo 应用程序部分为例,包括以下内容:Pre-main initializationICallSimple Peripheral TaskIntertask Messages注意:虽然 GAPRoleTask 也是工程的一部分,但会把它放在协议栈部分进行讨...

ble5.0 蓝牙协议概述


Overview从这部分开始详细介绍蓝牙协议栈功能、接口、协议栈工程关联、实现协议栈的文件和任务,该任务也作为协议栈应用的最高优先级任务。TI 采用库文件的方式作为协议栈的一个主策略,尽管如此,还是需要开发者了解协议栈各个抽象的功能和相互作用。介绍蓝牙 5.0 核心规范包含 LE 和 BR/EDR 两种设备类型,其中 LE 主要是设计为低功耗、小数据终端产品。BLE5.0 核心主要包含以下功能:2M Sym/s PLY 层设计(2M Symbol Rate 物理层)。LE 信道选择算法 #2LE 安全连接LE 数据长度扩展LE 隐私LE LCAP 面向连接的信道支持LE 链路层拓扑结构L...

stm32cube programmer


stm32cube programmer 固件烧写工具软件ST-Link USB烧写工具官方产品介绍页面提示:所有固件工具都提供官方在线连接,实在找不到就找我(李洁)要。驱动安装初次使用ST-Link需要安装驱动, 如果已经安装过Keil或者STM32CubeProgrammer 会自动安装驱动。打开设备设备管理器(Win+R 键入devmgmt.msc)确定。如果显示未知设备,需要手动安装驱动。驱动路径在C:\Keil_v5\ARM\STLink\USBDriver C:\Program Files (x86)\STMicroelectronics\STM32Cube\STM32Cu...

STM32CubeMx


STM32CubeMxC:Program FilesSTMicroelectronicsSTM32CubeSTM32CubeMXhelpUM1718.pdfSTM32CubeMx 是一个STM32的图形化配置工具,可以作为STMCube 工具独立使用,也可以作为Eclipse的插件。主要包含以下主要工功能:覆盖所有STM32的选型;所有ST官方开发板选择;快速配置(引脚、时钟、外设、和中间件软件)以及产生相应的C代码;通过先前的配置快速切换选型;轻松导出到兼容的配置到兼容MCU;产生配置报告;通过选择IDE生产对应工程代码;功耗计算;如何产生配置代码File->New Projec...

关于ble 5.0的几个常见问答


关于蓝牙5.0的几个常见问答本文汇集了关于蓝牙 5.0 几个常见问题的答案,以帮助开发人员更好地了解蓝牙 5.0 的一些新特性。蓝牙 5.0 向后兼容现有的蓝牙 4.x 设备吗?对于蓝牙 4.1 、4.2 和 5.0 中添加的所有功能,它们在 BLE 连接期间都是可以协商选择的。这一点确保了蓝牙 5.0 设备能够可靠地连接到旧版蓝牙 4.x 设备,并与其进行交互。除了向后兼容性之外,蓝牙 4.1 和 4.2 中的可选功能适用于蓝牙 5.0 .因此,除了 2 Mbps 功能之外,蓝牙 5.0 设备还可支持蓝牙 4.2 的数据长度扩展功能。TI BLE5-Stack 结合了蓝牙 4.1 和...