[应用相关] Stop 模式

[复制链接]
1561|16
 楼主| sj8zw8 发表于 2024-11-21 06:15 | 显示全部楼层 |阅读模式
特点:
Stop 模式比 Sleep 模式更省电。在 Stop 模式下,CPU 和系统时钟停止,所有时钟源除部分低功耗时钟都被关闭。
系统将进入 超低功耗 状态,只保留部分外设的操作能力,例如外部中断、IWDG独立看门狗等。
进入 Stop 模式:
可以通过 HAL_PWR_EnterSTOPMode() 函数进入 Stop 模式。
在进入 Stop 模式前,用户需要根据需要配置时钟源和外设。通常,Stop 模式下推荐使用 LSE或 LSI 来保持 RTC等外设的运行。
特点与应用:
在 Stop 模式下,CPU 完全关闭,仅保留最少的外设运行。
Stop 模式适合于要求极低功耗的应用,如 电池供电的传感器节点,或系统待机的场景。
示例代码:
c
复制代码
/* 进入 Stop 模式 */
HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI);

tpgf 发表于 2024-12-2 11:40 | 显示全部楼层
在进入Stop模式之前,需要执行一系列操作以减少功耗。这些操作包括关闭已打开的外设(如调试烧录口)、将所有GPIO设置为模拟输入、关闭所有GPIO时钟、开启GPIO中断(如果需要GPIO中断唤醒)以及进入Stop模式
观海 发表于 2024-12-2 12:50 | 显示全部楼层
可以通过将设备接在稳压源或专门的功耗测试设备上,对比正常工作下的电流和睡眠模式下的电流大小来验证Stop模式的功能
磨砂 发表于 2024-12-2 18:40 | 显示全部楼层
实现Stop模式的关键代码可能涉及多个步骤,包括关闭外设时钟、配置GPIO为模拟输入、禁用PVD(电源电压检测器)、降低核心工作电压等
晓伍 发表于 2024-12-2 19:59 | 显示全部楼层
Stop模式又分为STOP0、STOP1和STOP2三种模式,其中STOP2模式下普通串口无法唤醒CPU
八层楼 发表于 2024-12-2 21:07 | 显示全部楼层
在进入Stop模式之前,需要确保所有必要的外设都已正确配置和关闭,以避免不必要的功耗
guanjiaer 发表于 2024-12-2 22:54 | 显示全部楼层
ST单片机的Stop模式是一种有效的低功耗解决方案,适用于需要延长电池寿命的应用
公羊子丹 发表于 2025-3-15 07:49 | 显示全部楼层
Stop 模式确实比 Sleep 更省电,但唤醒时间会比 Sleep 稍长,你有测过实际的功耗和唤醒时间吗?
周半梅 发表于 2025-3-15 07:50 | 显示全部楼层
你是用什么方式唤醒的?外部中断(EXTI)还是 RTC 唤醒?不同的唤醒方式影响功耗。
Wordsworth 发表于 2025-3-15 07:52 | 显示全部楼层
如果你的系统需要从 Stop 模式恢复后继续运行外设,比如 UART,进入前需要提前配置好唤醒后的时钟恢复。
Bblythe 发表于 2025-3-15 07:53 | 显示全部楼层
你有没有遇到 Stop 模式唤醒后系统不稳定的问题?有时候需要手动重新配置时钟,确保外设正常恢复。
Pulitzer 发表于 2025-3-15 07:54 | 显示全部楼层
除了 HAL_PWR_EnterSTOPMode(),你有尝试过 HAL_PWREx_EnterSTOP2Mode() 吗?STOP2 模式能进一步降低功耗。
帛灿灿 发表于 2025-3-15 07:55 | 显示全部楼层
进入 Stop 模式后,外设的时钟基本都停了,你要注意哪些外设还需要保持运行,比如 UART、RTC 之类的。
Uriah 发表于 2025-3-15 07:56 | 显示全部楼层
如果使用 FreeRTOS,在 Stop 模式下要特别注意任务调度,避免影响低功耗效果。
Clyde011 发表于 2025-3-15 07:58 | 显示全部楼层
你在 Stop 模式下有没有测过 IWDG(独立看门狗)的运行情况?有时候会影响功耗优化。
童雨竹 发表于 2025-3-15 07:59 | 显示全部楼层
进入 Stop 模式前,最好先关闭不必要的外设,不然有些外设可能会导致功耗比预期的高。
万图 发表于 2025-3-15 08:00 | 显示全部楼层
你在 Stop 模式下用的是 LSE 还是 LSI?LSE 更稳定但启动时间长,LSI 启动快但精度较低。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

52

主题

409

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部