五、杰里AD14————电源模块的复位源和唤醒源
文档背景:在AD14的SDK当中,(关机按键设置在按下时刻状态)如果我们把软关机按钮的IO控制口和唤醒口设置在同一个引脚上。当我们进入软关机后,使用唤醒口所在按键进行唤醒时,按键状态会再次影响到软关机。
这里的MSG_USER_KEY_01消息即代表MSG_POWER_OFF
产生原因:当我们使用唤醒源将程序唤醒时,程序进行初始化后再次进入按键循环扫描状态。
检测到了唤醒口对应按键状态的变化。从而立即执行对应按键的信息。
解决方法:利用唤醒源和复位源做相应的状态判断。
一.杰里AD14的唤醒源和复位源是什么?
1.复位源: u8 power_reset_source_dump(void)
此接口获取得到复位源以十六进制数表示,十六进制换成二进制数后可根据第几位置1对比上面链接所示信息以得到相应的复位源,继而可以对复位源进行判断从而进行下一步操作。
注:若获取复位源为0x30(即0b00110000),则表示此情况是进入低功耗后IO口唤醒的状态。
2.唤醒源: int power_wakeup_reason(void)
此接口获取得到自定义的唤醒IO口对应的唤醒源,返回值对应wakeup_param中所设置的port唤醒端口。可对唤醒源作进一步的判断从而进行下一步操作。
二.开关机时的唤醒源和复位源分别是什么
1.首先在music模式初始化函数中添加打印唤醒源和复位源的语句:
一.杰里AD14的唤醒源和复位源是什么?
1.复位源: u8 power_reset_source_dump(void)
此接口获取得到复位源以十六进制数表示,十六进制换成二进制数后可根据第几位置1对比上面链接所示信息以得到相应的复位源,继而可以对复位源进行判断从而进行下一步操作。
注:若获取复位源为0x30(即0b00110000),则表示此情况是进入低功耗后IO口唤醒的状态。
2.唤醒源: int power_wakeup_reason(void)
此接口获取得到自定义的唤醒IO口对应的唤醒源,返回值对应wakeup_param中所设置的port唤醒端口。可对唤醒源作进一步的判断从而进行下一步操作。
二.开关机时的唤醒源和复位源分别是什么
1.首先在music模式初始化函数中添加打印唤醒源和复位源的语句:
本文来自博客园,作者:种星记,转载请注明原文链接:https://www.cnblogs.com/zhongxingji/p/17697222.html