最新文�? 企业该如何拥有自主大模型,引领行业未来 学习大模型的必经之路:Transform 大模型与知识智能:心理疾病治疗的新希望 大模型泡沫退去,谁能活到下半场 大模型如何改变内容生态
原创 : 一篇文章足够你学习蓝牙技术,提供史上最全的蓝牙技术(传统蓝牙/低功耗蓝牙)文章总结,文档下载总结(2020/12/11更新) 历史版本:
上次修改时间:

引用自

原创 : 一篇文章足够你学习蓝牙技术,提供史上最全的蓝牙技术(传统蓝牙/低功耗蓝牙)文章总结,文档下载总结(2020/12/11更新)

一篇文章足够你学习蓝牙技术,提供史上最全的蓝牙技术(传统蓝牙/低功耗蓝牙)文章总结,文档下载总结(2020/12/11更新)

本文章目的:

1)给广大蓝牙爱好者提供蓝牙资料下载渠道

2)给广大蓝牙爱好者增加一个蓝牙学习文章导读

我们的蓝牙书以及CSDN蓝牙系列的书籍以及视频有以下计划,大家可以根据兴趣爱好或者工作需要挑选特定的章节来学习!

另外,提供一个学习,交流渠道,欢迎关注以及”剁手“


告知:初学蓝牙者暂时不要碰controller(蓝牙芯片)里面的协议,否则会看到你怀疑人生,等彻底看会了蓝牙host(蓝牙协议栈)后再尝试去研究

第零篇:文档代码下载连接总结(备注:如果连接失效,请评论留言,我及时更新)

1. 代码github连接(点击我)

2. 蓝牙协议栈视频教程(点击我)!!!!!!!!!!!!!!!!!!!!!!!

3. 自己写的蓝牙书下载(截止20200908,点击我,提取码2tav)目前文章有最新,但是暂不提供

4. 开发板链接(点击我购买)

第一篇:蓝牙综合介绍

主要介绍蓝牙的一些概念,产生背景,发展轨迹,市面蓝牙介绍,以及蓝牙开发板介绍,内容如下:

|章节|文章标题|文章链接|视频课程 |------ |第一章 蓝牙概述|1. 蓝牙的基本概念以及发展轨迹|点击我|待更新 |2. 一文让你彻底了解市面蓝牙架构|点击我|待更新 |3.吐血推荐历史最全的蓝牙协议栈介绍|点击我|待更新 |第二章 蓝牙模组以及开发板介绍|1.蓝牙模组以及开发板介绍|点击我|待更新 |2.开源协议栈代码结构以及常用配置选项介绍|点击我|待更新 |3. STM32F1(我们的)实现蓝牙协议栈搜素以及原理介绍|点击我|待更新 |4. 正点原子F1实现蓝牙协议栈搜索以及原理介绍|点击我|待更新

第二篇:Transport层介绍

主要介绍蓝牙协议栈跟蓝牙芯片之前的硬件传输协议,比如基于UART的H4,H5,BCSP,基于USB的H2等,再就是一个根据Transport的btsnoop的介绍,内如如下:

|章节|文章标题|文章链接|视频课程 |------ |第三章 Transport类型介绍|1. 蓝牙UART H4 Transport介绍|点击我点击我 |2. 蓝牙UART H5 Transport介绍|待更新 |3. 蓝牙UART BCSP Transport介绍|待更新 |4. 蓝牙USB H2 Transport介绍|待更新 |5. 蓝牙SDIO Transport介绍|待更新 |第四章 btsnoop介绍|1. 蓝牙协议栈学习/开发利器-btsnoop介绍|点击我 |2.蓝牙协议分析工具Wireshark/Frontline/Ellisys使用介绍|点击我

第三篇:传统蓝牙controller介绍

主要介绍传统蓝牙芯片的介绍,包括射频层(RF),基带层(baseband),链路管理层(LMP)等,内容如下:

|章节|文章标题|文章链接|视频课程 |------ |第五章 射频层(RF)介绍|待更新|待更新|待更新 |第六章 基带层(baseband)介绍|待更新|待更新|待更新 |第七章 链路管理层(LMP)介绍|待更新|待更新|待更新 |第八章 802.11协议使用层(AMP)介绍|待更新|待更新|待更新

第四篇:传统蓝牙host介绍

