个人主页:董哥聊技术

我是董哥,嵌入式领域新星创作者

创作理念:专注分享高质量嵌入式文章,让大家读有所得!

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所汇总的文章,每一篇都是精心打磨的文章,并且后续会继续补充蓝牙开发相关内容,期待大家关注!

  • 同时,为了更好的交流与成长,后续可以建立蓝牙开发交流群,以供大家探讨相关技术!
  • 附:蓝牙协议下载地址

文章知识点与官方知识档案匹配,可进一步学习相关知识
CS入门技能树Linux入门初识Linux21347 人正在系统学习中

【Bluetooth蓝牙开发】一、开篇词 | 打造全网最详细的Bluetooth开发教程的更多相关文章

  1. [ASP.NET Core开发实战]开篇词

    前言 本系列课程文章主要是学习官方文档,再输出自己学习心得,希望对你有所帮助. 课程大纲 本系列课程主要分为三个部分:基础篇.实战篇和部署篇. 希望通过本系列课程,能让大家初步掌握使用ASP.NET ...

  2. 移动端App开发 - 01 - 开篇

    移动端App开发 - 01 - 开篇 从此笔记之后开启移动端 app 开发学习 该系列笔记去掉所有无关重要的东西,简介干练 我的移动端App开发笔记 1.移动端App开发 - 02 - iPhone/ ...

  3. 【Bluetooth|蓝牙开发】二、蓝牙开发入门

    个人主页:董哥聊技术 我是董哥,嵌入式领域新星创作者 创作理念:专注分享高质量嵌入式文章,让大家读有所得! [所有文章汇总] 1.蓝牙基础概念 蓝牙,是一种利用低功率无线电,支持设备短距离通信的无线电 ...

  4. android bluetooth蓝牙移植

    http://blog.csdn.net/zhengmeifu/article/details/7705172 前段时间移植神念系统需要使用到bluetooth功能,现将移植过程中碰到的问题简要列一下 ...

  5. 打造TypeScript的Visual Studio Code开发环境

    打造TypeScript的Visual Studio Code开发环境 本文转自:https://zhuanlan.zhihu.com/p/21611724 作者: 2gua TypeScript是由 ...

  6. 打造理想的Windows 10 APP开发环境的5个步骤

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:微软即将发布Windows 10手机版,实际上很多人现在已经开始在开发Windows ...

  7. bluetooth 蓝牙协议和标准,配置

    Bluetooth 配置文件表达了一般行为,Bluetooth 设备可以通过这些行为与其它设备进行通信.Bluetooth 技术定义了广泛的配置文件,描述了许多不同类型的使用案例.为了使用 Bluet ...

  8. [daily][device][bluetooth] 蓝牙怎么办!(archlinux下驱动蓝牙鼠标,以及三星手机)

    去年地摊买的破无线鼠标坏掉了.看上微软的Designer Mouse蓝牙鼠,但是买之前我要确认我能不能驱起来. 这款鼠标只支持蓝牙4.0.系统支持windows8以上,不支持xp和windows7. ...

  9. 打造高质量Android应用:Android开发必知的50个诀窍

    打造高质量Android应用:Android开发必知的50个诀窍

随机推荐

  1. 用Socket套接字发送和接收文件(中间用数组存取)

    创建服务端: public class TcpFileServer { public static void main(String[] args) throws Exception { //1创建S ...

  2. Typora的破解

    Typora是什么? Typora是一款支持实时预览的Markdown文本编辑器.支持即时渲染技术,这也是与其他Markdown编辑器最显著的区别.即时渲染使得你写Markdown就想是写Word文档 ...

  3. 搭建eBackup对接NFS服务

    环境准备 两个虚拟机需要是仅主机并且同一网段 先搭建一个eBackup环境虚拟机 搭建步骤可访问:(https://www.cnblogs.com/zhengyan6/p/16220774.html) ...

  4. MySQL数据库如何线上修改表结构

    一.MDL元数据锁 在修改表结构之前,先来看下可能存在的问题. 1.什么是MDL锁 MySQL有一个把锁,叫做MDL元数据锁,当对表修改的时候,会自动给表加上这把锁,也就是不需要自己显式使用. 当对表 ...

  5. immutable 与 stable 函数的差异

    Stable 函数不能修改数据库,单个Query中所有行给定同样的参数确保返回相同的结果.这种稳定级别允许优化器将多次函数调用转换为一次.在索引扫描的条件中使用这种函数是可行的,因为索引扫描只计算一次 ...

  6. KingbaseES 参数 - ignore_char_null_check

    KingbaseES 基于PostgreSQL进行了大量的Oracle兼容性开发,为了能同时兼容Oracle 和 PG 的特性,增加参数进行控制.以下介绍 KingbaseES 下特有的参数 igno ...

  7. vivo 全球商城:电商平台通用取货码设计

    vivo官网商城开发团队 - Zhou Longjian 一.背景 随着O2O线上线下业务的不断扩展,电商平台也在逐步完善交易侧相关的产品功能.在最近的需求版本中,业务方为进一步提升用户的使用体验,规 ...

  8. [开源福利] FreeRedis 历时两年正式发布 v1.0 [C#.NET Redis Client]

    最近很多 .net QQ 群无故被封停,特别是 wpf 群几乎全军覆没.依乐祝的 .net6交流群,晓晨的 .net跨平台交流群,导致很多码友流离失所无家可归,借此机会使用一次召唤术,有需要的请加群: ...

  9. 发布日志- kratos v2.1.4 发布!

    v2.1.4 release https://github.com/go-kratos/kratos/releases/tag/v2.1.4 New Features feat(registry/co ...

  10. Django 聚合分组F与Q查询及choices

    一.聚合查询 需要导入模块:from django.db.models import Max, Min, Sum, Count, Avg 关键语法:aggregate(聚合结果别名 = 聚合函数(参数 ...