问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

经典蓝牙和低功耗蓝牙区别

发布网友 发布时间:2022-04-22 07:35

我来回答

3个回答

热心网友 时间:2022-06-17 20:20

Android中的蓝牙

        说到Android中的蓝牙,大家听到的可能有蓝牙1.0、蓝牙2.0、蓝牙3.0、蓝牙4.0之类的以数字结尾的蓝牙版本号,而实际上,在最新的标准中,已经不再使用数字版本号作为蓝牙版本的区分了,取而代之的是经典蓝牙与低功耗蓝牙(BLE)这两种区别。

       这里提到的低功耗蓝牙也会有很多人会误解为就是蓝牙4.0,但是完整的蓝牙4.0规范中实际上包括有经典蓝牙和低功耗蓝牙这两个部分,大家看看如下这张分类表就能够明白这其中的关系了。

如表中所述,现在的蓝牙实际上分为了三类:单模、双模和经典。那么,最官方的蓝牙版本称呼就是,单模蓝牙、双模蓝牙和经典蓝牙。

 

      在这其中,最前沿的当属单模蓝牙了,也就是低功耗蓝牙。这个蓝牙标准和经典蓝牙区别极大,在最初甚至考虑过加入WIFI阵营,但是因为蓝牙阵营这边条件较为优厚(比如授权费用极低)才并入了蓝牙标准。

