TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2642R: CC2642与CC2640R2F的通信时长

Part Number:CC2642ROther Parts Discussed in Thread:CC2640R2F,

想问一下,我在使用CC2642(主机)连接CC2640R2F(从机)时,主机中开启一个定时器,在发送数据包时(使用GATT_WriteCharValue函数),将当前定时器计数值读取出来;从机收到主机的数据后,通过Notify的方式将数据原封不动的发回主机,主机在ATT_HANDLE_VALUE_NOTI中收到数据后,立马读取定时器数值。这样两个定时器数值相减,再乘时钟刻度(采用48MHz晶振,1/48000000),算出的时间在20ms左右,这个时间太大了,我用手机(安卓)的BLE调试助手进行测试,时间只有1~3ms,请问怎么缩小这个时间


Cherry Zhou:

您好我们已收到您的问题并升级处理,如有答复将尽快回复您。谢谢!

,

Zexu Zhang:

麻烦您尽快回复!

,

Cherry Zhou:

我们想先确认您的设置是否正确。

连接间隔设置需要设置的尽可能短。 但是,BLE 器件的最小连接间隔为 7.5 ms。 因此,中央设备发送写命令的平均时间至少为 7.5/2 = 3.75ms。

我们不确定是否也必须在同一连接事件中发回通知,如果不是,设备可能需要另外 7.5 毫秒的时间才能做出响应。 

我们建议您尽可能缩短连接间隔,并删除可能会导致器件快速响应的其他任务。

,

Zexu Zhang:

首先谢谢您的回复1、连接间隔的设置,我遵循了12.5+5*N的公式,当连接一个从机时,设置的连接间隔是12.5+5 = 17.5ms;

2、请问能否将最大连接间隔和最小连接间隔设置成相同的数值,因为我查阅标准的蓝牙协议,规范要求最小连接间隔不能大于最大连接间隔,也就是小于等于;

3、关于“一主多从”下的连接间隔问题,因为主机连接多个从机是逐个连接(无法做到同时连接),当中央设备(主机)向多个从机发送数据时,主机的连接间隔是怎样变化的?会不会出现下述的情况:主机向第一个从机发送完指令,第一个从机收到指令后立马通过Notify向主机发送数据,但此时因为主机正在与另外的从机通信,此时在这种情况下,主机能否收到第一个从机的Notify数据?

4、我把从机(CC2640R2F)与BLE调试助手通信的信息截图贴了出来,如下图所示,显示的时间信息是1-4ms,这个从机我设置的连接间隔是17.5ms。至于您说的7.5/2ms,数据的接收发送不是发生【连接间隔】中的【连接事件】中吗,如文档中的图片,数据的发送接收只占用连接间隔很小的一部分。也就说如果【中央设备向从设备发送与从设备向中央设备返回】在另一个【连接间隔的连接事件中】,是可以做到极短的时间的?

,

Cherry Zhou:

好的谢谢您提供的信息,已把您的问题跟进给工程师。如有答复将尽快回复您。

,

Zexu Zhang:

好的,希望尽快收到您的答复!

,

Cherry Zhou:

Zexu Zhang 说:1、连接间隔的设置,我遵循了12.5+5*N的公式,当连接一个从机时,设置的连接间隔是12.5+5 = 17.5ms;

CC2640R2F 和 CC2642R 接受任何蓝牙兼容连接间隔。 也就是最小值为 7.5ms ,允许任何 (n * 1.25ms) 值。

Zexu Zhang 说:2、请问能否将最大连接间隔和最小连接间隔设置成相同的数值,因为我查阅标准的蓝牙协议,规范要求最小连接间隔不能大于最大连接间隔,也就是小于等于;

用于连接的连接间隔会导致中央和外设之间的协商。 只要中央和外设重叠所预期的连接间隔范围,一切都会正常工作。 如您所述,在最小和最大连接间隔中使用相同的值是可以的。

Zexu Zhang 说:3、关于“一主多从”下的连接间隔问题,因为主机连接多个从机是逐个连接(无法做到同时连接),当中央设备(主机)向多个从机发送数据时,主机的连接间隔是怎样变化的?会不会出现下述的情况:主机向第一个从机发送完指令,第一个从机收到指令后立马通过Notify向主机发送数据,但此时因为主机正在与另外的从机通信,此时在这种情况下,主机能否收到第一个从机的Notify数据?

多个连接不会影响每个连接的连接间隔。

Zexu Zhang 说:我把从机(CC2640R2F)与BLE调试助手通信的信息截图贴了出来,如下图所示,显示的时间信息是1-4ms,这个从机我设置的连接间隔是17.5ms。至于您说的7.5/2ms,数据的接收发送不是发生【连接间隔】中的【连接事件】中吗,如文档中的图片,数据的发送接收只占用连接间隔很小的一部分。也就说如果【中央设备向从设备发送与从设备向中央设备返回】在另一个【连接间隔的连接事件中】,是可以做到极短的时间的?

一般而言, GATT 请求和 GATT 响应不会在相同的连接间隔内发生。 响应仅在一些连接事件中发送.

希望以上回答对您有所帮助,如有其他问题请随时联系我们。

,

Zexu Zhang:

谢谢您的回复

关于上述问题第3点,期望更详细的回复,会不会出现我所叙述的问题,当多个从机同时向主机发送数据的时候,主机同一时刻是只能接收单个从机的数据嘛

,

Cherry Zhou:

好的我再帮您详细询问下,如有答复我会尽快给到您。

,

Cherry Zhou:

Zexu Zhang 说:当多个从机同时向主机发送数据的时候,主机同一时刻是只能接收单个从机的数据嘛

中心为每个连接定义一个不同的定位点。 然后每个连接的连接事件发生在固定的间隔。当有许多连接同时还具有不同的连接间隔时,可能会有一些冲突,但通常两个外设不会同时发送数据。

一旦 GATT 客户端 (在您这个问题中即中心) 启用了接收 GATT 通知,就不会再发送其他请求。 同时,每个连接都有一个特定的定位点。 也就是说您需要为每个连接保留一个time-slot(时隙)。

,

Zexu Zhang:

好的,谢谢您的回复

赞(0)
未经允许不得转载:TI中文支持网 » CC2642R: CC2642与CC2640R2F的通信时长
分享到: 更多 (0)

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1