TI中文支持网
TI专业的中文技术问题搜集分享网站

cc2640 无32K晶体 低功耗电流太大的问题

TI  工程师:

硬件是自制的板子,最小系统,只有一个24M晶体,无32k晶体,芯片2640,软件版本BLE STACK 2.2.2和  IAR8.10,计划使用片内32K  RC,参考了TI的文档Running Bluetooth® low energy on CC2640 Without 32 kHz Crystal,进行了一系列设置,使用C:\ti\simplelink\ble_sdk_2_02_02_25\examples\cc2650em中的simple peripheral例程,编译设置了power saving,可是上电后功耗是1.6ma,请问是什么原因?

1. Include rcosc_calibration.c, rcosc_calibration.h and ccfg_app_ble_rcosc.c files that are located at
<SDK_INSTALL_DIR>\examples\rtos\CC2640R2_LAUNCHXL\ble\common\cc26xx\rcosc or
<SDK_INSTALL_DIR>\src\common\cc26xx\rcosc.
2. Exclude ccfg_app_ble.c from build.
3. Add USE_RCOSC to Defined symbols.
4. Add the following code to your peripheralproject.c
#ifdef USE_RCOSC
#include "rcosc_calibration.h"
#endif //USE_RCOSC
5. Add the following code to your peripheralproject_init function in peripheralproject.c
#ifdef USE_RCOSC
RCOSC_enableCalibration();
#endif // USE_RCOSC
Configuration www.ti.com
4 SWRA499B–June 2016–Revised April 2017
Submit Documentation Feedback
Copyright © 2016–2017, Texas Instruments Incorporated
Running Bluetooth® low energy on CC2640 Without 32 kHz Crystal
6. If using a custom board file, enable the RCOSC in the power policy. The board files included with the
BLE-Stack:
PowerCC26XX_Config PowerCC26XX_config = {
.policyInitFxn = NULL,
.policyFxn = &PowerCC26XX_standbyPolicy,
.calibrateFxn = &PowerCC26XX_calibrate,
.enablePolicy = TRUE,
.calibrateRCOSC_LF = TRUE,
.calibrateRCOSC_HF = TRUE,
}
7. Constrain the temperature variation to be less than 1°C/sec. If the temperature is to change faster than
1°C/sec, then a short calibration interval must be used. Calibration interval can be tuned in
rcosc_calibration.h
// 1000 ms
#define RCOSC_CALIBRATION_PERIOD 1000

其中第6项结构体 PowerCC26XX_config是RTOS自动调用的吗?

Viki Shi:

1、修改步骤需完全按照Running Bluetooth® low energy on CC2640 Without 32 kHz Crystal
2、功耗测量请按照手册所示www.ti.com/lit/an/swra478c/swra478c.pdf

Albin Zhang:

"可是上电后功耗是1.6ma"

HaoQ,

这个的测试方法是什么呢?

芯片没有一个特定状态是这个,应该是表现出来的一个平均电流。

你需要拆分一下的。

最好能测试具体的current profile。

BR. AZ

hao Q:

回复 Albin Zhang:

您好!测试方法是用万用表的ma档或者ua档位,串联在电源负极。状态是使用了 uint32_t standbyDurationUs = 4000000;
Task_sleep(standbyDurationUs / Clock_tickPeriod);进入了standby。谢谢解答!

hao Q:

回复 Viki Shi:

第一步 中ccfg_app_ble_rcosc.c这个文件是系统自己调用的吗?

YiKai Chen:

回复 hao Q:

量測功耗時有在發BLE advertising 嗎?

hao Q:

回复 YiKai Chen:

是的,广播间隔是4s

Albin Zhang:

回复 hao Q:

hao Q您好!测试方法是用万用表的ma档或者ua档位,串联在电源负极。状态是使用了 uint32_t standbyDurationUs = 4000000;Task_sleep(standbyDurationUs / Clock_tickPeriod);进入了standby。谢谢解答!

Butterfly:

连接间隔设置的多少?太小也会影响功耗

赞(0)
未经允许不得转载:TI中文支持网 » cc2640 无32K晶体 低功耗电流太大的问题
分享到: 更多 (0)