打印
[STM32C0]

如何从standby或者shutdown中唤醒

[复制链接]
1224|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lulugl|  楼主 | 2023-4-5 20:50 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 lulugl 于 2023-4-6 06:40 编辑

在文档 RM0490  Reference manual 《STM32C0x1 advanced Arm®-based 32-bit MCUs》手册中22.5中手册描述RTC 中断是不能唤醒 standby或者shutdown的:
早上又阅读了文档UM3029《 Description of STM32C0 HAL and low-layer drivers》其中第274页有说明:
Standby mode
• Entry:
– The Standby mode is entered through HAL_PWR_EnterSTANDBYMode() API, by setting SLEEPDEEP
in Cortex control register.
• Exit:
– WKUP pin edge detection, RTC event (alarm, timestamp), LSE CSS detection, reset on NRST pin,
IWDG reset & BOR reset.
Exiting Standby generates a power reset: Cortex is reset and execute Reset handler vector, all registers in the
Vcore domain are set to their reset value. Registers outside the VCORE domain (RTC, WKUP, IWDG, and
Standby/Shutdown modes control) are not impacted.
Shutdown mode
In Shutdown mode, voltage regulator is disabled, all clocks are off except LSE, RRS bit is cleared. SRAM and
registers contents are lost except for backup domain registers.
• Entry:
– The Shutdown mode is entered through HAL_PWREx_EnterSHUTDOWNMode() API, by setting
SLEEPDEEP in Cortex control register.
• Exit:
– WKUP pin edge detection, RTC event (alarm, timestamp), LSE CSS detection, reset on NRST pin.
Exiting Shutdown generates a brown out reset: Cortex is reset and execute Reset handler vector, all registers are
set to their reset value but ones in backup domain.
两个模式都注明了RTC event是可以退出的。是不是两个文档有冲突呀。

使用特权

评论回复
沙发
MessageRing| | 2023-4-5 22:29 | 只看该作者
只知道用外部中断唤醒

使用特权

评论回复
板凳
lulugl|  楼主 | 2023-4-5 22:59 | 只看该作者
MessageRing 发表于 2023-4-5 22:29
只知道用外部中断唤醒

用RTC可以自唤醒,可是功耗降不下来。

使用特权

评论回复
地板
forgot| | 2023-4-6 10:49 | 只看该作者
待机模式唤醒只有4种:外部复位、IWDG复位、WKUP引脚上的上升沿或RTC闹钟事件的上升沿。

---------------------

作者:forgot

链接:https://bbs.21ic.com/icview-3282280-1-1.html

来源:21ic.com

此文章已获得原创/原创奖标签,著作权归21ic所有,任何人未经允许禁止转载。

使用特权

评论回复
5
forgot| | 2023-4-6 10:50 | 只看该作者
楼主可以参考一下,不过是F系列的,RTC是可以唤醒的,我实际用过的

使用特权

评论回复
6
lulugl|  楼主 | 2023-4-6 14:03 | 只看该作者
forgot 发表于 2023-4-6 10:49
待机模式唤醒只有4种:外部复位、IWDG复位、WKUP引脚上的上升沿或RTC闹钟事件的上升沿。

---------------- ...

非常感谢,我试试看看。

使用特权

评论回复
7
lulugl|  楼主 | 2023-4-6 14:04 | 只看该作者
forgot 发表于 2023-4-6 10:50
楼主可以参考一下,不过是F系列的,RTC是可以唤醒的,我实际用过的

我看了两个文档,描述各不相同。

使用特权

评论回复
8
Dick Hou| | 2023-4-6 15:16 | 只看该作者
肯定以手册为准,手册没有错,分析一下就知道原因了。

C0的RTC根本不在VBAT区域,它没有VBAT,是和内部CORE电压一样,STANDBY/SHUTOFF模式内部LDO都关了,哪还有RTC?

使用特权

评论回复
9
Dick Hou| | 2023-4-6 15:17 | 只看该作者
forgot 发表于 2023-4-6 10:50
楼主可以参考一下,不过是F系列的,RTC是可以唤醒的,我实际用过的

想当然了。

使用特权

评论回复
10
xch| | 2023-4-6 15:33 | 只看该作者
没冲突。ST 的 STM32C 系列没出齐。 有支持低功耗唤醒的mcu ,快出来了。

使用特权

评论回复
11
lulugl|  楼主 | 2023-4-6 15:56 | 只看该作者
Dick Hou 发表于 2023-4-6 15:16
肯定以手册为准,手册没有错,分析一下就知道原因了。

C0的RTC根本不在VBAT区域,它没有VBAT,是和内部COR ...

那就可以放弃从RTC唤醒了,看来还得从外部中断想办法。这没有RTC唤醒,有点小麻烦了。

使用特权

评论回复
12
xxrs| | 2023-7-4 20:29 | 只看该作者

只知道用外部中断唤醒

使用特权

评论回复
13
dengdc| | 2023-7-4 20:31 | 只看该作者
待机模式唤醒只有4种:外部复位、IWDG复位、WKUP引脚上的上升沿或RTC闹钟事件的上升沿。

使用特权

评论回复
14
heweibig| | 2023-7-4 20:33 | 只看该作者
楼主可以参考一下,不过是F系列的,RTC是可以唤醒的,我实际用过的

使用特权

评论回复
15
wuhany| | 2023-7-4 20:34 | 只看该作者
两个文档,描述各不相同。

使用特权

评论回复
16
huangchui| | 2023-7-4 20:36 | 只看该作者
肯定以手册为准,手册没有错,分析一下就知道原因了。

使用特权

评论回复
17
jiajs| | 2023-7-4 20:37 | 只看该作者
C0的RTC根本不在VBAT区域,它没有VBAT,是和内部CORE电压一样,STANDBY/SHUTOFF模式内部LDO都关了,哪还有RTC?

使用特权

评论回复
18
zhanghqi| | 2023-7-4 20:38 | 只看该作者
heweibig 发表于 2023-7-4 20:33
楼主可以参考一下,不过是F系列的,RTC是可以唤醒的,我实际用过的

想当然了。

使用特权

评论回复
19
zhenykun| | 2023-7-4 20:40 | 只看该作者
没冲突。ST 的 STM32C 系列没出齐。 有支持低功耗唤醒的mcu

使用特权

评论回复
20
AloneKaven| | 2023-7-5 19:41 | 只看该作者
RTC应该是可以唤醒的

使用特权

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

本版积分规则

156

主题

744

帖子

10

粉丝