五、杰里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模式初始化函数中添加打印唤醒源和复位源的语句:

 

posted @ 2023-08-14 16:07  种星记  阅读(91)  评论(0编辑  收藏  举报  来源