【Bluetooth蓝牙开发】一、开篇词 | 打造全网最详细的Bluetooth开发教程
个人主页:董哥聊技术
我是董哥,嵌入式领域新星创作者
创作理念:专注分享高质量嵌入式文章,让大家读有所得!
1、前言
大家好,我是董哥!
随着物联网技术的快速发展,WiFi、蓝牙成了物联网通信主力军,但是不得不说,这两个技术的门槛还是比较高的,尤其是蓝牙,单单其官方文档,就有将近3000Page,让人望而生畏!
纵观全网,蓝牙技术的学习有三大难点:
- 其一:学习资料之杂
- 其二:极少有系统学习蓝牙的文章
- 其三:蓝牙协议晦涩难懂
这样就导致了蓝牙学习成本之高,劝退人数之多。
因此,为了让初学者快速上手并且掌握蓝牙开发相关技术,我也根据自己的开发经验,精心打造了这一期专栏,主要目的是可以帮助大家零基础入门蓝牙开发,并且可以创建一个交流平台,以供大家交流!
本专栏从四个大方面来学习蓝牙技术:蓝牙基础知识,蓝牙协议栈,蓝牙调试方法,蓝牙应用。我也一定会尽最大努力,帮助大家快速敲开蓝牙开发的大门。
2、蓝牙综合介绍
下面我们看一下零基础入门蓝牙开发的学习步骤,希望能够帮助到大家!!!

