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.

[参考译文] CC2340R5:示例代码的当前代码"empty.c"。

Guru**** 1810550 points
Other Parts Discussed in Thread: LP-EM-CC2340R5, CC2340R5, ENERGYTRACE
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1324144/cc2340r5-current-of-sample-code-empty-c

器件型号:CC2340R5
主题中讨论的其他部件:ENERGYTRACE

大家好。

示例代码"empty.c"已写入 LP-EM-CC2340R5、以检查电流。

可以看到、电流周期性地上升约8µA。

电流为什么升高?

另外、需要减小我正在开发的产品中的电流。 有没有任何方法可以减少这种电流的周期性上升?

获得的电流图如下所示。

为了检查电流消耗、我按如下方式更改了 empty.c 中的 mainThread。

simplelink_lowpower_f3_sdk_7_40_00_64\examples\rtos\LP_EM_CC2340R5\drivers\empty

/*
 *  ======== mainThread ========
 */
void *mainThread(void *arg0)
{
    /* 1 second delay */
    uint32_t time = 1;

    /* Call driver init functions */
    GPIO_init();
    // I2C_init();
    // SPI_init();
    // Watchdog_init();

    while (1)
    {
        sleep(time);
    }
}

电流值是使用以下电路测得的。

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

    你好、Tsuchiya、

    感谢您的联系。

    请通过以下问题帮助我更好地了解情况:

    1. 您配置了哪些 GPIO?
    2. 除了您提到的内容外、您对空项目进行了其他修改吗?

    根据大家的分享、我假设这里发生的情况是 MCU 将唤醒很短的一段时间、然后恢复到睡眠模式1秒。

    Br、

    大卫。

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

    你好、David。

    我会回答您的问题。

    粘贴下面的 GPIO 设置。

    /*
     *  ======== gpioPinConfigs ========
     *  Array of Pin configurations
     */
    GPIO_PinConfig gpioPinConfigs[26] = {
        GPIO_CFG_NO_DIR, /* DIO_0 */
        GPIO_CFG_NO_DIR, /* DIO_1 */
        GPIO_CFG_NO_DIR, /* DIO_2 */
        GPIO_CFG_NO_DIR, /* DIO_3 */
        GPIO_CFG_NO_DIR, /* DIO_4 */
        GPIO_CFG_NO_DIR, /* DIO_5 */
        GPIO_CFG_NO_DIR, /* DIO_6 */
        GPIO_CFG_NO_DIR, /* DIO_7 */
        GPIO_CFG_NO_DIR, /* DIO_8 */
        GPIO_CFG_NO_DIR, /* DIO_9 */
        GPIO_CFG_NO_DIR, /* DIO_10 */
        GPIO_CFG_NO_DIR, /* DIO_11 */
        GPIO_CFG_NO_DIR, /* DIO_12 */
        GPIO_CFG_NO_DIR, /* DIO_13 */
        GPIO_CFG_OUTPUT_INTERNAL | GPIO_CFG_OUT_STR_MED | GPIO_CFG_OUT_LOW, /* CONFIG_GPIO_LED_0 */
        GPIO_CFG_NO_DIR, /* DIO_15 */
        GPIO_CFG_NO_DIR, /* DIO_16 */
        GPIO_CFG_NO_DIR, /* DIO_17 */
        GPIO_CFG_NO_DIR, /* DIO_18 */
        GPIO_CFG_NO_DIR, /* DIO_19 */
        GPIO_CFG_NO_DIR, /* DIO_20 */
        GPIO_CFG_NO_DIR, /* DIO_21 */
        GPIO_CFG_NO_DIR, /* DIO_22 */
        GPIO_CFG_NO_DIR, /* DIO_23 */
        GPIO_CFG_NO_DIR, /* DIO_24 */
        GPIO_CFG_NO_DIR, /* DIO_25 */
    };
    
    /*
     *  ======== gpioCallbackFunctions ========
     *  Array of callback function pointers
     *  Change at runtime with GPIO_setCallback()
     */
    GPIO_CallbackFxn gpioCallbackFunctions[26];
    
    /*
     *  ======== gpioUserArgs ========
     *  Array of user argument pointers
     *  Change at runtime with GPIO_setUserArg()
     *  Get values with GPIO_getUserArg()
     */
    void* gpioUserArgs[26];
    
    const uint_least8_t CONFIG_GPIO_LED_0_CONST = CONFIG_GPIO_LED_0;
    
    /*
     *  ======== GPIO_config ========
     */
    const GPIO_Config GPIO_config = {
        .configs = (GPIO_PinConfig *)gpioPinConfigs,
        .callbacks = (GPIO_CallbackFxn *)gpioCallbackFunctions,
        .userArgs = gpioUserArgs,
        .intPriority = (~0)
    };

    2.没有,我没有。 未进行任何更改。

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

    我将睡眠时间更改为10秒、并记录了波形。

    除了睡眠时间外没有变化。

    可以确认、MCU 每10秒唤醒一次并且电流升高。

    不过、可以看到、即使在睡眠期间、电流也会上升约10 µA。

    我想改善这个小的电流上升。

    提前感谢您的合作。

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

    您好!

    如果可以、电流消耗中的尖峰使我想到再充电脉冲。 https://www.ti.com/lit/swra478的§2中对 CC26xx 器件进行了相同的说明

    此致、

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

    谢谢克莱门特。

    我对再充电脉冲有疑问。

    1.如何确定再充电脉冲的幅度?
    2.另外、再充电脉冲是否可以在10µA 附近?

    提前感谢。

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

    您好!

    再充电脉冲的幅度由硬件设计决定。 使用的电容器越大、存储的能量越多、再充电脉冲的电压越高。

    10uA 再充电脉冲听起来很低。

    此致、

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

    大家好。

    我需要查明该尖峰是否为再充电脉冲。

    是否可以使用任何方法来计算再充电脉冲值及其频率的幅度?

    我正在测量的器件是 LP-EM-CC2340R5、未将任何器件连接到 LP-EM-CC2340R5。

    提前感谢。

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

    你好、Tsuchiya、

    我已经用同样的项目和代码修改在末端运行了一个快速测试。 我使用了 EnergyTrace。 这是我的结果。

    根据定义、每1秒唤醒一次(红色正方形)。 其余事件为"再充电脉冲"。 您可以看到它们可以在很短的时间内高于5 mA。 仅供参考、此电流消耗也计入了待机电流的一部分(平均< 700nA)。

    我不确定您的测量设置是否可以在这里执行某些操作。 您能否使用 Energy Trace 并报告您的结果?

    Br、

    大卫。

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

    你好、David。

    感谢您的配合。

    获取 Energytrace 的波形。

    我正在内部创建的电路板上开发该产品。

    我在电路板上观察到与上述类似的尖峰、需要确定该尖峰是否由再充电脉冲导致。

    因此、我认为如果我可以计算再充电脉冲的幅度和周期、我就可以识别它们。

    因此、我想知道如何以 LP-EM-CC2340R5为例计算再充电脉冲的幅度和周期。

    提前感谢。

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

    你好、Tsuchiya、

    我懂了。 根据我的理解、此问题没有固定答案。 器件将在需要时充电。 例如、如果器件在待机期间具有更多的泄漏电流(IO 配置等导致的泄漏电流)、则它将更频繁地重新充电。 您可以 在此处看到该问题的答案

    您能再多讲一讲您为什么需要识别再充电脉冲吗? 您看到的脉冲(小于10uA)看起来不是再充电脉冲。 您是否了解 EnergyTrace?

    Br、

    大卫。