1325|0

6828

帖子

0

TA的资源

五彩晶圆(高级)

楼主
 

TI IC:cc2540配置 [复制链接]

GAPP层总是作为下面四中角色中的一种:

1、广播者(Broadcaster)——不能连接广告设备

2、观测者(Observer)——扫描广播,但不能启动连接

3、外设(Peripheral)——可连接的广告设备,在单链路层连接作为从机操作

4、集中器(Central)——扫描广告和启动连接,在单链路和多链路层连接作为主机操作。目前,BLE集中器协议栈支持连接三个设备。

在一个典型的低功耗蓝牙系统中,外设广告特定的数据来让集中器设备知道它是可以被连接的设备。广告的内容包括:设备的地址,和一些附加的数据,如设备名字。集中器收到广告数据后,向外设发送("scan request")扫描请求。外设会响应一个(“scan response”)扫描回应。这个过程称为设备发现。通过这个过程,集中器已经识别了外设,并且知道这个外设和它自己可以形成一个连接。然后集中器可以发送一个建立连接的请求给外设。一个连接请求应该包括一些连接的参数,

如下所示:

1.Connection Interval(GAPROLE_MIN_CONN_INTERVAL && GAPROLE_MAX_CONN_INTERVAL)- 连接间隔,在BLE的两个设备的连接中使用跳频机制。两个设备使用特定的信道发送和接收数据, 然后过一段时间后再使用新的信道(BLE协议栈的链路层处理信道的切换)。两个设备在切换信道后发送和接收数据称为一个连接事件。尽管没有应用数据被发送和接收,两个设备仍旧会交换链路层数据来维持连接。这个连接间隔就是这个两个连接事件的之间的时间间隔。间隔以1.25ms为单元,连接间隔的范围的6-3200既7.5ms-4s(4000ms)之间。 不用的应用程序可以要求不同的连接间隔, 拥有长的连接间隔的优点是降低功耗,因为设备在连接事件之间有较长时间的休眠。缺点是设备有数据发送的时候,就必须等到下一个连接事件才可以发送出去。 短时间的连接间隔优点是两设备连接频繁,会有较多的功耗。

 

2.Slave Latency(GAPROLE_SLAVE_LATENCY)从机延时——这个参数给从机(外设)跳过若干个连接事件的选项。给外设一些灵活度,如果外设没有任何数据发送,就可以选额跳过连接事件 和保持休眠。因此提供了一些功耗的节省。 从机延时值表示跳过最大的连接事件值。范围是0到499,0:不跳过任何连接事件,然而最大值必须不能影响连接间隔大于16.0s。

3.Supervision Timerout(GAPROLE_TIMEOUT_MULTIPLIER)超时管理——这个事两个成功连接事件之间的最大允许间隔。如果超过了这个事件而没有连接成功的连接事件,设备认为连接已经丢失。设备就会返回一个未连接的状态。这个参数值的单位是10ms,管理超时值的范围是10-3200即(100ms - 32s)。一般超时值必须大于有效连接间隔,如下所示:

    Effective Connection Interval = (Connection Interval) * ( 1 + (Slave Latency) )

    有效连接间隔 = 连接间隔 *(1 + 从机延时)

这些连接设置都可以通过请求集中器修改的,外设只需要向集中器发送“连接参数更新请求”来改变连接设置。这个请求由协议栈的L2ACP层处理。这个请求包括4个参数:连接最小间隔 (GAPROLE_MIN_CONN_INTERVAL)、连接最大间隔(GAPROLE_MAX_CONN_INTERVAL)、从机延时(GAPROLE_SLAVE_LATENCY)、超时(GAPROLE_TIMEOUT_MULTIPLIER)。这些值代表外设所要求的连接参数。接到请求后,集中器可以接受或者拒绝这些新的参数。

连接可以被主机或从机一方以任何原因终止,当一方发起终止连接时,另一方必须响应。 GAP层也处理BLE连接中安全特征初始化,只有在已认证的连接中,特定的数据才能被读写。一旦建立两个设备进行配对,当配对完成以后,形成加密连接的秘钥。在典型的应用中,外设请求集中器提供秘钥来完成配对工作,秘钥可以是一个固定值,也可以是随机生成一个数据提供给使用者,当集中器设备发送正确的秘钥后,两个设备交换安全秘钥并加密认证链接。

GAP 配置参数说明:

3.4.1 GAP Peripheral Role Profile The peripheral role profile provides the means for the keyfob to advertise, connect with a central device (though the initiation of the connection must come from the  central device), and request a specific set of connection parameters from a master device. The primary API function prototypes for the peripheral role profile can be found in the file peripheral.h. The API provides functions to get and set certain GAP 
profile parameters: GAPRole_GetParameter and GAPRole_SetParameter, respectively. Here are a few GAP role parameters of interest:  GAPROLE_ADVERT_ENABLED – This parameter enables or disables advertisements. The default value for this parameter is TRUE.  GAPROLE_ADVERT_DATA – This is a string containing the data to appear in the advertisement packets. By setting this value to { 0x02, 0x01, 0x05 }, the device will 
use limited discoverable mode when advertising. More information on advertisement data types and definitions can be found in [7].  GAPROLE_SCAN_RSP_DATA – This is a string containing the name of the device that will appear in scan response data. If an observer or central device is scanning and 
sends a scan request to the peripheral device, the peripheral will respond back with a scan response containing this string.  GAPROLE_ADVERT_OFF_TIME – This parameter is used when the device is put into limited discoverable mode. It sets how long the device should wait before becoming 
discoverable again at the end of the limited discovery period. By setting this value to 0, the device will not become discoverable again until the 
GAPROLE_ADVERT_ENABLED is set back to TRUE.  GAPROLE_PARAM_UPDATE_ENABLE – This enables automatic connection parameter update requests. The profile default value is FALSE.  GAPROLE_MIN_CONN_INTERVAL – This parameter is the minimum desired connection interval value. The default value is 80, corresponding to 100ms.  GAPROLE_MAX_CONN_INTERVAL – This parameter is the maximum desired connection interval value. The default value is 3200, corresponding to 4.0s.  GAPROLE_SLAVE_LATENCY – This parameter is the desired slave latency. The default value is 0.  GAPROLE_TIMEOUT_MULTIPLIER – This parameter is the desired connection supervision timeout. The default value is 1000 (corresponding to 10.0s)

此帖出自无线连接论坛
点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表