3、精华文章汇总
为了方便大家快速找到文章,这里按照学习流程进行汇总,点击即可访问!
| 章节 | 内容 |
|---|---|
| 1、开篇词 | 1. 文章总览 |
| 2、蓝牙开发入门 | 2.1 蓝牙基本概念 |
| 2.2 蓝牙发展历程 | |
| 2.3 常见蓝牙架构 | |
| 3. 蓝牙协议栈总览 | 2.1 从两个视角,了解蓝牙协议栈 |
| 4. 蓝牙协议栈——物理层 | 3.1 物理层的划分 |
| 5. 蓝牙协议栈——链路层 | 4.1 链路层状态、角色定义 |
| 4.2 空中接口数据包格式,字段分析 | |
| 6. 蓝牙协议栈——传输层 | 5.1 HCI接口功能介绍 |
| 5.2 HCI层包的格式,字段分析 | |
| 7. 蓝牙协议栈——L2CAP协议 | 6.1 L2CAP协议作用 |
| 6.2 L2CAP协议包的格式,字段分析 | |
| 8. 蓝牙协议栈——ATT协议 | 7.1 ATT协议作用及由来 |
| 7.2 ATT数据结构 | |
| 7.3 ATT协议的数据包格式,字段分析 | |
| 9. 蓝牙协议栈——GATT协议 | 8.1 GATT的作用 |
| 8.2 GATT协议框架 | |
| 10. 蓝牙通信流程分析 | 9.1 蓝牙初始化流程 |
| 9.2 蓝牙广播流程 | |
| 9.3 蓝牙扫描流程 | |
| 9.4 蓝牙建立连接流程 | |
| 9.5 蓝牙数据交互流程 | |
| 9.6 蓝牙断开流程 | |
| 11. 蓝牙协议栈——Bluez交叉编译 | 10.1 Glib、Zlib、D-Bus、ncurses、readline、bluez |
| 12. 蓝牙调试工具汇总 | 11.1 hciconfig |
| 11.2 hcitool | |
| 11.3 hcidump | |
| 11.4 hciattach | |
| 11.5 btmon | |
| 11.6 bluetoothd | |
| 11.7 bluetoothctl |
4、结语
以上,为目前Bluetooth所汇总的文章,每一篇都是精心打磨的文章,并且后续会继续补充蓝牙开发相关内容,期待大家关注!
- 同时,为了更好的交流与成长,后续可以建立蓝牙开发交流群,以供大家探讨相关技术!
- 附:蓝牙协议下载地址
【Bluetooth蓝牙开发】一、开篇词 | 打造全网最详细的Bluetooth开发教程的更多相关文章
- [ASP.NET Core开发实战]开篇词
前言 本系列课程文章主要是学习官方文档,再输出自己学习心得,希望对你有所帮助. 课程大纲 本系列课程主要分为三个部分:基础篇.实战篇和部署篇. 希望通过本系列课程,能让大家初步掌握使用ASP.NET ...
- 移动端App开发 - 01 - 开篇
移动端App开发 - 01 - 开篇 从此笔记之后开启移动端 app 开发学习 该系列笔记去掉所有无关重要的东西,简介干练 我的移动端App开发笔记 1.移动端App开发 - 02 - iPhone/ ...
- 【Bluetooth|蓝牙开发】二、蓝牙开发入门
个人主页:董哥聊技术 我是董哥,嵌入式领域新星创作者 创作理念:专注分享高质量嵌入式文章,让大家读有所得! [所有文章汇总] 1.蓝牙基础概念 蓝牙,是一种利用低功率无线电,支持设备短距离通信的无线电 ...
- android bluetooth蓝牙移植
http://blog.csdn.net/zhengmeifu/article/details/7705172 前段时间移植神念系统需要使用到bluetooth功能,现将移植过程中碰到的问题简要列一下 ...
- 打造TypeScript的Visual Studio Code开发环境
打造TypeScript的Visual Studio Code开发环境 本文转自:https://zhuanlan.zhihu.com/p/21611724 作者: 2gua TypeScript是由 ...
- 打造理想的Windows 10 APP开发环境的5个步骤
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:微软即将发布Windows 10手机版,实际上很多人现在已经开始在开发Windows ...
- bluetooth 蓝牙协议和标准,配置
Bluetooth 配置文件表达了一般行为,Bluetooth 设备可以通过这些行为与其它设备进行通信.Bluetooth 技术定义了广泛的配置文件,描述了许多不同类型的使用案例.为了使用 Bluet ...
- [daily][device][bluetooth] 蓝牙怎么办!(archlinux下驱动蓝牙鼠标,以及三星手机)
去年地摊买的破无线鼠标坏掉了.看上微软的Designer Mouse蓝牙鼠,但是买之前我要确认我能不能驱起来. 这款鼠标只支持蓝牙4.0.系统支持windows8以上,不支持xp和windows7. ...
- 打造高质量Android应用:Android开发必知的50个诀窍
打造高质量Android应用:Android开发必知的50个诀窍
随机推荐
- iommu系列之---概念解释篇
本文会对iommu中的一些容易引起疑惑的概念进行阐述,内核版本为4.19. 先上简写: DMAR - DMA remapping DRHD - DMA Remapping Hardware Unit ...
- PerfView专题 (第十一篇):使用 Diff 功能洞察 C# 内存泄漏增量
一:背景 去年 GC架构师 Maoni 在 (2021 .NET 开发者大会) [https://ke.segmentfault.com/course/1650000041122988/section ...
- 第九十三篇:ESLint:可组装的javaScript和JSX检查工具
好家伙, 1.什么是ESLint? 代码检查工具,用来检查你的代码是否符合指定的规范 2.ESLint有什么用? 统一JavaScript代码风格的工具 在合作开发的时候, 每个成员的代码风格都有可能 ...
- 第二十八篇:关于node.js连接数据库
好家伙,这个不难,但是也不简单. $ cnpm install mysql 教程里是带美元符的,但是我打的时候加上美元符用不了,所以我就没用美元符了,一样能行. 还有,淘宝镜像,yyds, var m ...
- android 逆向 smali手写helloworld
编写Hello.smali文件 .class public LHelloWorld; .super Ljava/lang/Object; .method public static main([Lja ...
- 国内外各大物联网IoT平台鸟瞰和资源导航
一.国内外物联网平台 国内 百度物接入IoT Hub 阿里云物联网套件 智能硬件开放平台 京东微联 机智云IoT物联网云服务平台及智能硬件自助开发平台 庆科云FogCloud Ablecloud物联网 ...
- vscode调试thinkhphp
第一步先安装xdebug扩展,我用宝塔环境,所以一键安装 第二步.在vscode中安装插件 我的php.ini是这样的 xdebug.remote_enable = 1 xdebug.remote_a ...
- Alertmanager结合Slack使用
Slack作为一款即时通讯工具,协作沟通主要通过Channel(平台)来完成,用户可以在企业中根据用途添加多个Channel,并且通过Channel来集成各种第三方工具. 例如,我们可以为监控建立一个 ...
- 手把手教你使用LabVIEW OpenCV DNN实现手写数字识别(含源码)
@ 目录 前言 一.OpenCV DNN模块 1.OpenCV DNN简介 2.LabVIEW中DNN模块函数 二.TensorFlow pb文件的生成和调用 1.TensorFlow2 Keras模 ...
- vue中a标签地址传参
注意: 1)href前面加冒号" : ". 2)字符串用单引号包裹 . 3)传过去数值用+号连接 传值:<li class="list-li ...