原文:第06节-开源蓝牙协议BTStack框架分析

本篇博客根据韦东山的视频,整理所得。 本篇博客讲解BTStack的框架,首先来看一下硬件的结构: 蓝牙模块接在电脑上,或是接在开发板上。不论接在哪,我们都需要编写程序来控制这个蓝牙模块。 . 我们需要发送数据给蓝牙模块 需要发送命令给蓝牙模块,比如让它发出无线信号去扫描 识别 连接 读写附近的蓝牙设备 . 需要从蓝牙模块获得数据 . 需要处理获得的数据 上述 步骤可以简化为一个循环: 读取数据:可 ...

2019-10-02 16:19 0 697 推荐指数:

查看详情

第07-开源蓝牙协议BTStack框架代码阅读(下)

上篇博客中已经对BTStack框架进行了较为详细的说明,本篇博客将进一步总结一下(由韦大仙笔记所得)。 可以从5个方面来理解BTStack框架: 1.硬件操作:hci_transport_t BTStack支持多种接口的蓝牙模块,比如USB口、3线串口、5线串口 ...

Thu Oct 03 00:22:00 CST 2019 0 413
第07-开源蓝牙协议BTStack框架代码阅读(上)

首先来看一下,对于硬件操作,它是如何来进行处理的。在上篇文章中曾说过,在main函数里面它会调用硬件相关的代码,调用操作系统相关的代码。在BTStack中,可以搜索一下main.c,将会发现有很多main.c,都是为于port目录下面。 View Code ...

Thu Oct 03 00:21:00 CST 2019 0 522
第08-开源蓝牙协议BTStack数据处理

本篇博客根据韦东山的视频整理所得。 在上篇博客,通过阅读BTStack的源码,大体了解了其框架,对于任何一个BTStack的应用程序都有一个main函数,这个main函数是统一的。这个main函数做了某些初始化之后,最终会调用到应用程序提供的btstack_main,在btstack ...

Thu Oct 03 00:24:00 CST 2019 0 418
开源蓝牙协议BTstack学习笔记 - 快速启动

文档:http://bluekitchen-gmbh.com/btstack/ 代码:https://github.com/bluekitchen/btstack 官方使用MSYS2与mingw-w64 编译环境,先保持跟官方一样的开发环境,等demo跑起来和熟悉后在尝试切换 ...

Sun Jul 05 23:34:00 CST 2020 0 550
第09-使用BTStack编写蓝牙程序

Bluetooth LE Exploer(微软提供的)可以读取BLE蓝牙设备,可以读写它的值。本篇博客将使用BTStack写出一个精简版的Bluetooth LE Exploer。 涉及文件: btstack-master\example\le_data_channel_client.c ...

Thu Oct 03 00:26:00 CST 2019 0 470
蓝牙spp协议分析

基本概念 蓝牙串口是基于 SPP 协议(Serial Port Profile),能在蓝牙设备之间创建串口进行数据传输的一种设备。 蓝牙串口的目的是针对如何在两个不同设备(通信的两端)上的应用之间保证一条完整的通信路径。具体的基本流程如下: 设备A:这个设备会发起一个连接另外设备的请求。设备B ...

Mon Oct 21 20:43:00 CST 2019 0 4163
蓝牙协议框架梳理

蓝牙基本概念 Piconet 在蓝牙设备没有跟其他蓝牙设备连线的时候,它自己属于一个piconet。当有连线后,piconet里有两种角色:master 和 slave。发起连线的一方是master,被连接的一方是slave。slave会以master的时钟为参照,以625us为时间单位 ...

Tue Aug 04 18:51:00 CST 2020 0 1061
蓝牙协议分析(2)_协议架构

1. 前言 本文是蓝牙协议分析的第二篇文章,在“蓝牙协议分析(1)_基本概念”的基础上,从整体架构的角度,了解蓝牙协议的组成,以便加深对蓝牙的理解。 2. 协议层次 蓝牙协议是通信协议的一种,为了把复杂问题简单化,任何通信协议都具有层次性,特点如下: 从下到上分层 ...

Thu Jan 31 18:26:00 CST 2019 0 763
 
粤ICP备18138465号  © 2018-2026 CODEPRJ.COM