个人主页:董哥聊技术

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

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

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. 算法模板:spfa

    #include<iostream> #include<algorithm> #include<cstring> #include<string> #i ...

  2. OID天下第一 (双指针,LCT,线段树)

    题面 或曰:"笑长天下第一!",OID 喜得合不拢嘴:"哈哈哈哈哈哈--" OneInDark 是天下第一的. OneInDark 给了你一个 n n n 个点 ...

  3. SETTLE约束算法中的坐标变换问题

    技术背景 在之前的两篇文章中,我们分别讲解了SETTLE算法的原理和基本实现和SETTLE约束算法的批量化处理.SETTLE约束算法在水分子体系中经常被用到,该约束算法具有速度快.可并行.精度高的优点 ...

  4. 【多服务场景化解决方案】智能家居(UrbanHome)

    ​ 介绍 UrbanHome是一款提供房屋维修服务的移动应用.如有维修需求,用户可通过该应用联系所在城市的管道工,电工,保洁,漆匠,木匠,修理工等,或是搜寻导航附近的维修商店. 通过构建UrbanHo ...

  5. 【pytest官方文档】解读- 如何自定义mark标记,并将测试用例的数据传递给fixture函数

    在之前的分享中,我们知道可以使用yield或者return关键字把fixture函数里的值传递给test函数. 这种方法很实用,比如我在fixture函数里向数据库里插入必要的测试数据,那我就可以把相 ...

  6. mysql_添加修改字段总结

    Mysql 添加字段 例子 ALTER TABLE tt_transfer_container_pick_config ADD COLUMN container_pick_station VARCHA ...

  7. 【读书笔记】C#高级编程 第十四章 内存管理和指针

    (一)后台内存管理 1.值数据类型 Windows使用一个虚拟寻址系统,该系统把程序可用的内存地址映射到硬件内存中的实际地址,该任务由Windows在后台管理(32位每个进程可使用4GB虚拟内存,64 ...

  8. e1000e网卡驱动在麒麟3.2.5上编译安装

    一.清空原驱动 因为系统安装完毕后系统中自带了e1000e的网卡驱动,会影响后面自行编译的驱动 所以先用find命令找出并删除掉所有关于e1000e的驱动文件 find / -name "* ...

  9. mysql8 安装与配置文件添加时区

    mysql默认时区选择了CST mysql>show variables like '%time_zone%'; 解决办法:(建议通过修改配置文件来解决) 通过命令在线修改: mysql> ...

  10. kvm安装windows使用virtio驱动下载地址

    https://dl.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/deprecated-README 老版本下载地址:https:// ...