Bluetooth Low Energy介绍
1. 介绍
Bluetooth low energy,也称BLE(低功耗蓝牙),在4.0规范中提出
BLE分为两种设备
- 单模(single-mode): Logo为「Bluetooth®Smart」 - 双模(dual-mode): Logo为「Bluetooth®Smart Ready」
tip: 传统蓝牙的Logo为「Bluetooth®」
BLE与传统蓝牙的兼容性如下图所示

可以看出他们之间的通信规则如下(Bluetooth指代传统蓝牙,下同):
Smart Ready: Smart Ready、Bluetooth、Smart Bluetooth: Smart Ready、Bluetooth Smart: Smart Ready、Smart
2. 协议栈
BLE协议栈如下图所示

BLE协议栈由Controller和Host两部分组成
Profile和Service基于GAP和GATT
应用协议定义其使用的服务,说明是传感器端还是接收端
定义GATT的角色(Server/Client)和GAP的角色(Peripheral/Central)
协议栈各层次介绍如下
PHY - 1Mbps自适应跳频GFSK,运行在2.4GHz频段。
LL - RF控制器, 控制设备的链路状态
HCI - 为接口层, 向上为主机提供软件应用程序接口(API), 对外为外部硬件控制接口, 可以通过串口、SPI、USB来实现设备控制
L2CAP - 为上层提供数据封装服务, 允许逻辑上的端到端数据通信
SM - 提供配对和密钥分发服务, 实现安全连接和数据交换
GAP - 直接与应用程序或配置文件(Profiles)通信的接口, 处理设备发现和连接相关服务. 另外还处理安全特性的初始化
ATT - 导出特定的数据(称为属性)到其他设备
GATT - 定义了使用ATT的服务框架和配置文件(Profiles)的结构. BLE中所有的数据通信都需要经过GATT
3. 实现方案
3.1 硬件实现方案
单芯片方案中,Controller和Host、Profile及应用都在同一芯片中
网络控制器模式中,COntroller和Host运行在设备中,但是Profile和应用则在其他设备上,比如PC或者其他微控制器,可以通过UART、USB进行操作
双芯片模式中,Controller运行在一个控制器,而Host、Profile和应用运行在另一个控制器上
3.2 软件实现方案
Bluedroid从4.3开始支持BLE
Bluetooth Low Energy介绍的更多相关文章
- Bluetooth Low Energy 介绍
1.简介 BLE(Bluetooth Low Energy,低功耗蓝牙)是对传统蓝牙BR/EDR技术的补充.尽管BLE和传统蓝牙都称之为蓝牙标准,且共享射频,但是,BLE是一个完全不一样的技术.BLE ...
- Bluetooth Low Energy 嗅探
Bluetooth Low Energy 嗅探 路人甲 · 2015/10/16 10:52 0x00 前言 如果你打开这篇文章时期望看到一些新的东西,那么很抱歉这篇文章不是你在找的那篇文章.因为严格 ...
- Overview and Evaluation of Bluetooth Low Energy: An Emerging Low-Power Wireless Technology
转自:http://www.mdpi.com/1424-8220/12/9/11734/htm Sensors 2012, 12(9), 11734-11753; doi:10.3390/s12091 ...
- Android使用BLE(低功耗蓝牙,Bluetooth Low Energy)
背景 在学习BLE的过程中,积累了一些心得的DEMO,放到Github,形成本文.感兴趣的同学可以下载到源代码. github: https://github.com/vir56k/bluetooth ...
- How to Implement Bluetooth Low Energy (BLE) in Ice Cream Sandwich
ShareThis - By Vikas Verma Bluetooth low energy (BLE) is a feature of Bluetooth 4.0 wireless radio t ...
- 基于蓝牙4.0(Bluetooth Low Energy)胎压监测方案设计
基于一种新的蓝牙技术——蓝牙4.0(Bluetooth Low Energy)新型的胎压监测系统(TPMS)的设计方案.鉴于蓝牙4.0(Bluetooth Low Energy)的低成本.低功耗.高稳 ...
- Bluetooth® Low Energy Beacons
Bluetooth® Low Energy Beacons ABSTRACT (abstract ) 1.This application report presents the concept of ...
- Bluefruit LE Sniffer - Bluetooth Low Energy (BLE 4.0) - nRF51822 驱动安装及使用
BLE Sniffer https://www.adafruit.com/product/2269 Bluefruit LE Sniffer - Bluetooth Low Energy (BLE 4 ...
- BLE——低功耗蓝牙(Bluetooth Low Energy)
1.简介 以下蓝牙协议特指低功耗蓝牙协议. 蓝牙协议是由SIG制定并维护的通信协议,蓝牙协议栈是蓝牙协议的具体实现. 各厂商都根据蓝牙协议实现了自己的一套函数库——蓝牙协议栈,所以不同厂商的蓝牙协议栈 ...
随机推荐
- html5 filereader读取流注意事项
对于截取读入的文件,一定要new FileReader,不可写全局调用同一个reader. 错误代码!!!function readAsBinaryString(file,callback){ rea ...
- CentOS6.4 配置Tengine
1.安装Nginx所需的pcre-devel库 yum install -y gcc gcc-c++ wget ftp://ftp.csx.cam.ac.uk/pub/software/program ...
- 洛谷 P1010 幂次方 Label:模拟
题目描述 任何一个正整数都可以用2的幂次方表示.例如 137=2^7+2^3+2^0 同时约定方次用括号来表示,即a^b 可表示为a(b). 由此可知,137可表示为: 2(7)+2(3)+2(0) ...
- POJ 3280 Cheapest Palindrome(DP)
题目链接 被以前的题目惯性思维了,此题dp[i][j],代表i到j这一段变成回文的最小花费.我觉得挺难的理解的. #include <cstdio> #include <cstrin ...
- Ruby Hash与ActiveSupport’s HashWithIndifferentAccess对于key的区别
Ruby Hash的key定义的时候是支持symbol或者string的,所以访问的时候只能是symbol或者string其中一种方式. 建议使用symbol定义Hash的key,因为symbol在R ...
- SQL中distinct的用法(转自博主:Rain Man)
在表中,可能会包含重复值.这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值.关键词 distinct用于返回唯一不同的值. 表A: 示例1 select distinct nam ...
- asp.net 微信企业号办公系统-流程设计--流程步骤设置-按钮设置
按钮设置是配置当前步骤的处理者可以执行哪些操作,每个按钮都有对应的执行脚本(javascript脚本). 从左边的按钮列表中选择当前步骤需要的按钮. 注意:如果是流程最后一步则要配置完成按钮而不是发送 ...
- tableviewCell折叠状态3
// // LHQDelegateModel.h // 11 - 投资管理 - 李洪强 // // Created by vic fan on 16/4/13. // Copyright © ...
- zabbix配置文件详解
Zabbix之配置文件详解 zabbix配置文件种类: zabbix_server配置文件zabbix_server.conf zabbix_proxy配置文件zabbix_proxy.conf ...
- 应用服务器上部署自己的 blog 和 wiki 组件。
协作性应用程序 这就是 Web 2.0 的全部,尽管该术语出现才几乎一年的时间,但现在好像只有烹饪杂志还没有加入到讨论 Web 2.0 未来出路的行列中.自从出现了里程碑式的文章 "What ...