玩nrf52840 system off有感

在这里插入图片描述
大概意思就是要从System OFF模式退出一般用五种方法:DETECT信号的gpio外设,LPCOMP,NFC,USB,重置;
从system off模式退出会重启系统;
进入System OFF前一定要停掉EasyDMA!!!(很重要),把外设都停掉;
RAM[n].POWER寄存器设置可以保留RAM内容。

本人只用了gpio外设,基本步骤:
1.进入System OFF前停掉所有外设
2.进入System OFF前利用nrf_gpio_cfg_sense_input函数将pin设置为DETECT信号,参数分别为引脚号、上拉下拉配置、触发唤醒电平(很重要);
3.NRF_POWER->SYSTEMOFF = 0x1;寄存器配置进入深度睡眠,本人直接用的sdk的system_off();
4.等待配置的引脚唤醒重启系统

ps:自己的工程本来新建了一个线程用来检测信号判断进入哪种状态,但是仿真的时候进入低功耗模式后就不能再进线程,原因尚不明,放到主循环后正常。

猜你喜欢

转载自blog.csdn.net/zhp667788/article/details/103717841
今日推荐