⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.xmece.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
8个职位/ 0个新职位
最后发表
BenjaminDu
离线
最后看到:2个月23小时前
加入:2016-03-14 02:38
数据传输速度

你好,
我需要从外设传输数据到中心,如果我在之前的数据传输完成之前把更多的数据放入缓冲区,系统会崩溃。
所以我需要知道之前的数据是否传输了
有什么功能可以让我这样做吗?
或者可能检测到一个错误,让我停止传输更多的数据?

每次我把5个字节放入缓冲区,有没有其他方法可以让我传输更多的数据?比如一次将10个字节放入缓冲区?

非常感谢

便雅悯

设备:
MT_dialog
离线
最后看到:2个月3个星期前
工作人员
加入:2015-06-08 34
嗨BenjaminDu,

嗨BenjaminDu,

由于您正在从外设向中心传输数据,我假设您正在使用通知(因为比指示更快,因为不需要等待来自主机的确认,以发送下一大批数据)。因此,为了获得先前数据已经传输的确认,你必须捕获send事件的确认,例如,为了发送一个通知你应该发出GATTC_SEND_EVT_CMD这消息应该作为响应GATTC_CMP_EVT(定制概要文件使用相同的方案的实施与CUSTS1_VAL_NTF_REQ自定义消息来发送通知和确认CUSTS1_VAL_NTF_CFM, implemeting上述方案)。关于缓冲区中的5个字节和设备崩溃,有了通知,你可以在同一个数据包上携带20个字节,然后你可以通过增加MTU大小(最大512字节)来扩展它。从你提到的其他东西是你的设备崩溃的原因,如果你可以跟踪代码结束的地方,当设备崩溃,它会有帮助,因为似乎很奇怪的传输5个字节和崩溃。

由于MT_dialog

BenjaminDu
离线
最后看到:2个月23小时前
加入:2016-03-14 02:38
嗨MT_dialog,

嗨MT_dialog,

非常感谢你这么快就回复我。
是的,我使用通知,你的意思是当传输结束时我可以得到GATTC_CMP_EVT消息吗?我可以找到几个GATTC_CMP_EVT,但我不知道应该使用哪个。
附件是“crash”发生时的快照,你能帮我分析一下吗?我的分析(猜测)是,当我想把更多的数据放入寄存器(但我不知道为什么是“不能读”而不是“写”)时,20个寄存器已经满了。我想看看它们是不是空的,看看我能不能传输更多的数据。

感谢很多

附件:
MT_dialog
离线
最后看到:2个月3个星期前
工作人员
加入:2015-06-08 34
嗨BenjaminDu,

嗨BenjaminDu,

是的,如上所述,对于您发送的每个通知消息,应该向您的应用程序指示一个GATTC_CMP_EVT。对于坠毁,据我显然可以从截图告诉你已经发送你的设备越来越脱离jlink那为什么你得到这些消息在凯尔和不是因为缓冲区溢出之类的(至少这是错误在凯尔表示)。此外,我看到您正在使用一个相当旧的参考设计(throughput_eval_peripheral项目)。我强烈建议改用最新的SDK,因为您使用的参考设计已经相当过时,而且不受支持。如果你有兴趣检查580的吞吐量能力,你应该检查DSPS参考设计。

由于MT_dialog

BenjaminDu
离线
最后看到:2个月23小时前
加入:2016-03-14 02:38
下载了最新的SDK

我下载了最新的SDK,现在正在测试示例来熟悉它。
我使用旧版本SDK的原因是,有一个很好的例子可以满足我的需求,我的应用程序有两个580频繁交换数据,我需要两个580连接,有时它们会睡着。我想知道你是否可以推荐更好的例子来满足我的需求。

MT_dialog
离线
最后看到:2个月3个星期前
工作人员
加入:2015-06-08 34
嗨BenjaminDu,

嗨BenjaminDu,

如果您想测试吞吐量,您可以使用DSPS参考设计,该项目实现外围设备的一面和中央设备的一面,因此您可以检查它是否适合您。

由于MT_dialog

BenjaminDu
离线
最后看到:2个月23小时前
加入:2016-03-14 02:38
嗨MT_dialog,

嗨MT_dialog,

我在iPad上安装了DSPS,但找不到在我的580上运行的目标示例。

因为我有两个580来交换数据,一个是CENTRAL,另一个是PERIPHERAL,我发现所有的例子都是关于PERIPHERAL的,有关于CENTRAL的例子吗?或者我需要一些配置?

谢谢
便雅悯

MT_dialog
离线
最后看到:2个月3个星期前
工作人员
加入:2015-06-08 34
嗨BenjaminDu,

嗨BenjaminDu,

DSPS文件夹包括sps_device文件夹和sps_host项目,第一个文件夹包括应用程序的外围部分,后者包括应用程序的中心部分。你可以使用文件夹中包含的项目sps_host作为中心,并使用另一个580作为演示,或者你可以使用android/ios应用程序作为中心。

由于MT_dialog