cc2640 进入shutdown 模式后 用按键不能唤醒
如题,我关闭了设备的广播和定时器,之后进入shutdown模式,测得的电流的确很小,但是之后用按键唤醒的方式却不能唤醒mcu,哪位大神知道怎么弄不?
PS:选用的工程是keyfob
建议在线调试下 在按键的中断程序处设置断点看能否进入并执行。 另外能否请您贴出唤醒的程序?
一步一步排查了。首先看有没有中断产生,产生的中断对应的引脚对不对
还要有专门的唤醒程序?不是只要给出中断信号就信了吗? 刚接触,很多地方不懂,请大神耐心的给我说说吧,或者有什么参考的也行,谢谢。
你好!
我用如下方式设置IO唤醒,并进入shutdown模式,为什么唤醒不了?是需要进行其他的设置么?
IOCIOShutdownSet(IOID_4, IOC_WAKE_ON_HIGH);
Power_shutdown(NULL);
可以唤醒的。
按键的配置可以参考协议栈自带的board_key.c文件里的 void Board_initKeys(keysPressedCB_t appKeyCB); 函数,它都已经帮你写好了的,只是要注意,假如你是在测电流,请把电流档打到mA档后再执行按键唤醒操作,因为在唤醒的过程中电流会增大,如果万用表处于uA档位的时候,它是会限制流过的电流从而导致看起来不能唤醒2640.
void Board_initKeys(keysPressedCB_t appKeyCB)
{
// Initialize KEY pins. Enable int after callback registered
hKeyPins = PIN_open(&keyPins, keyPinsCfg);
PIN_registerIntCb(hKeyPins, Board_keyCallback);
PIN_setConfig(hKeyPins, PIN_BM_IRQ, Board_S1 | PIN_IRQ_NEGEDGE);
PIN_setConfig(hKeyPins, PIN_BM_IRQ, Board_S2 | PIN_IRQ_NEGEDGE);
PIN_setConfig(hKeyPins, PIN_BM_IRQ, Board_S3 | PIN_IRQ_NEGEDGE);
#ifdef POWER_SAVING //Enable wakeup
PIN_setConfig(hKeyPins, PINCC26XX_BM_WAKEUP, Board_S1 | PINCC26XX_WAKEUP_NEGEDGE);
PIN_setConfig(hKeyPins, PINCC26XX_BM_WAKEUP, Board_S2 | PINCC26XX_WAKEUP_NEGEDGE);
PIN_setConfig(hKeyPins, PINCC26XX_BM_WAKEUP, Board_S3 | PINCC26XX_WAKEUP_NEGEDGE);
#endif
// Setup keycallback for keys
Util_constructClock(&keyChangeClock, Board_keyChangeHandler,KEY_DEBOUNCE_TIMEOUT, 0, false, 0);
// Set the application callback
appKeyChangeHandler = appKeyCB;
}
hi ,可以帮我解决下发送数据的问题吗?http://www.deyisupport.com/question_answer/wireless_connectivity/bluetooth/f/103/t/104864.aspx
在debug设置中断断点发现进不去中断,是怎样才能确认是否从POWERSHUTDOWN唤醒?
没调用power_shutdown 之前,按键每次都能进入中断的,
配置与上面的code差不多,都打开了中断(按键中断和唤醒中断),确认有配置