那么,低功耗蓝牙和经典蓝牙的区别究竟在哪里呢?

      要是仅仅从两者的通信方式上来说,可以说除了名字叫蓝牙外,完全可以当做两个东西。不过,两者在总体上的流程却也是相似的,那就是:

    发现设备->配对/绑定设备->建立连接->数据通信

    经典蓝牙和低功耗蓝牙除了配对/绑定这个环节是一样的之外,其它三个环节都是不同的。

    1. 发现设备

    经典蓝牙:经典蓝牙设备发现其它经典蓝牙设备的方式是调用BluetoothAdapter的startDiscovery()方法。

    api上说的比较模糊,大致是说只能够发现经典蓝牙设备。

    请点击输入图片描述

    然而实验发现 BluetoothAdapter.startDiscovery是可以同时发现经典蓝牙和ble的

    低功耗蓝牙:低功耗蓝牙中则有一个主设备(Central)和从设备(Peripheral,也叫外围设备)的概念。主设备作为发现方,调用发现设备的方法,通过BluetoothAdapter的startLeScan()方法实现。从设备则作为被发现方,发出广播,以供发现。同样,这个startLeScan()方法也仅能够发现低功耗蓝牙从设备。

    总结:BluetoothAdapter.startDiscovery在大多数手机上是可以同时发现经典蓝牙和Ble的,但是startDiscovery的回调无法返回Ble的广播,所以无法通过广播识别设备,且startDiscovery扫描Ble的效率比StartLeScan低很多。所以在实际应用中,还是StartDiscovery和StartLeScan分开扫,前者扫传统蓝牙,后者扫低功耗蓝牙。

    注意:当两种蓝牙设备被某设备(包括当前的设备)配对/绑定后,可能不会再被扫描到。

    2. 配对/绑定

    有很多小伙伴都不太理解配对和绑定究竟有什么区别,或者它们根本就是同一个东西。好吧,严格说配对和绑定是有区别的,也就是不是指的同一件事情。但是这两者的区别比较模糊,也不好解释。目前JACK的机器人的理解是,配对是建立两者的对应关系,而绑定则把这层关系保存固定下来并进行了强化,暂时这么理解着吧。

    不管是经典蓝牙还是低功耗蓝牙,绑定方法都是通用的,可以调用相同的绑定方法。

    3. 建立连接

    在建立连接的方式上,两者就千差万别了。

    ——蓝牙小知识——

    在蓝牙设备中,存在着物理地址,我们也叫作蓝牙的MAC地址,这个地址是唯一的,就像咱们网络上的IP地址。同时还存在着一个叫做UUID的东西,可以把它理解为是IP地址中的端口号。正如知道了IP地址和端口号,就知道了怎么链接到目标网络服务器位置,知道了蓝牙设备的MAC地址和UUID也就能够确定到具体是哪一台蓝牙设备了,这两者合起来就是蓝牙的唯一身份标识。

    经典蓝牙:经典蓝牙建立连接的方式实际上就是Socket的连接的建立。只不过这里不是直接用Socket,而是BluetoothSocket。获取BluetoothSocket的方式也很简单,利用搜索找到的BluetoothDevice,调用其方法createRfcommSocketToServiceRecord(UUID)。最后,使用获取到的BluetoothDevice调用其方法connect()就建立了经典蓝牙设备之间的连接通道。

    低功耗蓝牙:低功耗蓝牙则用了一种看起来比较怪异的方式建立连接。

    ——关于BLE的一些基本概念——

    Generic Attribute Profile (GATT)

    通过BLE连接,读写属性类小数据的Profile通用规范。现在所有的BLE应用Profile都是基于GATT的。

    Attribute Protocol (ATT)

    GATT是基于ATT Protocol的。ATT针对BLE设备做了专门的优化,具体就是在传输过程中使用尽量少的数据。每个属性都有一个唯一的UUID,属性将以characteristics and services的形式传输。

    Characteristic

    Characteristic可以理解为一个数据类型,它包括一个value和0至多个对次value的描述(Descriptor)。

    Descriptor

    对Characteristic的描述,例如范围、计量单位等。

    Service

    Characteristic的集合。例如一个service叫做“Heart Rate Monitor”,它可能包含多个Characteristics,其中可能包含一个叫做“heart rate measurement”的Characteristic。

    这里举个例子,例如现在需要使用一个智能手机作为主设备去连接一个作为从设备的智能手环,那么,此时这个作为主设备的智能手机连接过程中实际是一个客户端(Client),而作为从设备的智能手环在此过程中则是服务端(Server)。这里的主设备和从设备,客户端和服务端一定要区分清楚。

    想要和一台BLE从设备建立连接,一般是某个智能设备,例如智能手环、智能灯泡之类的。如果使用智能手机作为测试平台,其硬件条件是,蓝牙得至少是低功耗蓝牙版本,然后安卓系统的话,至少得是Android 4.3以上系统才行,因为Google在Android 4.3以上才做了BLE主设备的支持,如果想将智能手机作为BLE从设备,则必须在Android 5.0以上才行。

    具体建立GATT连接的顺序则是,首先通过BluetoothAdapter的getRemoteDevice(address)方法获取大相应BLE从设备的BluetoothDevice,其中的address为目标蓝牙设备MAC地址。然后通过此BluetoothDevice的connectGatt(this, false, mGattCallback)方法获取设备连接。

    此时的连接,只能够进行监听,也就是获取到当前BLE从设备广播出来的数据。

    4. 数据通信

    经典蓝牙:当建立连接后,就可以直接使用BluetoothSocket的getOutputStream()方法获取输出流写入需要发送的数据。读取发送回来的数据,则是调用BluetoothSocket的getInputStream()方法获取输入流读取。这点和Java中的Socket通信几乎是一模一样。

    低功耗蓝牙:想要实现主设备对从设备的数据发送,则需要直接读取获取到的从设备的Characteristic,而Characteristic又是Service下面的一层,所以操作顺序是:

    (1)通过BLE从设备相应的Service_UUID获取对应的BluetoothGattService,获取方法是:使用BluetoothDevice的connectGatt(this, false, mGattCallback)方法返回的BluetoothGatt对象,调用BluetoothGatt的方法getService(Service_UUID)获取相应的BluetoothGattService;

    (2)调用BluetoothGattService和对应的Characteristic的写入UUID获取相应的BluetoothGattCharacteristic,获取方法是:调用BluetoothGattService的getCharacteristic(Characteristic_UUID)方法获得;

    (3)设置需要发送的命令值,调用BluetoothGattCharacteristic的方法setValue(value)进行设置,其中value一般为byte[];

    (4)最后,使用BluetoothGatt的写入方法writeCharacteristic(TxChar)完成命令发送。

    可以看到,想要实现BLE的数据通信,步骤相当繁琐,这里只是做一个简单的概念理解,如果想要获取到BLE从设备的返回值,还需要设置Notification,然后调用BluetoothGatt的readCharacteristic(characteristic)方法进行数据的读取,这里不做详细说明了,放在以后详细说明BLE通信的时候再做解释。

    蓝牙的选用

    既然有经典蓝牙和低功耗蓝牙之分,我们在设计物联网产品和智能硬件产品的时候,如何选择呢?

    经典蓝牙:蓝牙最初的设计意图,是打电话放音乐。3.0版本以下的蓝牙,都称为“经典蓝牙”。功耗高、传输数据量大、传输距离只有10米。

    低功耗蓝牙:就是BLE,通常说的蓝牙4.0(及以上版本)。低功耗,数据量小,距离50米左右。

    传声音的,用经典蓝牙:

    如蓝牙耳机、蓝牙音箱。蓝牙设计的时候就是为了传声音的,所以是近距离的音频传输的不二选择。

    电池供电、连手机APP的,用BLE:

    如共享单车锁、蓝牙智能锁、蓝牙防丢器、蓝牙室内定位,是目前手机和智能硬件通信的性价比最高的手段。直线距离约50米,一节5号电池能用一年,传输模组成本10块钱,远比WIFI、4G等大数据量的通信协议更实用。

    又要声音又要数据的,用双模蓝牙:      双模蓝牙,就是同时支持经典蓝牙音频和低功耗蓝牙。

    如智能电视遥控器、降噪耳机等。很多智能电视配的遥控器带有语音识别,需要用经典蓝牙才能传输声音

    传大数据量的,用经典蓝牙:      如某些工控场景,使用Android或Linux主控,外挂蓝牙遥控设备的,可以使用经典蓝牙里的SPP协议,当作一个无线串口使用。速度比BLE传输快多了。

    远距离的,不用蓝牙。      固定供电的、不考虑功耗的、要传超过几十米距离的、要传高速数据的,这些都不适合蓝牙。远距离的可以用2G、4G、NB-IOT,大数据量的可以用WIFI。

