[nRF51822] 14、浅谈蓝牙低功耗(BLE)的几种常见的应用场景及架构(科普类干货)

  蓝牙在短距离无线通信领域占据举足轻重的地位——

  • 从手机、平板、PC到车载设备,
  • 到耳机、游戏手柄、音响、电视,
  • 再到手环、电子秤、智能医疗器械(血糖仪、数字血压计、血气计、数字脉搏/心率监视器、数字体温计、耳温枪、皮肤水分计等),
  • 再到智能家居等领域均占有一席之地。

  而蓝牙低功耗(BLE)是在蓝牙4.0协议上修改以适用低功耗应用场景的一种蓝牙协议。

  随着上一股智能消费类电子大潮的到来,BLE的各种应用也像雨后春笋般在市场上铺开。

  如果想 紧跟蓝牙协议的最新动态 ,可以在https://www.bluetooth.com/找到最前沿的蓝牙技术,

  同时其为开发者打造的http://developer.bluetooth.cn/开发者网站也是干货十足。

  

  主流的BLE芯片有TI的TI CC2540/2541CSR BC6130创杰 IS1685SNordic nRF51822

  其中TI的CC2540/CC2541和Nordic的nRF51系列在智能手环、防丢器、自拍器、手持智慧医疗设备等领域竞争激烈,这两个在语音方面不强,所以和CSR的BC6130没有比较的意义。至于IS1685应该是一款透传模块,和芯片级产品没有比较意义,就相当于拿生产钢材的和制造型钢的比较。

  

  下面以nordic公司基于nRF51提供的几种BLE例程分析市面上BLE的应用场景:(TI的CC2541也类似)

  No1、智能手环、蓝牙防丢器、自拍神器

  蓝牙心率计、接近控制(开锁+防丢)整个工程是一种基于BLE广播和收发的架构,目前应用该类架构的产品有智能手环、蓝牙防丢器、冰箱贴、蓝牙自拍杆等产品。

     

  

  No2、串口透传模块

  串口工程和心率工程很像,在是在心率工程的基础上加入了UART的发送和接收函数,接收函数采用回调函数,可以监听各种串口消息。目前应用该类架构的产品时一些2B的模块公司,淘宝上一搜一大把,他们专门生产蓝牙透传模块,供更上游厂家开发更集成的设备。

   

  

  No3、空中鼠标、空中键盘、空中遥控器

  空中鼠标服务展示了如何用51822实现按动按键实现控制PC中的鼠标移动,该服务是由HID建立在GATT协议上的,支持连接各种通用设备,具体讲解见蓝牙开发者社区

  hids_keyboard案例中开发板运行后,按下计算机上的“CapsLock”键(大小写切换键),开启大写,开发板上的指示灯D3 会点亮。关闭大写,指示灯D3 会熄灭。里面也是集成了HID协议。

  这类集成HID的服务可以直接和具有HID接口的PC、智能机、pad进行互连。

  

  

  No4、beacon

  Beacon本质上是广播,手机搜索到广播信息进行跳转,弹出东西等。Beacon比广播的代码要简单地多!!!

  

  No5、主从一对多

  主从一对一及主从一对多可以构成星型网络。不过纯硬件的基于BLE的一主多从在产品上应用不太多,可能是由于:

  • 相比于24L01其开发难度大、成本高、技术资料不多;
  • 相比于zigbee不专业;
  • 相比于wifi吞吐量不够的原因。

  不过也有部分人坚持用BLE实现微微网实现设备互连互通,目前国内似乎还没有此类产品。

  当然这并不表示构成星型网络应用场景不锐利,我预测在未来几年各种微型、个人、家庭通信网络将会随着云计算、物联网,作为神经末梢连接众多的传感器设备而冲上浪潮之巅。

 

  No6、OAD、OTA、DFU

  空中升级Air-DFU,即Air Device Firmware Upgrade,更专业的叫法是OAD,即on air download或OTA,即Over-the-Air Technology

  在做CS模式的开发者来看远程升级不算什么,但是在硬件领域能够支持空中升级绝对属于很大的进步。

  之前给芯片升级固件需要用特殊设备(紫外线擦除等),

  然后由于发现了电擦除设备而给业界带来一场不小的革命,

  后来又出现了可反复擦除的芯片...

  即使目前嵌入式设备基本上都是通过UART、SWD等标准烧写口进行现场烧写固件的(所以之前你的MP3中毒了还要交给修手机、MP3、MP4的小哥让他们给你重刷一遍系统)。

  支持空中升级的智能消费类电子,服务商一般先把固件下载到相应的APP中,待APP检测到设备会请求进入空中升级模式,待硬件系统重启进入空中升级模式接收新的固件程序并存放在一个闲置区域,固件全部传输完毕系统再次重启,检测到有新的固件,从而将新的固件覆盖老的固件,最终实现硬件系统升级。

