第一次看TI的Hibernation,对于Hibernation这块控制有几个不明点,希望能帮忙解答下,现在思维很是混乱啊
1 HIB pin51 output脚,这个脚的High、Low是软件是如何控制的?通过调用LIB库中的哪个函数能够对其High Low操作
2 Hibernation模式,GPIO 中断是否还能够产生?
3 我们硬件目前给我MCU的唤醒是通过INTH中断产生的,进入Hibernation模式前,设置为HIBERNATE_WAKE_PIN方式唤醒,是否能进入唤醒模式?
step by step:
你好,
HIB管脚的状态是有Hibernation模块产生的,用来指示芯片是否处于休眠状态;
在进入Hibernation模式之后,只有Hibernation模块被供电,所以不能产生GPIO中断了
在设置为pin唤醒后,可以通过将wake管脚置低电平将MCU从Hibernation模式唤醒
xiaoli duan:
回复 step by step:
是不是做了HibernateRequest();进入Hibernation后,HIB管脚就为LOW的状态了
而从Hibernation模式唤醒后,HIB管脚就为HIGH,不需要控制具体的寄存器?
step by step:
回复 xiaoli duan:
是这样的
xiaoli duan:
回复 step by step:
如果不采用Hibernation,是否还有其他的方法让MCU进入休眠模式或者低功耗模式?
step by step:
回复 xiaoli duan:
你好,
还可以使用sleep或者deep sleep,具体资料可以参考datasheet的Entering Sleep Modes章节的描述。
Richard Ma:
回复 xiaoli duan:
在TivaWare中调用如下驱动程序可以进入睡眠或者深度睡眠模式
SysCtlSleep()
SysCtlDeepSleep()
不同模式的区别有个下面的总结: