最近使用nrf52832做一个beacon,使用的是SDK是nrf5 12.3.0的版本。但是将固件下载进去后测试电流是480多uA,才想起开启了nrf_log 。..。 啥的,所以先关闭nRF_Log。
具体操作如下所示:
1 。 打开sdk_config.h文件,然后再编辑栏中选中configuration Wizard的选项。关闭log功能。结果如下所示:
2 。 另外需要打开 POWER_CONFIG_DEFAULT_DCDCEN 功能。
然后在主程序中加入以下代码
NRF_POWER-》DCDCEN = 1;
可以不注释 以下两句语句
err_code = NRF_LOG_INIT(NULL);
APP_ERROR_CHECK(err_code);
编译发现会报错,说关于 powerxxxx的函数未定义。
。_buildnrf52832_xxaa.axf: Error: L6218E: Undefined symbol nrf_drv_power_init_check (referred from nrf_drv_common.o)。
。_buildnrf52832_xxaa.axf: Error: L6218E: Undefined symbol nrf_drv_power_onIRQ (referred from nrf_drv_common.o)。
原来是没有加入原始的 xxx_power.c 文件。所以添加 nrf_drv_power.c文件到工程。编译通过,再次测试电流居然下降到了几微安。