附录 — BLE系列教程

@nRF51822基础实验系列:



[nRF51822] 1、一个简单的nRF51822驱动的天马4线SPI-1.77寸LCD彩屏DEMO

[nRF51822] 2、D-BUG之诗

[nRF51822] 3、 新年也来个总结——图解nRF51 SDK中的Button handling library和FIFO library

[nRF51822] 4、 图解nRF51 SDK中的Schedule handling library 和Timer library

[nRF51822] 5、 霸屏了——详解nRF51 SDK中的GPIOTE(从GPIO电平变化到产生中断事件的流程详解)

[nRF51822] 6、基于nRF51822平台的flash读写研究

[nRF51822] 7、基础实验代码解析大全(前十)

[nRF51822] 8、基础实验代码解析大全 · 实验11 - PPI

[nRF51822] 9、基础实验代码解析大全 · 实验12 - ADC

[nRF51822] 10、基础实验代码解析大全 · 实验15 - RTC

[nRF51822] 11、基础实验代码解析大全 · 实验16 - 内部FLASH读写

[nRF51822] 12、基础实验代码解析大全 · 实验19 - PWM

[nRF51822] 13、浅谈nRF51822和NRF24LE1/NRF24LU1/NRF24L01经典2.4G模块无线通信配置与流程

......更新中



@CC2541基础实验系列:



1、CC2541蓝牙4.0芯片中级教程——基于OSAL操作系统的运行流程了解+定时器和串口例程了解

2、CC2541芯片中级教程-OSAL操作系统(进一步了解-OLED && 普通按键和5方向按键-中断!!!)这个系统驱动层和应用层不一样~

3、CC2541芯片中级教程-OSAL操作系统(ADC光敏电阻和修改串口波特率)

4、CC2541芯片中级教程-OSAL操作系统(简单AT指令实现+IIC软件和硬件实现驱动MPU6050)

5、CC2541芯片中级教程-OSAL操作系统(PWM+看门狗)

......更新中




主流蓝牙BLE控制芯片详解(1):TI CC2540 - 全文:德州仪器的CC2540系列产品提供用于感应器应用及行动手持装置周边的低功率蓝牙解决方案, CC2540是一个真正的系统单晶片解决方案,结合德州仪器的协定堆叠、轮廓软体及应用支援, CC2540成为市场上最具有弹性及成本效益的单模式低功率蓝牙解决方案。

主流蓝牙BLE控制芯片详解(2):CSR BC6130 - 全文:BC6130是一款超低功耗,低成本,适用于入门级的单声道蓝牙耳机解决方案,与BlueVox2引脚兼容,并包含支持一个蓝牙耳机和两个设备间多个同时连接的HFP多点连结。它还具有可编程的音频提示,可用于帮助指导用户进行配对或定制音频铃声。

主流蓝牙BLE控制芯片详解(3):创杰 IS1685S - 全文:智能型无线音频数据传输产品——S1685S单声道蓝牙芯片,是低成本的高效率单声道无线传输方案。采用免驱动方式,客户只需要把模块接入应用产品,通电,连接按键就可以快捷地实现音乐的无线传输,享受无线音乐的乐趣。(透传)

主流蓝牙BLE控制芯片详解(4):Nordic nRF51822 - 全文:nRF51822 是功能强大comtex-m0内核、高灵活性的多协议 SoC,非常适用于 Bluetooth® 低功耗和 2.4GHz 超低功耗无线应用。



@beautifulzzzz - 物联网&普适计算实践者
e-mail:[email protected] 
i-blog:blog.beautifulzzzz.com

时间: 2024-10-27 03:53:12

[nRF51822] 14、浅谈蓝牙低功耗(BLE)的几种常见的应用场景及架构(科普类干货)的相关文章

浅谈蓝牙低功耗(BLE)的几种常见的应用场景及架构(转载)