主要介绍传统蓝牙的协议栈,比如HCI,L2CAP,SDP,RFCOMM,HFP,SPP,HID,AVDTP,AVCTP,A2DP,AVRCP,OBEX,PBAP,MAP,Apple IAP2等等一系列的协议吧。内容如图:

|章节|文章标题|文章链接|视频课程 |------ |第九章 主机控制器接口层(HCI)|1.传统蓝牙HCI(bluetooth HCI)概念介绍|点击我点击我 |2.蓝牙HCI command/event/acl/sco格式介绍|点击我 |3.传统蓝牙HCI command(蓝牙命令)详细介绍|点击我 |4.传统蓝牙HCI event(蓝牙事件)详细介绍|点击我 |5.蓝牙HCI流控(HCI flow control)详细介绍|点击我 |6.蓝牙协议栈初始化流程介绍(以CSR8311为例)|点击我 |7.电脑串口工具验证蓝牙初始化(以CSR8311为例)|点击我 |8.蓝牙协议栈搜索介绍|点击我 |9.蓝牙协议栈HCI连接介绍 |点击我 |10.蓝牙协议栈pincode配对以及SSP配对流程介绍|点击我 |11. 蓝牙协议栈EIR(Extern inquiry response)介绍|点击我 |第十章 逻辑链路控制和适配协议(L2CAP)|1. 传统蓝牙L2CAP概念介绍|点击我 |2. L2CAP基本模式(basic mode)数据格式|点击我 |3. L2CAP信令封包(SIGNALING PACKET)格式|点击我 |4. 传统蓝牙L2CAP连接流程介绍(以被连接为例)|点击我 |第十一章 服务发现协议(SDP)|1. 传统蓝牙服务问询协议SDP概念|点击我 |2. 传统蓝牙SDP数据元介绍(SDP data element)|点击我 |3. 传统蓝牙SDP协议详细介绍|点击我 |第十二章 串口仿真协议(RFCOMM)|1. 传统蓝牙RFCOMM协议概念介绍|点击我 |2. 一文彻底明白 传统蓝牙协议栈RFCOMM协议帧格式|点击我 |3. 传统蓝牙RFCOMM多路控制帧(multiplexor frames)介绍|点击我 |4. 传统蓝牙RFCOMM协议流程介绍|点击我 |第十三章 人机接口设备协议(HID)|待更新|待更新 |第十四章 蓝牙串口协议(SPP)|1. 传统蓝牙SPP(Serial Port Profile)概念介绍|点击我 |2. STM32F1(我们的)实现SPP收发自定义数据介绍|点击我 |3. 传统蓝牙SPP 建立连接/接受数据/发送数据/断开连接 流程介绍|点击我 |第十五章 蓝牙免提协议(HFP)|1. 蓝牙电话HFP的概念介绍|点击我 |2. 蓝牙电话connection manager(SLC的建立跟释放)|点击我 | 3. HFP传输手机状态信息(信号/漫游/电量/运行商/电话状态) |点击我 |4. HFP SCO建立/释放/在通话中Audio transfer|点击我 |5. 接听来电/挂断来电(HFP Accept/Reject incoming call)|点击我 |6. 通过号码拨打电话/memory拨打电话/尾号重播|点击我 |7. 获取本地号码/获取语音信箱号码/获取通话时号码(CLCC)|点击我 |8. 三方通话功能相关的流程介绍 Three-way call|点击我 |9. 关闭手机的回声消除EC,噪音减弱NR(noise reduction)|点击我 |10. 开启关闭语音识别功能|点击我 |11.电话免提协议HFP(Hands-Free)SDP介绍|点击我 |12. STM32 上位机 测试蓝牙电话功能功能|点击我 |第十六章 设备ID协议(DID)|1. 蓝牙DID协议讲解 Bluetooth Device ID|点击我 |第十七章 音视频分布传输协议(AVDTP)|1. 音视频频分布传输协议(AVDTP)概念|点击我 |2. 音视频频分布传输协议(AVDTP)封包格式|点击我 |3. 音视频频分布传输协议(AVDTP) 错误码以及Service Capablities介绍|点击我 |4. 音视频频分布传输协议(AVDTP) 命令(Signal)封包介绍|点击我 |第十八章 蓝牙音乐协议(A2DP)|1. 高质量音频分布协议(A2DP) 概念介绍|点击我 |2. 高质量音频分布协议(A2DP) SBC编解码算法|点击我 |3. 高质量音频分布协议(A2DP) SDP以及cod介绍|点击我 |4. 高质量音频分布协议(A2DP) 连接播放音乐断开流程(被连接)介绍|点击我 |第十九章 音视频控制传输协议(AVCTP)|待更新|待更新 |第二十章 蓝牙音乐控制协议(AVRCP)|待更新|待更新 |第二十一 蓝牙对象交互协议(OBEX)|待更新|待更新 |第二十二章 蓝牙电话本协议(PBAP)|待更新|待更新 |第二十三章 蓝牙短信访问协议(MAP)|待更新|待更新 |第二十四 文件推送协议(OPP)|待更新|待更新 |第二十五 蓝牙网络封装协议(BNEP)|待更新|待更新 |第二十六章 蓝牙个人局域网协议(PAN)|待更新|待更新 |第二十八章 附件接口协议(IAP2 苹果特有)|待更新|待更新

