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.

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

Other Parts Discussed in Thread: CC2640, BLE-STACK

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自动调用的吗?