转载来至beautifulzzzz,网址http://www.cnblogs.com/zjutlitao/,推荐学习 蓝牙在短距离无线通信领域占据举足轻重的地位—— 从手机.平板.PC到车载设备, 到耳机.游戏手柄.音响.电视, 再到手环.电子秤.智能医疗器械(血糖仪.数字血压计.血气计.数字脉搏/心率监视器.数字体温计.耳温枪.皮肤水分计等), 再到智能家居等领域均占有一席之地. 而蓝牙低功耗(BLE)是在蓝牙4.0协议上修改以适用低功耗应用场景的一种蓝牙协议. 随着上一股智能消费类电子大潮的

CC2541是功率优化的真正系统级芯片(SoC)解决方案,适用于蓝牙低功耗(BLE)和专用的2.4GHz应用

CC2541是功率优化的真正系统级芯片(SoC)解决方案,适用于蓝牙低功耗(BLE)和专用的2.4GHz应用.该SOC芯片集成性能极好RF收发器以及标准工业级增强型8051内核,支持系统编程Flash,8KRAM及强大功能支持跟外设. NRF52832是深圳市动能世纪科技有限公司(www.dnsj88.com)从原厂渠道代理经销. 深圳市动能世纪科技有限公司成立于2000年,是一家IC集成电路销售的独立分销商,一直专注于经销世界著名的电子元器件,同时为客户提供被动元器件的配套.公司拥有一支专业且

【转】浅谈 CSS 清除浮动的 6 种方法

转载:浅谈 CSS 清除浮动的 6 种方法 在开发网页的时候经常需要用到各种浮动,此时便需要及时的清除浮动,否则将会导致布局出现问题 引出问题: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <style> .outer{ border: 1px solid black;

浅谈Linux系统中的7种运行级别及其原理

浅谈Linux系统中的7种运行级别 Linux系统7个运行级别(runlevel): 运行级别0: 系统停机状态,系统默认运行级别不能设为0,否则不能正常启动. 运行级别1: 单用户工作状态,root权限,用于系统维护,禁止远程登陆. 运行级别2: 多用户状态(没有NFS). 运行级别3: 完全的多用户状态(有NFS),登陆后进入控制台命令行模式. 运行级别4: 系统未使用,保留. 运行级别5: X11控制台,登陆后进入图形GUI模式. 运行级别6: 系统正常关闭并重启,默认运行级别不能设为6,

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

转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/50515359 参考 :  -- 官方文档 : https://developer.android.com/guide/topics/connectivity/bluetooth-le.html; 1. 概述 BLE 概述 : -- 版本支持 : Android 4.3 (API Level 18) 内置框架引入了 蓝牙低功耗方案 (Bluetooth Low Energy,

【蓝牙低功耗BLE】控制GPIO来点亮LED

这节讲一下最简单的,也是最基础的东西,CC2540的IO操作,把PORT口当做GPIO来用,废话不多说,往下看. 1.硬件电路 硬件电路时最简单的,用一根GPIO去控制LED灯,由于GPIO作为output,所以也不用管GPIO的模式. 还是挺简单的,控制左边GPIO的高低来开关LED灯. 2.相关寄存器 P0SEL      P0[7:0]功能设置寄存器,默认设置为普通I/O口 P0INP P0[7:0]作为输入口时电路模式寄存器,可以设置为输入上下拉等 P0 P0[7:0]可以位寻址的I/O

170221、浅谈mysql的SQL的四种连接

例子:   -------------------------------------------------  a表     id   name     b表     id   job   parent_id                 1   张3                   1     23     1                 2   李四                 2     34     2                 3   王武            

浅谈SQL Server中的三种物理连接操作

简介 在SQL Server中,我们所常见的表与表之间的Inner Join,Outer Join都会被执行引擎根据所选的列,数据上是否有索引,所选数据的选择性转化为Loop Join,Merge Join,Hash Join这三种物理连接中的一种.理解这三种物理连接是理解在表连接时解决性能问题的基础,下面我来对这三种连接的原理,适用场景进行描述. 嵌套循环连接(Nested Loop Join) 循环嵌套连接是最基本的连接,正如其名所示那样,需要进行循环嵌套,这种连接方式的过程可以简单的用下图

浅谈压缩感知(七):常见测量矩阵的MATLAB实现

1.随机高斯测量矩阵 function [ Phi ] = GaussMtx( M,N ) %GaussMtx Summary of this function goes here % Generate Bernoulli matrix % M -- RowNumber % N -- ColumnNumber % Phi -- The Gauss matrix %% Generate Gauss matrix Phi = randn(M,N); %Phi = Phi/sqrt(M); end 2