热心网友 时间:2022-06-17 20:20

蓝牙是一种传输协议。都了硬件和软件两方面的内容。随着技术的发展,蓝牙也拆不断的发展,从1.0到4.0。经典蓝牙应该指的是这其中的一个版本低功耗蓝牙指的是在标准版的基础上降低了功耗。可以带来相似的性能而。消耗很少的能量。

热心网友 时间:2022-06-17 20:21

经典蓝牙泛指支持蓝牙协议在4.0以下的模块,一般用于数据量比较大的传输。经典蓝牙模块可再细分为:传统蓝牙模块和高速蓝牙模块。经典蓝牙主要应用在蓝牙电话接听,蓝牙耳机,蓝牙音箱等场合,

低功耗蓝牙模块(BLE):是指支持蓝牙协议4.0或更高的模块,也称为BLE模块,最大的特点是成功和功耗的降低,低功耗蓝牙应用在可穿戴设备,IoT智能设备,健身设备,蓝牙鼠标键盘等电池供电场合。
经典蓝牙和低功耗蓝牙区别

经典蓝牙和低功耗蓝牙之间的主要区别体现在以下几个方面:1. 设备发现 - 经典蓝牙设备通过调用BluetoothAdapter的startDiscovery()方法来发现其他经典蓝牙设备。尽管API说明较为模糊,但实际上这一方法能够同时发现经典蓝牙和低功耗蓝牙设备。- 低功耗蓝牙设备则通过主设备调用startLeScan()方法来发现从设备,而...

经典蓝牙和低功耗蓝牙区别

经典蓝牙和低功耗蓝牙除了配对/绑定这个环节是一样的之外,其它三个环节都是不同的。 1. 发现设备 经典蓝牙:经典蓝牙设备发现其它经典蓝牙设备的方式是调用BluetoothAdapter的startDiscovery()方法。 api上说的比较模糊,大致是说只能够发现经典蓝牙设备。 请点击输入图片描述 然而实验发现 BluetoothAdapter.startDiscovery是可...

关于经典蓝牙和低功耗蓝牙的区别

…这样的短距离大数据传输。蓝牙4.0后,就开始出现低功耗蓝牙,也叫BLE蓝牙,这类的蓝牙用做小数据传输,如医疗设备,智能锁……但是4.0后也有双模蓝牙,就是既支持经典蓝牙,有支持低功耗,如:手机上的蓝牙模块,它既可以和蓝牙音箱连接,播放音乐,又可以和蓝牙锁连接,APP开锁 ...

传统蓝牙和低功耗蓝牙的区别

所以蓝牙4.0是集成了传统蓝牙和低功耗蓝牙两个标准的,并不只是低功耗蓝牙。蓝牙4.0是蓝牙3.0+HS规范的补充,专门面向对成本和功耗都有较高要求的无线方案,较3.0版本更省电、低成本和跨厂商互操作性、3毫秒低延迟、超长有效连接距离、AES-128加密等;蓝牙4.0可广泛用于卫生保健、体育健身、家庭娱...

BLE和传统蓝牙有什么区别,各有什么优缺点?

在功耗方面,传统蓝牙有三个级别,分别对应不同的传输距离,但总体上消耗较大。相比之下,BLE模块的运行和待机功耗极低,一颗纽扣电池即可支持数年的持续工作,这对于对电池寿命敏感的应用来说,无疑是一大优势。然而,BLE的传输距离通常较短,发送功率通常在7dbm左右,适合近距离、频繁的数据交换。总的...

蓝牙耳机经典模式是什么意思?

相应地,2010年发布的蓝牙4.0规格就同时包含经典蓝牙和低功耗蓝牙,也就是说,从蓝牙4.0之后,蓝牙才分经典蓝牙和低功耗蓝牙。其实,“经典蓝牙”这个称谓不是非常专业,它是人民群众为了口头上的方便而创造出来的,在蓝牙4.0规格中,SIG定义了四种蓝牙controller技术:BR,EDR,AMP和LE,也就是说,...

蓝牙传输协议有哪些

