在之前的测试中,模块进入休眠后一直有15uA左右的电流,拆掉FLASH,电流变为7uA,可见外挂FLASH消耗了约8uA电流,这个在一些超低功耗的场合还是偏大,查看了手册,FLASH应该是处于Standby mode,必须让FLASH进入power-down mode才行。
在SDK5.0.3中,flash的操作函数已经打包在spi_flash.c中,只要调用相应的函数即可:
可见,在所有的FLASH操作完毕后,调用spi_flash_power_down函数就可以直接让FLASH进入低功耗模式。
这里以SDK5.0.3中prox_reporter项目为例(位置5.0.3\projects\target_apps\ble_examples\prox_reporter\Keil_4):
为了保证SDK的统一性,我们加代码的原则是尽量在user区域加,所以,我们找到以下位置:
在函数的最后加入函数spi_flash_enable和spi_flash_power_down:
当然,别忘记在文件顶部加入#include “spi_flash.h”:
好了,此时编译并download程序到FLASH中,测试后得到7uA最低电流,可见FALSH已进入power-down模式。
更多信息请微信关注: