打印

gd32的深度休眠唤醒

[复制链接]
859|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
stering|  楼主 | 2023-9-11 09:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在调试gd32e230Cx的休眠功能,遇到了代码卡死,无法唤醒的问题。百度到M3内核有休眠前开这systick中断会导致不能唤醒的问题。
请问一下:M23内核的gd32e230是否有同样的问题。

使用特权

评论回复
沙发
Addition| | 2023-9-11 10:34 | 只看该作者
进入的是那个省电模式?唤醒条件设置好了没?

使用特权

评论回复
板凳
stering|  楼主 | 2023-9-11 13:57 | 只看该作者
Addition 发表于 2023-9-11 10:34
进入的是那个省电模式?唤醒条件设置好了没?

进入的是深度休眠,pmu_to_deepsleepmode(PMU_LDO_LOWPOWER, WFI_CMD);使用gpio管脚外部中断唤醒。休眠时关闭看门狗。大部分时间可以唤醒,但是偶尔会出现卡死的情况。
三个外部中断都无法唤醒。
这几天修改了下代码,做测试demo,缩短休眠等待时间,然后休眠时打开看门狗,人为制造休眠,看门狗复位-休眠-看门狗复位的情况,卡死的概率一下提高了不少。原来等一两个礼拜才出现的卡死现象,现在可能十几个小时就会出现一次

使用特权

评论回复
地板
Addition| | 2023-9-11 17:15 | 只看该作者
stering 发表于 2023-9-11 13:57
进入的是深度休眠,pmu_to_deepsleepmode(PMU_LDO_LOWPOWER, WFI_CMD);使用gpio管脚外部中断唤醒。休眠时 ...

EXTI中断能触发就可以被唤醒

使用特权

评论回复
5
Addition| | 2023-9-11 17:19 | 只看该作者
stering 发表于 2023-9-11 13:57
进入的是深度休眠,pmu_to_deepsleepmode(PMU_LDO_LOWPOWER, WFI_CMD);使用gpio管脚外部中断唤醒。休眠时 ...

而且用户手册中写深度睡眠若通过WFI进入,来自EXTI的任何中断可唤醒;若通过WFE进入,来自EXTI的任何事件(或SEVONPEND=1时的中断)可唤醒

使用特权

评论回复
6
Addition| | 2023-9-11 17:19 | 只看该作者
stering 发表于 2023-9-11 13:57
进入的是深度休眠,pmu_to_deepsleepmode(PMU_LDO_LOWPOWER, WFI_CMD);使用gpio管脚外部中断唤醒。休眠时 ...

这个看门狗感觉有点多余

使用特权

评论回复
7
daichaodai| | 2023-9-11 20:23 | 只看该作者
是进入的哪个休眠模式?

使用特权

评论回复
8
stering|  楼主 | 2023-9-12 09:31 | 只看该作者
daichaodai 发表于 2023-9-11 20:23
是进入的哪个休眠模式?

中间的那个,深度休眠

使用特权

评论回复
9
stering|  楼主 | 2023-9-12 09:33 | 只看该作者
Addition 发表于 2023-9-11 17:19
这个看门狗感觉有点多余

测试用的,出现概率太低,拿人天天盯着休眠唤醒也不大现实,所以用看门狗唤醒做测试。因为感觉是休眠这块出了问题。现在是不确定问题出在哪里。唤醒肯定是没有问题的。单独测试的话,休眠唤醒都正常。但是一旦卡死的话,就什么也不响应了

使用特权

评论回复
10
Addition| | 2023-9-12 10:32 | 只看该作者
stering 发表于 2023-9-12 09:33
测试用的,出现概率太低,拿人天天盯着休眠唤醒也不大现实,所以用看门狗唤醒做测试。因为感觉是休眠这块 ...

看门狗不喂MCU会复位,复位之后再进入deepsleep模式,systick中断按理来说应该是不会影响deepsleep

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

127

主题

160

帖子

1

粉丝