低功耗蓝牙(BLE)——概述
1. 概述
蓝牙协议是由SIG制定并维护的无线通信协议,蓝牙协议栈是蓝牙协议的具体实现。各厂商都根据蓝牙协议实现了自己的一套函数库——蓝牙协议栈,所以不同厂商的蓝牙协议栈之间虽然存在差别,但是都遵循同一套蓝牙协议。
蓝牙技术的实质是建立通用无线接口及其控制软件的标准,使移动通信与计算机网络之间能实现无缝连接。蓝牙通讯最初设计初衷是方便移动电话(手机)与配件之间进行低成本、低功耗无线通信连接。
标准号:IEEE802.15.1
核心技术:低功耗,即Low Energy
1.1 RF规格
工作频段
2.4GHz~2.4835GHz,ISM(Industrial,Scientific and Medical)频段
工作频道
2402 + k*2MHz, k=0,...,39.
40个频道,每个频道2MHz的间隔,3个广播信道(37-2402MHz,38-2426MHz,39-2480MHz),37个数据信道,广播报文还是数据报文由信道决定;
调制方式:GFSK(高斯频移键控),调制指数为0.5
中心频率容限:±150kHz
1.2 发射功率
-20dBm~10dBm(0.01mW ~ 10mW)—— ble4.0/ble4.1/ble4.2
-20dBm~20dBm(0.01mW ~ 100mW)—— ble5.0/ble5.1/ble5.2
1.3 数据速率
1Mbps —— ble4.0/ble4.1/ble4.2
2Mbps —— ble5.0/ble5.1/ble5.2
1.4 通信距离
CC2640R2F LaunchPad在TI的远距离测试视频(400m)和TI的应用工程师在奥斯陆的小镇上进行的超远距离测试视频(1.5)
视频
1.5 连接特性
蓝牙协议栈未对多主多从做规定,一个设备最多支持几主几从,完全取决于设备的RAM、Flash资源和具体的业务需求。nRF52840最多支持20个连接(官方例程给出的是2个主机)。
1.6 蓝牙5.0新特性
- SAM(Slot Availability Mask,经典蓝牙)
- 2 Msysm/s PHY for LE —— 高速率,物理层2Mbps
- LE Long Range —— 长距离,coded和FEC技术
- High Duty Cycle Non-Connectable Advertising
- LE Advertising Extensions —— 广播扩展
- LE Channel Selection Algorithm #2 —— 第2代信道选择算法
- Higher Output Power(CSA5)—— 高输出功率,最大20dBm
1.7 认证
ISM频段:(Industrial, Scientific and Medical----工业、科学和医疗) Band
在IEEE 802.15.4中总共规定了27个信道:
在2. 4GHz频段,共有16个信道,信道通信速率为250kbps;(全球通用)
在915MHz频段,共有10个信道,信道通信速率为40kbps;(北美认可)
在896MHz频段,共有1个信道,信道通信速率为20kbps。(欧洲认可)
信道0:868.3MHz
信道1~ 10:902MHz~928MHz,间隔2MHz,两头有余量
信道11~ 26:2.4GHz~2.4835GHz,间隔5MHz,两头有余量
除了 ISM 频带外,在我国,低于 135kHz,在北美、日本等地,低于 400kHz 的频带也是免费频段。各国对无线频谱的管理不仅规定了 ISM 频带的频率,同时也规定了在这些频带上所使用的发射功率,在项目开发过程中,需要查阅相关的手册,如我国信息产业部发布的《微功率(短距离)无线电设备管理规定》。
低功耗蓝牙(BLE)——概述的更多相关文章
- 深入浅出低功耗蓝牙(BLE)协议栈
深入浅出低功耗蓝牙(BLE)协议栈 BLE协议栈为什么要分层?怎么理解蓝牙"连接"?如果蓝牙协议只有ATT没有GATT会发生什么? 协议栈框架 一般而言,我们把某个协议的实现代码称 ...
- 低功耗蓝牙BLE外围模式(peripheral)-使用BLE作为服务端
低功耗蓝牙BLE外围模式(peripheral)-使用BLE作为服务端 Android对外模模式(peripheral)的支持 从Android5.0开始才支持 关键术语和概念 以下是关键BLE术语和 ...
- 使用BleLib的轻松搞定Android低功耗蓝牙Ble 4.0开发具体解释
转载请注明来源: http://blog.csdn.net/kjunchen/article/details/50909410 使用BleLib的轻松搞定Android低功耗蓝牙Ble 4.0开发具体 ...
- 深入浅出讲解低功耗蓝牙(BLE)协议栈
详解BLE连接建立过程https://www.cnblogs.com/iini/p/8972635.html 详解BLE 空中包格式—兼BLE Link layer协议解析https://www.cn ...
- 低功耗蓝牙BLE之连接事件、连接参数和更新方法
转自:http://blog.csdn.net/zzfenglin/article/details/51304084 连接事件 在一个连接当中,主设备会在每个连接事件里向从设备发送数据包.一个连接事件 ...
- Android低功耗蓝牙(BLE)开发的一点感受
最近一段时间,因为产品的需要我做了一个基于低功耗蓝牙设备的Android应用,其中碰到了一些困难,使我深深体会到Android开发的难处:不同品牌,不同型号和不同版本之间的差异使得Android应用适 ...
- Android 低功耗蓝牙BLE 开发注意事项
基本概念和问题 1.蓝牙设计范式? 当手机通过扫描低功耗蓝牙设备并连接上后,手机与蓝牙设备构成了客户端-服务端架构.手机通过连接蓝牙设备,可以读取蓝牙设备上的信息.手机就是客户端,蓝牙设备是服务端. ...
- 低功耗蓝牙BLE [学习笔记]
手机设备会区分 "connecting" and "pairing" ,前者可以自动连接,后者则需要请求.BLE不再有pairing的麻烦,能直接连上目标设备, ...
- 360独角兽实习,连载周记(gnuradio 低功耗蓝牙BLE 综合工具模块编写)
(有点乱,之后会有整理) 最近在用写一套gnuradio的OOT模块,主要用来进行BLE嗅探的,github上有了一些工具,可是他们并没有很好的模块化,于是打算自己写一个,这样以后做一些其他的项目,模 ...
- Android使用BLE(低功耗蓝牙,Bluetooth Low Energy)
背景 在学习BLE的过程中,积累了一些心得的DEMO,放到Github,形成本文.感兴趣的同学可以下载到源代码. github: https://github.com/vir56k/bluetooth ...
随机推荐
- Activiti6-快速开始
下载 https://www.activiti.org/download-links 快速开始 https://www.activiti.org/quick-start 用户指南 https://ww ...
- IP地址和物理地址有什么区别
所谓IP地址就是给每个连接在Internet上的主机分配的一个32bit地址.简单地说就是你在整个互联网上的ID. MAC(Media Access Control,介质访问控制)地址 (物理地址)是 ...
- SVN提示update更新成功,但是本地文件却没有更新
问题描述:将仓库的最新版本代码check out到本地后,然后最某个文件做了修改,保存后想通过svn的update来重新得到最新的版本,发现失效. 原因:经过多方查找原因,主要看了以下两篇文档 htt ...
- Vue 项目构建完成 ----发布项目
发布项目 cmd 命令行 npm run build 执行打包文件 完成后就会有 3 个文件夹 分别是: 文件夹 :build config dist in ...
- 2019-8-4-自动更新所有-Git-仓库
title author date CreateTime categories 自动更新所有 Git 仓库 lindexi 2019-08-04 14:44:59 +0800 2019-08-01 2 ...
- P1036 最大公约数
题目描述 给你两个正整数A和B,求它们的最大公约数. 输入格式 两个正整数 \(A,B(1 \le A,B \le 10^9)\) . 输出格式 一个整数,表示A和B的最大公约数. 样例输入 6 8 ...
- 搭建zookeeper出现错误:starting zookeeper... already running process 2853
今天搭建zookeeper时碰到了starting zookeeper already running process 2853这样一个错误. 上网上查了几个相似的问题都是要删除zookeeper_s ...
- java.util.Date和jdk1.8新时间API比拼
旧的时间和日期的API的缺陷 Java 的 java.util.Date 和 java.util.Calendar 类易用性差,不支持时区,而且都不是线程安全的. Date如果不格式化,打印出的日期可 ...
- windows编译caffe2遇到的问题
首先介绍下window编译caffe2整体流程: 说明:如果不需要python支持只需3.4即可,而且编译亦不会出现问题. 1. 安装python2.7,. 我使用的是anaconda python2 ...
- git常用常用操作指令
GIT操作 1:git init 初始化空的仓库,会在当前文件夹生成一个隐藏.git的文件夹,相当于一个仓库. 2:提交代码的流程:工作代码区-->暂存区 -->主仓库 -->服务器 ...