This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2640R2F:提高通信速度

Guru**** 2327860 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1489428/cc2640r2f-increase-speed-of-communication

器件型号:CC2640R2F

工具与软件:

您好!
使用 Code Composer Studio 版本10.3.0.00007的 IM

BLE SDK simplelink_cc2640r2_sdk_5_10_00_02

XDC 工具版本3_51_03_28_CORE

外置闪存(包括25x40)

#define DEFAULT_MAX_SCAN_RES 10.

//设备可发现时的广播间隔(单位为625us、160=100ms)
#define DEFAULT_advertising_interval 160 //此设置需要广播间隔值乘以1.6//

#define DEFAULT_DISCOVERY_MODE GAP_ADTYPE_FLAGS_GENERAL

#define DEFAULT_CONN_INT              42//200//**使用的连接参数**//
#define DEFAULT_CONN_TIMEOUT         200//1000
#define DEFAULT_CONN_LATENCY         0

#define DEFAULT_SCAN_DURATION  120 //**扫描间隔、单位为 Ms **//
#define DEFAULT_SCAN_WIND        200
#define DEFAULT_SCAN_INT          200
#define TEMP_STREAM_PERIOD      997.
#define SEND_PERIOD               503.
#define ACK_PERIOD                1109.
#define BATT_PERIOD                599999//每10分钟一次
#define DYN_ID_RESTURE_PERIOD     1003/0A 命令(每1秒)
#define READ_DELAY_PERIOD         2003.  
#define STATUS_MSG_PERIOD        1501 //状态 msg、每1.5秒

#define buffer_limit             2800
#define BUFFER_LIMIT1           40000

数据包长度为         10.
最大 PDU 大小         64或69

已用内存:
FLASH_IMG_HDR      47%
闪存                95%
GPRAM              31%
SRAM                40%
AUX_RAM             76%

目前第10枚硬币到网关的数据速率为5到6秒、第1枚硬币的速率为半秒、指导我除调整扫描或连接参数以外、还可以优化速度、因为目前的参数是功耗的最佳参数

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    感谢您联系我们! 我们将调查您的问题并尽快回复您。

    此致、

    Tarek

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我不确定问题的拓扑结构。
    -你能具体说明你的意思是什么硬币,他们有多少在那里?
    -您使用的是我们的板和/或 launchpad 吗? 如果是、您使用的是哪种型号?
    -如何测量从一枚硬币到网关的速度?

    此致、
    Maxence

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好

    系统作为线性网状网络运行、硬币既用作外设、也用作中央器件、根据接近度和连接性动态切换角色。 每个硬币都配备了一个 lsm6ds3和 si-70006 A-20传感器,用于生成数据。 当这种情况发生时,硬币将自己作为可连接的设备进行广告宣传,而其他硬币和网关则会主动扫描广告硬币。

    如果带数据的硬币在网关的范围内、网关将确认其广播、提示直接数据传输。 但是、如果 Coin 超出范围、它会根据 RSSI 确定最适合的附近 Coin、并将数据转发给它。 在连接到单个网关以进行测试的10个硬币网络中、数据传输不一定遵循通过相邻节点的顺序路径;相反、每个 Coin 根据信号强度选择最佳接收者。

    当多个硬币同时生成数据时,中间硬币在确认后连接到最近的数据生成硬币。 在延迟之前、它每个连接最多传输250字节、然后再次扫描以确定更接近的数据生成 Coin 并重新连接。 一旦收到数据、它就会广播其自身、然后直接将其发送到网关、或者根据距离将其转发到附近的另一个硬币。


    我们使用定制电路板、并根据数据到达服务器的时间测量速度。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    以下是有关如何优化速度和功耗的一些想法:

    -你提到传输数据时,多个硬币同时生成数据,一个中间硬币连接到一个数据生成硬币,只能传输多达250字节的数据。 但是、由于蓝牙5引入了扩展广播、因此您可以在广播包中传输最多255字节的数据、而在蓝牙4.0中最多可以传输37个字节的数据。 这样可以完全跳过连接、从而节省时间和功耗。
    如果您想了解此解决方案、我向您推荐 有关低功耗蓝牙扫描和广播的 SimpleLink Academy 课程。

    -通过阅读您的帖子,我觉得您有一个专有的算法,在设备网络中共享数据。 您可以改用蓝牙网状网络、这看起来很适合您的用例、并允许您为此使用我们的 SDK 函数、从而节省您开发专有网络算法的时间。 请注意、蓝牙网状网络不支持扩展广播等蓝牙5功能、因此该解决方案与第一个解决方案不兼容。
    如果您想了解这种解决方案、我推荐 SimpleLink Academy 课程、了解 TI 蓝牙网状网络基础知识

    我希望这些解决方案对您有所帮助。

    此致、
    Maxence