第五篇:低功耗蓝牙controller介绍

主要介绍低功耗蓝牙芯片,包括物理层(PHY),链路层(LL),内容如下:

|章节|文章标题|文章链接|视频课程 |------ |第二十九章 物理链路协议(PHY)|待更新|待更新|待更新 |第三十章 链路协议(LL)|待更新|待更新|待更新

第六篇:低功耗蓝牙host介绍

低功耗蓝牙协议栈的介绍,包括HCI,L2CAP,ATT,GATT,SM等,内容如下:

|章节|文章标题|文章链接|视频课程 |------ |第三十一章 主机控制器接口层(HCI)| 1. 低功耗蓝牙搜索广播的实现流流程介绍 |点击我点击我 |2. BLE广播流程介绍,低功耗蓝牙广播的实现流流程介绍|点击我 |第三十二章 属性协议层(ATT)|待更新|待更新 |第三十三章 通用属性协议层(GATT)|待更新|待更新 |第三十四章 安全管理协议层(SM)|待更新|待更新

第七篇:蓝牙芯片介绍

主要介绍芯片特性,vendor command的名词

|章节|文章标题|文章链接|视频课程 |------ |第三十五章 CSR8311介绍|待更新|待更新|待更新 |第三十六章 CSR8510介绍|待更新|待更新|待更新 |第三十七章 QCA6696介绍|待更新|待更新|待更新

第八篇:附录

主要介绍以上常用名词的介绍以及一些特殊流程的介绍等。 |章节|文章标题|文章链接|视频课程 |附录一|蓝牙设备类型cod(class of device)介绍|点击我|待更新

第九篇:文章更新更新日志

那我们就一一来列举下(持续更新此文章,每周一更这篇文章)

2020/08/10更新:

1)第九章第6篇文章:蓝牙协议栈初始化流程介绍(以CSR8311为例)

2)第九章第7篇文章:电脑串口工具验证蓝牙初始化(以CSR8311为例)

3)第九章第8篇文章:蓝牙协议栈搜索介绍

4)第九章第9篇文章:蓝牙协议栈HCI连接介绍 

5)第九章第10篇文章:蓝牙协议栈pincode配对以及SSP配对流程介绍

5)第九章视频:传统蓝牙HCI介绍(点击我)

2020/08/15更新:

1)第十章第1篇文章:传统蓝牙L2CAP概念介绍

2)第十章第2篇文章:L2CAP基本模式(basic mode)数据格式

3)第十章第3篇文章:L2CAP信令封包(SIGNALING PACKET)格式

4)第十章第4篇文章:传统蓝牙L2CAP连接流程介绍(以被连接为例)

5)增加蓝牙Core 5.2 下载链接

2020/08/21更新:

1)第十一章第1篇文章:传统蓝牙服务问询协议SDP概念

2)第十一章第2篇文章:传统蓝牙SDP数据元介绍(SDP data element)

3)第十一章第3篇文章:传统蓝牙SDP协议详细介绍

4)增加自己写的蓝牙Github连接

5)增加我自己写的蓝牙书下载链接

2020/08/28更新:

1)第十二章第1篇文章:传统蓝牙RFCOMM协议概念介绍

