上一篇网文我们使用 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 必需的三个基本服务:

#define GAP_SERVICE_UUID    0x1800 // Generic Access Profile

#define GATT_SERVICE_UUID   0x1801 // Generic Attribute Profile

#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 进行数据的读写操作。

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

android ble 区别,BLE中这些概念你都了解吗-通信/网络-与非网相关推荐

  1. 计算机网络fsk是什么意思,一文读懂LoRa与FSK的共性与区别-通信/网络-与非网

    当无线数据的传输越来越广泛,我们仿佛才意识到无线传输的技术真真切切的就在我们的身边.本文简单介绍两种无线通信调制方式:LoRa 与 FSK 的共性与区别. 首先了解一下近年在国内较为火爆的无线技术-- ...

  2. android游戏特效,直播中送礼物短音效实现(支持网络,本地,assets)

    SoundPlayer 因为公司业务需要完成了一套短音效的处理框架.SoundPlayer是基于androidSoundPool进行一次上层的封装.封装的目的是简洁的调用,屏蔽google的Sndpo ...

  3. otn与stn网络_ASON网络中的DCN-通信/网络-与非网

    1 引言 ASON网络是现在世界上光传送网络研究的热点,它是原有光传送网络的一次重大演进,具有许多原有光传送网络不可比拟的优点.目前ASON网络设备在国际上的现网中已经进入了规模应用,并将逐步部署在我 ...

  4. 【Android应用开发】Android 蓝牙低功耗 (BLE) ( 第一篇 . 概述 . 蓝牙低功耗文档 翻译)

    转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/50515359 参考 :  -- 官方文档 : https://develope ...

  5. Android ble连接过程,Android开发之ble蓝牙

    前言 由于自己工作中需要开发ble的项目,于是在折腾了一段时间后也有所了解,便想写下来分享给大家,同时对自己的知识也是一种巩固 1.BLE介绍 BLE是Bluetooth Low Energy的缩写, ...

  6. WLT8016:BLE蓝牙的一些基本概念

    WLT8016:BLE蓝牙的一些基本概念 一.什么是BLE BLE全称Bluetooth Low Energy,即蓝牙低功耗.蓝牙4.0才支持BLE,蓝牙4.0向下兼容,包括传统蓝牙技术.高速技术和低 ...

  7. 蓝牙 BLE 协议学习: 有关概念介绍

    背景 在学校内就用过蓝牙技术参加过比赛(并拿了奖):而蓝牙作为物联网中比较常见的协议,有必要进行深入的学习.此后的文章会以 ble(v4.0) 进行学习. 介绍 蓝牙技术最初由电信巨头爱立信公司于 1 ...

  8. Android蓝牙bt/ble开发

    参看文档: 蓝牙开发:https://www.jianshu.com/p/4ecc99679451 蓝牙bt/ble区别:https://zhuanlan.zhihu.com/p/59907996 安 ...

  9. Luch简介— Android上的BLE信标扫描新库

    Bluetooth Beacons are the small devices that transmit small packages of data according to the BLE pr ...

最新文章

  1. hdu-4501-小明系列故事——买年货(四维背包)
  2. linux文件 run.man,【Linux】linux经常使用基本命令
  3. 新手必备: win10 系统下 VSCode+CMake+Clang+GCC 环境的搭建!
  4. matlab光伏最大功率,光伏系统最大功率点跟踪技术的比较
  5. 阵列卡u盘安装系统步骤_Dell的R720服务器使用U盘安装系统
  6. BoundsChecker使用说明(代码调试)
  7. Docker配置镜像加速器
  8. HTML基础笔记——head标签
  9. ResultSet.TYPE_SCROLL_SENSITIVE到底发生了什么?
  10. 中山大学2021级研究生学术道德规范在线考试学习资料
  11. 华中科技计算机第七次作业,电路理论(黑皮版) 华中科技大学陈明辉第7章
  12. ArcGIS的地理坐标系、大地坐标系
  13. 股市基础知识、内盘和外盘与股票走势
  14. hive正则表达式反向引用
  15. 一念起,天涯咫尺;一念灭,咫尺天涯。—第八天
  16. 思想决定生活 -《卡耐基成功之道全书》读书笔记
  17. UVM之TLM port基础
  18. 阿里云不为人知的 B 面
  19. 自己动手做计算机-计算机科学的本质
  20. 【ViveFocus使用WaveVR插件获取手柄操作事件】

热门文章

  1. Day795.监测上下文切换异常的命令排查工具BlockingQueue -Java 性能调优实战
  2. 在浏览器中输入www.baidu.com后执行的全部过程
  3. JAVA WEB环境搭建教程
  4. [AHK]用AutoHotkey面向对象实践“观察者模式”
  5. Android中aar和jar文件的认识
  6. 短视频去水印的软件 视频消重软件吾爱伪原创
  7. 万顿思电商:直通车代理账户安全吗?有风险吗?
  8. win10系统显示激活windows字样解决办法:
  9. Python入门习题大全——汽车
  10. win10切换桌面_win10系统如何使用快捷键切换桌面