1. 经典蓝牙协议:这是最初的蓝牙传输协议,主要用于设备间的数据传输和通信。它支持文件传输、同步和设备通信等多种应用场景,通过无线电技术实现数据传输,具有低功耗和高速传输的特点。经典蓝牙协议还包括主机控制器接口、逻辑链路控制和适配协议等组成部分,确保蓝牙设备间的稳定通信。2. 低功耗蓝牙协议...

[蓝牙系列] 经典/低功耗蓝牙跳频协议详解(1)--经典蓝牙跳频算法与方案...

蓝牙使用扩频技术,经典蓝牙的主瓣宽度小于1MHz,低功耗蓝牙在2MHz以内。如图1所示,蓝牙信号在2.4GHz ISM频段工作,通过跳频技术,即使在拥挤的频谱环境中,也能确保数据传输的可靠性。经典蓝牙有79个信道,低功耗蓝牙则为40个,通过频繁切换信道来避免干扰。2. 跳频的必要性 在2.4GHz频段,众多设备...

蓝牙双模是什么意思

蓝牙双模是一种创新技术,它允许设备同时兼容经典蓝牙和低功耗蓝牙,以满足不同应用场景的需求。以下是对这一概念的直观解析。蓝牙双模技术的核心在于设备具备双重蓝牙功能,即同时支持经典蓝牙和低功耗蓝牙(BLE)。经典蓝牙擅长传输大量数据,适合需要高速数据交换的场景,而低功耗蓝牙则注重能量效率,适用于...

蓝牙传输速率(BR/EDR, LE 1M, LE 2M, LE Coded)

LE Coded PHY通过编码技术,如S=2和S=8,平衡了传输速率与功耗。S=2编码下,最大255字节数据包占用4542μs,速率为384.6kbps,而S=8编码的最高速度则降低至112.9kbps,但代价是更长的传输时间。这种策略旨在延长传输距离,适合对功耗敏感的应用场景。总结来说,蓝牙传输速率在经典蓝牙和低功耗蓝牙...

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
广西浦北县民政局今年春节几时才放假? 怎样在Excel中画柏拉图的二八线? 郎酒鉴定真假要去哪里,鉴定方法分享 郎酒酒瓶有收藏价格吗,收藏的注意事项有哪些?(郎酒瓶子值钱吗) 郎酒酒瓶有收藏价值吗,收藏酒瓶要注意什么(郎酒瓶子值钱吗) 《战舰少女R》平海值得练吗介绍_《战舰少女R》平海值得练吗是什么_百... 黄铜镀金和钛钢镀金有啥区别 北部湾大学研究生有哪些专业 北部湾大学的研究生文评在全国的含金量重吗 极品飞车9追击的圆圈是 汽车上面的蓝牙图标是灰色的是怎么回事? 海参怎么炒的做法大全 小米手机蓝牙后面的是什么图标? 汽车蓝牙是什么英文字母 海参的炒法 华夏银行信用卡以制卡四天了什么时候才寄出来啊 华夏银行信用卡中心卡寄出来会短信告知挂号信单号吗 您申请的华夏SMART信用卡已经通过审核,卡片将于近... 华夏信用卡卡中心在哪里 我申请的华夏信用卡已经审核通过了,要多久寄过来 华夏信用卡多长时间能邮寄回来 新批下来的华夏银行的信用卡是从上海 邮寄出来了?... 华夏银行信用卡一般多久能寄到 华夏银行信用卡是从哪里寄来的 华夏银行信用卡用商务专函邮寄,到哪里查寄送进度 我的华夏银行信用卡已寄出我想查怎么查到哪里了怎... 求一个可用的Flashpaper软件,就是把word文档转换... 华夏银行信用卡从哪里寄出 word转换swf 怎么搞, 软件总是安装不了,不知道什... 华夏信用卡发卡一般是用什么快递 海参怎么炒? 我用的是蓝牙耳机,这个蓝牙标志旁边的电量是什么 请问为什么蓝牙标志上两边有三角形? ipad图标右上角有个蓝牙标志 今天用了一个蓝牙耳机 ,出现这样一个标志 上图,... 华为b2蓝牙标志没了怎么办?侧键不管怎么按、均没... 极品小太监hold住:美人来自何方的txt全集下载地址 绝色极品小太监电子书txt全集下载 农村的农保是什么意思 极品小太监 黑灯大虾 TXT下载 极品小太监 什么是农保,什么是社保 求 极品小太监 静姝女 全文..59以后的章节 新农保是什么意思 什么是新农保 求推荐经典耽美古风文 社保和农保有啥区别? 老家农保是农村信用社,社保是农业银行有什么区别吗? 求极品小太监全文,请各位好心人士帮忙 新农保和新农合有什么区别
  • 焦点

最新推荐

猜你喜欢

热门推荐