DA14580无法重新启动广告后的通告

4个帖子/ 0新
最后一篇
young_dialog
离线
最后一次露面:3年10个月前
加入:2016-05-10 07:14
DA14580无法重新启动广告后的通告

大家好你们好,

我正在开发一个基于SDK5.0.3的智能设备,BLE_APP_PERITIELAL示例,DA14580 01 QFN40设备。在正常情况下,当设备与对等设备(智能手机)断开时,它

将重新启动广告。至于我,情况有点不同。在我的项目代码中,我需要每20ms向对等设备通知20bytes数据。当对等设备终止时

连接后连接,设备可以成功重新启动广告。但是当设备超出连接范围后连接时,它无法重启广告,我不知道

CPU运行的地方。

我还执行另一个测试,如下所述:

系统环境与上面相同。什么改变是循环时间。我发现当我每125毫秒通知20bytes数据时,对等设备终止连接或设备

在连接范围内,DA14582可以重启广告。当此循环时间低于125ms时,如100ms或50ms,DA14582无法重新启动设备时的广告

连接范围。这很奇怪!

顺便说一下,连接参数是:

.intv_min = ms_to_doubleslots(10),
.intv_max = ms_to_doubleslots(20),
智能手机:三星S6 Android 5.1.1

我担心的是,它是对BLE堆栈的任何限制来通知数据。如何处理此类数据交换?任何建议?谢谢!

布罗尔,

年轻

设备:
mt_dialog.
离线
最后一次露面:2个月3周前
职员
加入:2015-06-08 11:34
嗨yound_dialog,

嗨yound_dialog,

如果我理解您的问题,您可能希望看看下面的帖子,

http://support.dialog-semicondiondiondiondum/da14580-does-not-disconnect.

谢谢mt_dialog.

young_dialog
离线
最后一次露面:3年10个月前
加入:2016-05-10 07:14
嗨mt_dialog,

嗨mt_dialog,

我尝试使用数据缓冲区进行通知,问题消失。但我发现基于RAM的新问题。我正在使用RAM来调试代码和执行。在我的代码中,有一个

函数名为algorithm(),它消耗了很多系统RAM.当我尝试在系统SRAM中创建一个1k字节缓冲区时,它不会在通知时产生影响,因为它不会发送数据

前。我认为缓冲区没有SRAM空间来分配,所以我在保留SRAM中分配它。重试测试。结果是我的缓冲区中的一些数据没有任何符号更改。当我

删除算法()函数或将缓冲区大小缩小为500bytes,它以前很好地运行。从理论上讲,系统SRAM和保留SRAM不会互相打扰。有什么问题

我的缓冲区?任何建议?谢谢!

布罗尔,

年轻

mt_dialog.
离线
最后一次露面:2个月3周前
职员
加入:2015-06-08 11:34
嗨Young_Dialog,

嗨Young_Dialog,

说实话,我不明白你想要做什么或者问题是什么,我也没有看到保留RAM中的数据是如何受到SYSRAM的影响。为了避免在发送通知后断开连接后的复位,您可以制作流量控制机制,或者减少监控超时,以便在生成额外数据和泛洪您的内存之前断开连接。

谢谢mt_dialog.