1:参考hib demo,休眠时关掉了flash,但看见在关掉flash后,看到例程程序依然调用了MAP_apiname之类的接口,按照文档CC3200 SimpleLink™ Wi-Fi® and IoT Solution, a Single Chip Wireless MCU Programmer's Guide 63页6.2.2意思是:MAP_apiname之类的api是ROM APIs,现在flash已经关掉了,ROM APIs还能用吗?
2:我现在在休眠时调用了关闭hib例程里的关闭flash接口,但功耗不理想,有2-3mA,怀疑flash关闭不成功,但把片选 /CS拉高后功耗有明显改善,请问什么原因可能导致关闭flash关闭失败?
Terry Han:
如果进入Hibernate模式后,CC3200的功耗应该在uA级别,有实际的测试功耗下面会贴出来,关于Flash关闭失效的问题首先核对是否是CC3200支持的SPI 型号,再就是确认CC3200发送的关闭指令和对应的SPI Flash型号指令一致,最后确认硬件端口的上拉下拉电阻是否在低功耗模式下会出现耗电的现象。
实验室实际测试功耗记录(测试代码 idle_profile_nonos):
模式 条件 电流消耗 测试图 DatasheetM4 Active(80MHz)+NWP connect AP 1 15.9mA 图 1 15.3mAM4 LPDS+NWP start but do nothing 2 282uA 图 2 266uAM4 LPDS+NWP connect AP<1> 3 600uA~2mA(Avr=900uA) 图 3 图 4 825uAM4 LPDS+NWP Hib<2> 4 229uA 图 5 120uAM4 Hib+NWP Hib 5 10.65uA 图 6 4uA
备注: M4 LPDS(RAM-Retained)/Hib(RAM-Not Retained) 唤醒: RTC+GPIO(UART 复用 GPIO)M4 Active+NWP connect AP =15.9mAM4 LPDS+NWP connect AP =600uA~2mA 波动 大约平均功耗为 1mA 左右M4 LPDS+NWP start but do nothing 即 sl_start 但不连接 AP =282uAM4 LPDS+NWP 进入 Hib 模式 229uA 注意此时网络已经断开,但是 RAM 还是保存的!M4 Hib+NWP 进入 Hib 模式 10.65uA(注意 Hib 模式下测试的电流消耗为 CC3200+SPI_Flash 的功耗,而 Datasheet 上 4uA 是不包括 SPI_Flash 的功耗)