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:移除外部 LF XTAL 振荡器(32.768kHz)后、静态模式电流增加至2.11mA

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1243093/cc2640r2f-stanby-mode-current-increased-to-2-11-ma-after-removing-external-lf-xtal-oscillator-32-768-khz

器件型号:CC2640R2F
Thread 中讨论的其他器件:BLE-STACK

我正在使用简单广播设备、在移除外部低频振荡器之前、我的待机模式电流大约为2uA、但在移除低频振荡器之后、电流消耗2.11mA。 移除外部 LF 振荡器是否会影响待机电流? 如果愿意、如何在简单广播设备示例代码中启用内部 LF 振荡器而不是外部振荡器?

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

    Ankit、您好!

    请参阅  《BLE-Stack 用户指南》 和 SWRA499的使用32kHz 无晶体模式部分

    此致、
    瑞安

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

    您好、Ryan、  

    谢谢你的答复。 我有一个 querry ,如果我使用内部 LF 振荡器,这会增加我的待机电流消耗。

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

    与外部晶体振荡器(XOSCL_LF)相比、内部 LF 振荡器(RCOSC_LF)消耗的电流(~0.2微安)会稍高一些。  在 数据表中

    此致、
    瑞安

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

    您好、Ryan、

    我尝试了上述步骤、但仍具有约2.11mA 的待机电流。 我将使用的 SDK 为 Simplelinklink_cc2640r2_SDK_5_30_00_03。

    我的广播间隔为10秒、 RCOSC_CALIBRATION_PERIOD 为1秒

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

    Ankit、您好!

    我觉得您所做的代码修改是正确的。

    我建议探索两个导联:

    1) 1)器件可能无法进入待机状态并保持运行状态。

    2) 2)由于 LF 晶振的移除而出现电流泄漏。

    对于1)、我建议:

    -确认系统按预期工作(功耗除外)

    -确认符号"power_saving"仍在项目中定义

    -获取功耗跟踪并验证器件每1秒唤醒一次(在此期间电流消耗应增加~2.5 mA),并且每10秒打开无线电(在此期间电流消耗应增加~6.0 mA)。

    -验证复位并保持复位信号是否会导致功耗降至接近0mA。 然后、检查释放复位后的功耗

    对于2)、可以在仍装有 LF 晶振的电路板上运行相同的代码(即配置为不使用 LF 晶振运行的代码)。

    我希望这将有所帮助、

    此致、

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

    您好 Clemet:

    表示1)、

    -确认系统按预期工作(功耗除外)

    >>是的,设备按预期工作, 只增加了功耗。

    -确认符号"power_saving"仍在项目中定义

    >>是的。

    -获取功耗跟踪并验证器件每1秒唤醒一次(在此期间电流消耗应增加~2.5 mA),并且每10秒打开无线电(在此期间电流消耗应增加~6.0 mA)。

    功率分析仪的电源迹线如下所示

    a. RCOSC 校准(1秒)和广播(10秒)电流消耗整体视图

     

    B. RCOSC 校准期间的电流消耗:2.432mA

    C.广告期间的电流消耗:6.863mA

    D.待机平均电流:平均值:1.3796mA,最大值:1.57mA

    -验证复位并保持复位信号是否会导致功耗降至接近0mA。 然后、检查释放复位后的功耗

    >>是

    对于2)、可以在仍装有 LF 晶振的电路板上运行相同的代码(即配置为不使用 LF 晶振运行的代码)。

    >>当连接了外部晶体但运行的代码是修改后的 RCOSC_LF 代码时、电流消耗变为正常、即在待机模式下为1.2uA

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

    您是否正在使用 LAUNCHXL-CC2640R2F 或定制 PC 板?  如果不使用 LAUNCHXL-CC2640R2F、我建议评估此硬件、以确保您的软件更改正确无误。   您应该考虑到您的 XOSCL_LF 可能未正确启动或振荡。  您可以参考 SWRA640、监控晶体连接并考虑将您的设计提交到 SIMPLELINK-2-4GHz-design-reviews 以进行进一步审查。

    此致、
    瑞安

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

    您好、Ryan、

    是的、我使用的是自定义 PC 板、但我的 XOSC_LF 运行正常、待机电流消耗只有在我移除 XOSC_LF 并改用 RCOSC_LF 时才会增加。 当我使用 RCOSC_LF 时、我将  XOSCL_LF 引脚保持未连接状态、这是不是导致问题的原因。

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

    很抱歉给您带来困惑、感谢您澄清问题的状态。  您如何连接未使用的晶体引脚(悬空、接地等)?  我仍鼓励您评估已移除外部低功率晶体的 LAUNCHXL-CC2640R2F、并测试 pinStandy 示例。   

    此致、
    瑞安

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

    当前未使用的晶振引脚都是悬空的、是否应该接地? 根据您的建议、我将查看 LAUNCHXL-CC2640R2F 上的引脚待机示例。

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

    SWRA499的第3.1节: 在内部32kHz RC 振荡器(RCOSC_LF)上运行时无需特定的硬件配置。 32kHz 晶体引脚在不使用时将处于高阻态、并且可以安全地连接到任何逻辑电平或保持未连接状态。  

    此致、
    瑞安

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

    您好、Ryan、

    正如 u 建议的、我在 LAUNCHXL-CC2640R2版本:1.0上测试了引脚待机示例、首先我使用外部32kHz 晶体进行了测试电流消耗正如预期的那样低。 但当我移除外部32kHz 晶体电流再次变为高电平时。 我需要更改引脚待机示例以使用 RCOSC_LF 振荡器、还是默认在 RCOSC_LF 振荡器上运行。

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

    我建议您将 #define SET_CCFG_MODE_CONF_SCLK_LF_OPTION 0x3 // LF RCOSC 添加到 ccfg.c  

    #include <ti/devices/DeviceFamily.h>
    #define SET_CCFG_MODE_CONF_SCLK_LF_OPTION     0x3  // LF RCOSC
    #include DeviceFamily_constructPath(startup_files/ccfg.c)
     

    如果这不会通过内部低频振荡器实现低功耗运行、则这是 进一步研究硬件设计的额外证据。

    此致、
    瑞安

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

    感谢 Ryan 和 Clemet 的支持, Ryan 您的建议解决了我的问题,待机电流大幅降低。 只需再查询一下我们可以在 rcosc_calibration.h 文件中设置的最大 RCOSC_CALIBRATION_PERIOD 是多少? 目前我正在使用10000ms,但我可以保持它大约12小时或24小时,如果我保持这么长的校准间隔会有什么缺点

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

    SWRA499的第2.2节提供了约束条件:

    整个 CC13x2/CC26xx 温度范围都支持 RCOSC_LF 校准、但必须注意温度梯度。 为了保持在±500ppm 的睡眠精度要求范围内、每个校准间隔的最大温度变化不能高于1°C、默认校准间隔为1秒。 选择 RCOSC_LF 构建配置作为睡眠时钟源或根据软件配置部分修改工程时、将启用校准例程(对于不要求睡眠时钟精度的应用、可以手动禁用校准。 例如、信标应用使用的非连接的广播)。 然后、每当更精确的高频(24或48MHz)振荡器启动时、校准都将自动运行。 为保持±500ppm 的精度、假设温度变化不超过每秒1°C、校准必须至少每秒运行一次。 在有效低功耗蓝牙连接间隔大于1s (处于待机模式的时间大于1s)的应用中、必须安排至少每秒唤醒一次以执行 RCOSC_LF 校准。 类似地、如果应用处于活动状态的时间长于1s、则必须由应用触发校准。 使用第3.2节中的支持构建配置、BLE-Stack 软件将自动处理这些校准要求。

    此致、
    瑞安