2)第十二章第2篇文章:一文彻底明白 传统蓝牙协议栈RFCOMM协议帧格式

3)第十二章第3篇文章:传统蓝牙RFCOMM多路控制帧(multiplexor frames)介绍

4)第十二章第4篇文章:传统蓝牙RFCOMM协议流程介绍

5)增加购买开发板的链接

6)修改开发板连接二维码失效问题

2020/09/08更新:

1)第九章第1篇文章:蓝牙协议栈EIR(Extern inquiry response)介绍

2)第二章第1篇文章:蓝牙模组以及开发板介绍

3)第二章第2篇文章:开源协议栈代码结构以及常用配置选项介绍

4)第二章第3篇文章:STM32F1(我们的)实现蓝牙搜索以及原理介绍

5)第二章第4篇文章:正点原子F1实现蓝牙搜索以及原理介绍

6)附录1:蓝牙设备类型cod(class of device)介绍

7)增加书的最新更新链接

这次更新间隔较长,因为迎来了人生大事,喜得千金

2020/10/11更新:

1)第十四章第1篇文章:传统蓝牙SPP(Serial Port Profile)概念介绍

2)第十四章第2篇文章:STM32F1(我们的)实现SPP收发自定义数据介绍

3)第十四章第3篇文章:传统蓝牙SPP 建立连接/接受数据/发送数据/断开连接 流程介绍

2020/10/23更新:

1)第十五章第1篇文章:蓝牙协议栈 电话免提协议HFP(Hands-Free)概念讲解

2)第十五章第2篇文章:蓝牙协议HFP电话免提协议 Connection management 连接管理HFP SLC 的建立跟释放

3)第十五章第3篇文章:蓝牙电话协议HFP传输手机状态信息(信号/漫游/电量/运行商/电话状态)

4)第十五章第4篇文章:蓝牙电话协议HFP(Hands-Free Profile) SCO建立/释放/在通话中Audio transfer

5)第十五章第5篇文章:蓝牙电话协议HFP接听来电/挂断来电(HFP Accept/Reject incoming call)

6)第十五章第6篇文章:蓝牙电话协议HFP通过号码拨打电话/memory拨打电话/尾号重播 功能介绍

7)第十五章第7篇文章:蓝牙电话协议HFP 获取本地号码/获取语音信箱号码/获取通话时号码(CLCC)

8)第十五章第8篇文章:蓝牙电话协议HFP(Hands-Free Profile) 三方通话功能相关的流程介绍 Three-way call

9)第十五章第9篇文章:蓝牙协议栈 电话免提协议HFP关闭手机的回声消除EC,噪音减弱NR(noise reduction)

10)第十五章第10篇文章:蓝牙电话协议HFP(Hands-Free Profile) 开启关闭语音识别功能

2020/11/02更新:

1)第十五章第11篇文章:电话免提协议HFP(Hands-Free)SDP介绍

2)第十五章第12篇文章:STM32 上位机 测试蓝牙电话功能功能

3)第三十一章第1篇文章:低功耗蓝牙搜索广播的实现流流程介绍

4)第三十一章第2篇文章:BLE广播流程介绍,低功耗蓝牙广播的实现流流程介绍

2020/11/11更新:

1)第十六章第1篇文章:蓝牙DID协议讲解 Bluetooth Device ID

2)第十七章第1篇文章:音视频频分布传输协议(AVDTP)概念

3)第十七章第2篇文章:音视频频分布传输协议(AVDTP)封包格式

4)第十七章第3篇文章:音视频频分布传输协议(AVDTP) 错误码以及Service Capablities介绍

2020/12/11更新:

1)第十七章第4篇文章:音视频频分布传输协议(AVDTP) 命令(Signal)封包介绍

2)第十八章第1篇文章:高质量音频分布协议(A2DP) 概念介绍

3)第十八章第2篇文章:高质量音频分布协议(A2DP) SBC编解码算法

4)第十八章第3篇文章:高质量音频分布协议(A2DP) SDP以及cod介绍

5)第十八章第4篇文章:高质量音频分布协议(A2DP) 连接播放音乐断开流程(被连接)介绍

0条评�?
全部评论

关于博主

an actually real engineer

通信工程专业毕业,7年开发经验

技术栈:

精通c/c++

精通golang

熟悉常见的脚本,js,lua,python,php

