在使用TI15.4stack中的collector和sensor的例程时,需要将sensor的功耗降低到3ua(与pinStandby例程的功耗相同)。这是就需要在休眠的时候将不用的外设关闭。
但是我在关闭外设这个地方遇到了些问题:
1.例如想要关闭Uart、spi等外设,调用他们对应的close函数,不成功。例如SPI_close();
如果要成功的关闭外设,需要的操作流程是什么?
2.要sensor醒来发送数据时,我有要调用什么函数,能确保需要的外设能够起来?
lin shi chang:
有人帮忙回答一下问题吗?
lin shi chang:
昨天试验单例程,调用了uart_close,发现rx仍然为高电平,不知道是否确实关闭了。我把它用在了sensor上发现功耗没有下降,这是没有真正的关闭掉吗?
正确的关闭流程应该是怎么样的?
Alvin Chen:
回复 lin shi chang:
uart_close 关闭后即可,当重新唤醒后需要再次uart_open。你的定时器任务也需要关闭,用中断去唤醒。
lin shi chang:
回复 Alvin Chen:
刚刚我在sensor.opts中将-DBOARD_DISPLAY_USE_UART —–> -DxBOARD_DISPLAY_USE_UART功耗直接下降到了9ua。
sensor就直接不用uart这个功能了。
还有一个问题:如果要关闭其他的外设,例如按键、灯也需要到相关的定时器任务中关闭?