BT传统蓝牙和BLE低功耗蓝牙的区别
蓝牙3.0及以下为传统蓝牙。
蓝牙4.0以上标准包含两个蓝牙标准,是一个双模的标准,它包含经典蓝牙部分(Classic Bluetooth)和低功耗蓝牙部分(Bluetooth Low Energy)。经典蓝牙是在之前的1.0.1.2,2.0+EDR,2.1+EDR,3.0+EDR等基础上发展和完善起来的,低功耗蓝牙是Nokia的Wibree标准上发展起来的。
蓝牙5.0标准支持蓝牙 Mesh 技术,这项技术将打破传统蓝牙设备间“一对一”的配对转变成“多对多”的讯号传输模式,除了应用在蓝牙 5.0,也会扩展到过往版本。蓝牙 Mesh 技术是基于BLE实现。
经典蓝牙我们一般说的是BT,低功耗蓝牙我们一般说成BLE。当设备支持蓝牙4.0时,还得进一步确认设备是支持BT单模、BLE单模还是BT和BLE都支持的双模。
经典蓝牙、双模、BLE的软件层次区分
1.linux标准蓝牙协议栈bluez
2.Google在Android源码中bluedroid协议栈
Android 4.2之前,Google一直使用的是Linux官方蓝牙协议栈BlueZ, 从Android 4.2开始,Google便在Android源码中推出了它和博通公司一起开发的BlueDroid以替代BlueZ。
BlueZ的创始者,高通公司也将在基于其芯片的Android参考设计中去除BlueZ,支持BlueDroid。相比BlueZ,BlueDroid最值得称道的地方就是其框架结构变得更为简洁和清晰。
Google通过对bluez协议栈的改良,去掉bluez通信的dbus通信(有没有dbus通信,是bluez和bluedroid协议栈唯一的区别),更名为:“bluedroid”协议栈。
Android 4.2中BlueDroid的框架结构图
bluedroid 整体协议栈架构
BlueZ 代码架构
3、传统蓝牙和低功耗Bluz区别
传统蓝牙(Classic Bluetooth)和低功耗蓝Bluz(Bluetooth Low Energy)1、蓝牙连接状态蓝牙BLuz的发送和接受任务快速完成传输,完成后蓝牙BLuz会暂停发射无线(断开连接,但会接受连接)等
待下一次连接再激活.传统蓝牙是持续保持长连接.2、广播信道Bluz仅有3个信道,而传统蓝牙是32个信道.3、连接与传输时间Bluz低能耗技术“完成”一次连接(即扫描其它设备、建立链路、发送数据、认证和适当地结束)只需3ms.传统蓝牙技术完成相同的连接周期需要数百毫秒.4、蓝牙数据包长度Bluz低能耗技术使用非常短的数据包;传统蓝牙技术使用的数据包长度较长.经典蓝牙模块(BT):泛指支持蓝牙协议在4.0以下的模块,一般用于数据量比较大的传输,如:语音、音乐
等较高数据量传输。 经典蓝牙模块可再细分为:传统蓝牙模块和高速蓝牙模块。传统蓝牙模块在2004年推出,
主要代表是支持蓝牙2.1协议的模块,在智能手机爆发的时期得到广泛支持。高速蓝牙模块在2009年推出,速率
提高到约24Mbps,是传统蓝牙模块的八倍,可以轻松用于录像机至高清电视、PC至PMP、UMPC至打印机之间的
资料传输。低功耗蓝牙模块(BLE):是指支持蓝牙协议4.0或更高的模块,也称为BLE模块,最大的特点是成本和功耗的
降低,应用于实时性要求比较高的产品中,比如:智能家居类(蓝牙锁、蓝牙灯)、传感设备的数据发送(血压
计、温度传感器)、消费类电子(电子烟、遥控玩具)等。应用区别:BLE低功耗蓝牙一般多用在蓝牙数据模块,拥有极低的运行和待机功耗,使用一粒纽扣电池可连续
工作数年之久;BT经典蓝牙模块多用在蓝牙音频模块,音频需要大码流的数据传输更适合使用。在功耗上,传统蓝牙有3个级别的功耗,class1、class2、class3分别支持100m、10m、1m的传输距离;低
功耗蓝牙没有功耗级别,一般发送功率在7dbm。低功耗BLE5.0模块可支持蓝牙Mesh技术。
4.总结
<1>.Google推出的Android4.2系统之前,一直使用的Linux标准蓝牙协议栈bluez; 但是在Android4.2系统以后,Google推出自己的蓝牙协议栈bluedroid,它是在bluez的基础上,去掉了DBUS通信,这也是他们唯一的区别。
<2>.不管传统蓝牙(Classic Bluetooth),还是低功耗蓝Bluz(Bluetooth Low Energy) api,他们底层协议都是bluez,只是协议栈和硬件芯片对上支持的两种实现方式而已。
<3>.因为Google的bluedroid蓝牙协议栈本身就是精简版的bluez,所以bluedroid协议栈,对android上层也支持传统蓝牙和低功耗蓝牙。
BT传统蓝牙和BLE低功耗蓝牙的区别相关推荐
- c# 低功耗蓝牙_Android ble低功耗蓝牙开发-客户端
什么是BLE(低功耗蓝牙) BLE(Bluetooth Low Energy,低功耗蓝牙)是对传统蓝牙BR/EDR技术的补充. 尽管BLE和传统蓝牙都称之为蓝牙标准,且共享射频,但是,BLE是一个完全 ...
- BLE低功耗蓝牙和传统蓝牙的五大区别
现在移动设备上使用的蓝牙大多是4.0,而蓝牙 4.0 有两个分支,经典 4.0 和 BLE4.0,经典 4.0 就是传统的3.0 蓝牙升级而成,向下兼容.而 BLE 4.0 是一个新的分支,不向下兼容 ...
- 经典蓝牙和低功耗蓝牙(BLE)有什么区别?
蓝牙模块Bluetooth module)是指集成蓝牙功能的芯片基本电路集合,用于短距离2.4G的无线通讯模块.对于最终用户来说,蓝牙模块是半成品,通过在模块的基础上功能再开发.封装外壳等工序,实现能 ...
- 传统蓝牙和Bluz低功耗蓝牙的区别
参考一 参考二 传统蓝牙(Classic Bluetooth)和低功耗蓝Bluz(Bluetooth Low Energy)1.蓝牙连接状态蓝牙BLuz的发送和接受任务快速完成传输,完成后蓝牙BLuz ...
- android studio蓝牙低功耗,arduino ESP32 AndroidStudio BLE低功耗蓝牙 物联网
arduino ESP32 AndroidStudio BLE低功耗蓝牙 物联网 nodered开发: esp32采用的蓝牙于普通的蓝牙不同,是低功耗蓝牙,手机用一般的蓝牙代码是连不上的.在本文中,不 ...
- 自制智能插线板,内嵌BLE低功耗蓝牙,通过手机进行控制(一)
一直都想做一个可以用手机控制的插线板,现在已经进入了智能家居的时代,家里没有个智能的插线板去控制一些简单的家用设备,怎么能算得上智能家居呢:有这个想法已经很久了,当时还特意买了一个插线板,拆开看看里面 ...
- 13.6.3 程序案例:BLE低功耗蓝牙调试助手
13.6.3 程序案例:BLE低功耗蓝牙调试助手 (配套代码CH13-02) (1) mainwindow.cpp文件代码 #include "mainwindow.h" #inc ...
- 基于uni-app的BLE低功耗蓝牙测试工具
基于uni-app的BLE低功耗蓝牙测试工具 前言 开发环境:HBuilder X2.8.11,运行环境:微信小程序 本项目是从网上收集他人的源代码,经过测试.修改后的版本,在微信小程序上表现比较稳定 ...
- Android BLE低功耗蓝牙开发
啦啦啦在上一个项目中有用到BLE低功耗蓝牙开发,当时baidu google了很多资料,但大多数都是千篇一律,英文文档我这种渣渣又看不懂...总之刚开始查的很痛苦.所以要把自己的踩坑之路写下来记录下, ...
最新文章
- 一个帖子学会Android开发四大组件
- css中小型大写,css3 – OpenType小型大写的CSS回退
- Fiori Elements - OData metadata response and annotation merge
- 制作 Windows8 to Go
- 快速傅里叶变换及python代码实现
- 跟谁学宣布独立调查结论:没有造假 盘后股价涨超8%
- jmeter+接口测试练习+接口关联+Json提取
- Windows7 下载android源码
- 【180929】仿微信飞机大战游戏源码
- Python中利用scipy库进行最小二乘回归分析(金融相关)
- 图标文字对齐的几种常见方法
- ajax status code 415,Ajax向后台传json格式的数据出现415错误的原因分析及解决方法...
- 《工业控制系统信息安全防护指南》产品措施匹配表
- 祛痘收缩毛孔的简单方法 - 健康程序员,至尚生活!
- “5g+工业互联网”,工业生产制造迎来新突破
- 用手机编程和用电脑编程有什么区别?
- java扫码枪键盘_浅谈在react中如何实现扫码枪输入
- Excel技巧 - 换行符用法
- echarts修改鼠标悬浮样式和默认高亮效果,和传值高亮修改字体模糊
- php使用PHPexcel类读取excel文件(循环读取每个单元格的数据)