熟悉电路基础,嵌入式,单片机

耕耘领域:

服务端开发

嵌入式开发

git

>

gin接口代码CURD生成工具

sql ddl to struct and markdown,将sql表自动化生成代码内对应的结构体和markdown表格格式,节省宝贵的时间。

输入ddl:
输出代码:

qt .ui文件转css文件

duilib xml 自动生成绑定控件代码

协议调试器

基于lua虚拟机的的协议调试器软件 支持的协议有:

串口

tcp客户端/服务端

udp 组播/udp节点

tcp websocket 客户端/服务端

软件界面

使用例子: 通过脚本来获得接收到的数据并写入文件和展示在界面上

下载地址和源码

duilib版本源码 qt qml版本源码 二进制包

webrtc easy demo

webrtc c++ native 库 demo 实现功能:

基于QT

webrtc摄像头/桌面捕获功能

opengl渲染/多播放窗格管理

janus meeting room

下载地址和源码

源码 二进制包

wifi,蓝牙 - 无线开关

实现功能:

通过wifi/蓝牙实现远程开关电器或者其他电子设备

电路原理图:

实物图:

深度学习验证工具

vtk+pcl 点云编辑工具

实现功能:

1. 点云文件加载显示(.pcd obj stl)

2. 点云重建

3. 点云三角化

4. 点云缩放

下载地址:

源码 二进制包

虚拟示波器

硬件实物图:

实现原理

基本性能

采集频率: 取决于外部adc模块和ebaz4205矿板的以太网接口速率,最高可以达到100M/8 约为12.5MPS

上位机实现功能: 采集,显示波形,存储wave文件。

参数可运行时配置

上位机:

显示缓冲区大小可调

刷新率可调节

触发显示刷新可调节

进程守护工具

基本功能:

1. 守护进程,被守护程序崩溃后自动重启。

2. 进程输出获取,显示在编辑框中。

二进制包

openblt 烧录工具

基本功能:

1. 加载openblt 文件,下载到具有openblt bootloader 运行的单片机中。

二进制包

opencv 功能验证工具(开源项目二次开发)

基本功能:

1. 插件化图像处理流程,支持自定义图像处理流程。 2. 完善的日志和权限管理

二进制包

又一个modbus调试工具

最近混迹物联网企业,发现目前缺少一个简易可用的modbus调试工具,本软件旨在为开发者提供一个简单modbus测试工具。
主打一个代码简单易修改。
特点:

1. 基于QT5

2. 基于libmodbus

3. 三方库完全跨平台,linux/windows。

二进制包

屏幕录制工具

1. 基于QT5

2. 基于ffmpeg

3. 支持自定义录屏

源代码

开源plutosdr 板卡

1. 完全开源

2. 提高固件定制服务

3. 硬件售价450 手焊产量有线

测试数据

内部DDS回环测试

接收测试

外部发送500MHZ FM波形

硬件原理图

matlab测试

2TRX版本

大部分plutosdr应用场景都是讲plutosdr板卡作为射频收发器来使用。
实际上plutosdr板卡本身运行linux 操作系统。是具有一定脱机运算的能力。 对于一些微型频谱检测,简单射频信号收发等应用完全可以将应用层直接实现在板卡上
相较于通过网卡或者USB口传输具有更稳定,带宽更高等优点。
本开源板卡由于了SD卡启动,较原版pluto支持了自定义启动应用的功能。
提供了应用层开发SDK(编译器,buildroot文件系统)。
通过usb连接电脑,经过RNDIS驱动可以近似为通过网卡连接
(支持固件的开发定制)。

二次开发例子

``` all:
arm-linux-gnueabihf-gcc -mfloat-abi=hard --sysroot=/root/v0.32_2trx/buildroot/output/staging -std=gnu99 -g -o pluto_stream ad9361-iiostream.c -lpthread -liio -lm -Wall -Wextra -lrt
clean:
rm pluto_stream

bsdiff算法补丁生成器

1. 官方bsdiff算法例子自带bzip压缩方式

2. 本例子没有压缩,直接生成补丁文件

3. 图形化界面基于DUILIB

二进制文件

版面分析即分析出图片内的具体文件元素,如文档标题,文档内容,文档页码等,本工具基于cnstd模型

Base64 Image

. 闽ICP备19002644号