|
|
|
|
公众号矩阵

BLE中这些概念,你都了解吗

我们使用Android 手机上的蓝牙调试助手与TB-02-kit模块进行了数据通讯,很多人可能对其中很多概念不是很了解,今天我们就来梳理一下整个数据通讯过程和其中涉及到的一些概念,有理解不到位的地方欢迎留言处指出。

作者:程序员小哈来源:嵌入式从0到1|2021-01-07 05:40

本文转载自微信公众号「嵌入式从0到1」,可以通过以下二维码关注。转载本文请联系嵌入式从0到1公众号。

我们使用Android 手机上的蓝牙调试助手与TB-02-kit模块进行了数据通讯,很多人可能对其中很多概念不是很了解,今天我们就来梳理一下整个数据通讯过程和其中涉及到的一些概念,有理解不到位的地方欢迎留言处指出。

蓝牙发展史

蓝牙发展史

蓝牙和BLE区别

蓝牙是一种短距离的2.4 GHz无线通讯技术,可实现设备之间的数据交换。

一般将蓝牙3.0之前的BR/EDR蓝牙称为传统蓝牙(经典蓝牙BT:BlueTooth),而将蓝牙4.0规范下的LE蓝牙称为低功耗蓝牙。

低功耗蓝牙是在传统蓝牙的基础上发展而来的。

BLE技术采用非常快速的连接方式,因此可以处于“非连接”状态(节省能源),此时链路两端相互间只是知晓对方,只有在必要时才开启链路,然后在尽可能短的时间内关闭链路——这样设计的目的就是为了低功耗。

BLE优点:搜索速度快、连接速度快、超低功耗保持连接和传输数据,缺点是,传输速率略低。

BLE蓝牙模块主要应用领域

1、移动扩展设备

2、汽车电子设备

3、健康医疗用品:心跳带、血压计等

4、定位应用:室内定位、井下定位等

5、近距离数据采集:无线抄表、无线遥测等

6、数据传输:智能家居室内控制、蓝牙调光、打印机等

BLE数据通讯

一个Gatt包含多个服务(Service);一个服务包含多个特征(Characteristic);一个特征包含多个描述符;

反过来可以说,一个描述符对应一个特征;一个特征对应一个服务;一个服务对应一个Gatt。

Service、Characteristic、Descriptor,这三部分都由UUID作为唯一标示符。

如上图所示,在我们之前使用的BLE调试宝软件中,我们可以看到,图中所示的前三个服务就是BLE必需的三个基本服务:

  1. #define GAP_SERVICE_UUID    0x1800 // Generic Access Profile  
  2. #define GATT_SERVICE_UUID   0x1801 // Generic Attribute Profile 
  3. #define DEVINFO_SERV_UUID  0x180A // Device Information 

一般来说,剩下的一个服务就是与BLE模块进行数据通讯的Service ,而Service中的Characteristic是手机与BLE终端交换数据的关键。

所以我们上文数据通讯的操作都是在与Unknown Characteristic 进行的数据通讯。

为什么会定义这么多名词呢?

蓝牙连接成功之后,数据的传输是对特征值(Characteristic)这个参数进行读,写,通知等操作;

为了方便管理,我们可能有不止一个特征值,我们可以根据需要创建多个特征值,比如一个特征值用于记录环境湿度的值,一个特征值用于记录设备的温度值,等等。

我们也可以对这些特征值进行归类,每一类就相当于一个服务(Service),一个设备可以有多个服务,每个服务可以包含多个特征值。

为了说明方便,每个特征值都有他的属性,所以我们还会见到其他一些名词,例如:权限(permission),值(value),描述(descriptor)等。

To do

下一篇网文,我们就使用Qt开发一个Android系统下的BLE调试软件,实现与蓝牙模块的数据收发,实际上就是实现与下面UUID的Unknown Service 中 Unknown Characteristic 进行数据的读写操作。

  1. static const QLatin1String serviceUuid("{00010203-0405-0607-0809-0a0b0c0d1910}"); 

【编辑推荐】

  1. 自动化运维-Ansible视频课程
  2. Linux iptables防护墙讲解实战视频课程
  3. 通过手动与Ansible的方式部署二进制kubernetes集群
  4. PaaS精讲:DevOps、Ansible、Jenkins、Git、Docker、k8s
  5. Ansible自动化运维零基础入门学习
【责任编辑:武晓燕 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

数据湖与数据仓库的分析实践攻略

数据湖与数据仓库的分析实践攻略

助力现代化数据管理:数据湖与数据仓库的分析实践攻略
共3章 | 创世达人

1人订阅学习

云原生架构实践

云原生架构实践

新技术引领移动互联网进入急速赛道
共3章 | KaliArch

30人订阅学习

数据中心和VPDN网络建设案例

数据中心和VPDN网络建设案例

漫画+案例
共20章 | 捷哥CCIE

209人订阅学习

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微