BLE-NRF51822教程1-常用概念
http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=28852942&id=5213583
1:主机如何知道外围设备的存在:
外围设备广播信息。
主机主动扫描,外围设备回复扫描响应以告知主机。
2:可发现模式:由广播中的flag标志设置。
有限可发现模式:广播间隔快,但最大只能持续最多30s
通用可发现模式:广播间隔相对较慢,广播没有最大还需时间限制。
3:广播通道:
BLE中有3个广播信道和37个数据信道。每次广播间隔时间到期后会在3个广播信道中发送广播数据
4:广播数据:
BLE链路层最大数据负载是296字节。因为广播数据中需要有设备地址,因此有效数据为31字节。
5:地址:
可以使用随机地址或者注册的public address。
随机地址的最高两个bit为1
6:更多的广播数据:
如果需要广播超过31字节的数据,需要使用扫描响应。主机需要发送扫描请求。
7:广播和扫描参数:
广播间隔:广播的发送周期
扫描间隔:扫描的周期。
扫描窗口:扫描周期到来后,设备扫描持续的时间。
8:连接参数:
连接间隔:连接的周期,设备只能在连接周期到了才能交互数据。
从设备延迟:以连接间隔为单位。该参数表示从设备在必须侦听自己的接收机以接收主设备可能的发送数据之前可以忽略多少个连接事件。
监控超时时间:该时间范围内连接都丢失了则会产生超时事件。
9:通知和指示:
BLE是基于服务器-客户端的方式来传输数据。服务器维护一个属**器,里面包含了服务器公开的状态和信息等。客户端通过属性协议来访问该服务器。该模式中通常都是客户端主动发起,服务器再返回数据。 不过在一些应用中比如电量服务中,我们不可能让客户端(比如手机)去轮训服务器上的电量值,而是应该在电量改变时由服务器主动发送数据给客户端。
通知和指示就是应用于这种应用而创建的有服务器主动发起数据的方式。区别在于通知只发送数据不需确认。而指示需要客户端回复确认,因此被认为是可靠传输。
10: 属性:
一条带有标签的,可以被寻址的数据。由三种数值组成:句柄,类型,值。
11:特性:
可以看成一种或几种属性的组合。包含三个基本要素:声明,数值,描述符。(这三个每个都是一个属性)
声明:一条属性,值域中包含三个字段:特性性质(读/写/通知等等),特性数值句柄(数值属性的地址),属性uuid(用来识别特性数值的类型)。
数值:一条包含特性数值的属性。
描述符:一个特性可以包含0或多个特性描述符。客户端特性配置描述符(CCCD),特性表示描述符等。
12:属性协议(AP),通用属性规范(GATT),通用访问规范(GAP)
低功耗蓝牙采用的是客户-服务器模型,属性协议定义了客户端与服务器如何相互发送符合标准的消息。属性协议由六种基本操作构成:请求,响应,命令,指示,通知,确认。(当然每种操作下又含有不同的‘操作’,比如请求又分读取请求,写入请求等)
通用属性规范:定义了如何发现与使用服务,特性与描述符的标准方法。主要有发现规程(服务,特性的发现),客户端发起规程(客户端的读写等),服务器发起规程(通知,指示)
通用访问规范:定义了设备如何彼此发现,建立连接以及如何实现绑定,同时描述了设备如何成为广播者和观察者,并且实现无连接的数据传输。
13:配对和绑定:
起初并未提供安全性的两个设备如果希望做一些需要安全性的工作,首先必须配对。配对过程 涉及 :配对信息的交换,链路认证。如果设置了绑定位,还会有秘钥的分发,分发的秘钥可以存储下来。当下次需要安全链路时便可不必再次配对。
BLE-NRF51822教程1-常用概念相关推荐
- WLT8016:BLE蓝牙的一些基本概念
WLT8016:BLE蓝牙的一些基本概念 一.什么是BLE BLE全称Bluetooth Low Energy,即蓝牙低功耗.蓝牙4.0才支持BLE,蓝牙4.0向下兼容,包括传统蓝牙技术.高速技术和低 ...
- SAP MM模块常用概念--供应商评价
SAP MM模块常用概念--供应商评价 供应商评估功能能尽量优化采购操作,能简化选择货源过程.不断跟踪和考察现有的供应关系. 使用R/3供应商评估系统能保证更大的客观性,因为所有供货商以同一标准评估并 ...
- Django 3.2.5博客开发教程:一些常用的模板使用方法
一.django static文件的引入方式 1.在django project中创建 static文件夹 2.settings.py中配置要在 STATIC_URL = '/static/' 下边 ...
- 【软件架构】软件架构设计常用概念、原则与思想
导读 本文一文总结软件架构设计常用概念.原则与思想,包括面向对象六大原则,DID原则,ACID.CAP.BASE理论,中间层思想,缓存思想等. 软件架构设计常用概念.原则与思想 面向对象设计六大原则 ...
- (转)OpenLayers3基础教程——OL3基本概念
http://blog.csdn.net/gisshixisheng/article/details/46756275 OpenLayers3基础教程--OL3基本概念 从本节开始,我会陆陆续续的更新 ...
- linux eth0 目录,教程 | Linux常用命令大全
原标题:教程 | Linux常用命令大全 来源:Linux爱好者 ID:LinuxHub Linux常用命令 目录操作命令 ls 命令名称:ls 命令英文原意:list 命令所在路径:/bin/ls ...
- 【学习记录】卷积神经网络常用概念
一.卷积与池化 卷积本身来自于信号处理领域,是一项广泛应用于信号处理的技术,在数学上指的是函数经过反转和平移再次求乘积的积分的过程. 在传统的图像处理中,卷积核一般是人为设定,使用不同的卷积核可以提取 ...
- wlan从入门到精通第四期WLAN常用概念
wlan从入门到精通第四期WLAN常用概念 SSID的全称是Service Set Identifier,也就是服务集标识符,用于标识一个服务集,按照大部分人的理解,也就是用来标识一个可用的网路. 我 ...
- 布局与控件(一)——布局与控件的常用概念
第1节 布局与控件的常用概念 界面设计中的控件,就是我们常常看到的按钮 滑动条 文字显示区等等,它们就像房间里的家具,是界面设计的最小单位. 布局是一个可以容纳别的布局(或者控件)的容器.它就像是一个 ...
- 网络设备及网络常用概念(交换机,路由器,ip等)基础知识
一些常用概念: 网络模块:电源开关挡板+网络接入端口 网络配架:放置交换机和路由器的架子 网络跳线:用于设备(路由器和交换机)和桌面间的连接 交换机: 汇聚层,主要用于集网络跳线的作用 . 2 .路由 ...
最新文章
- 竞争位移之四:概念抽屉与市场选择
- 脏读、幻读和不可重复读 + 事务隔离级别
- linux笔记 3-4 SMTP,.配置电子邮件传输
- 常见操作系统调度算法研究(2)
- C语言中的“”和“”
- TeamViewer - 最好用强大的免费跨平台远程桌面控制软件 (支持电脑和手机)
- java大数模板_java大数模板
- python 波动率_旧文:历史波动率的计算 (Python)
- 层间距离对ct图像的影响_CT专业知识掌握基础、了解原理
- Android输入模拟——如何模拟用户输入
- python 队列实现_Python Queue队列实现线程通信
- BenchmarkSQL 测试Oracle 12c TPC-C 性能
- 何凯明:Single Image Haze Removal Using Dark Channel Prior[CVPR 2009]
- 视频编解码发展历程(从AVC到HEVC再到VVC)(一)
- H3C设备网吧万兆光模块解决方案
- e4a换行_这个易语言代码用E4A怎么写?
- 事半功倍追求卓越:人生找位的“TONS法则”
- python实现FFT,IFFT
- 创业者必学的六种植物[转]
- 静电容键盘和机械键盘声音对比
热门文章
- 太阳能计算机作文500字,自制太阳能热水器
- java多线程详细讲解_Java多线程例子讲解
- Android开发之通过ImageView名称从文件夹拿到ImageView的Drawable对象的方法
- 64 源码_【ClickHouse内核】源码阅读策略
- svn:error use xcode-select to change
- linux系统原理是什么意思,Linux系统原理之整体概述
- IllegalArgumentException:@Body parameters cannot be used with form or multi-part encoding
- React jsx 中写更优雅、直观的条件运算符
- Nginx系列~Nginx服务启动不了
- Jquery加载默认值