Thinkpad X1 Carbon (2021)睡眠模式修改,关闭Modern Standby模式,解决笔记本电脑睡眠异常唤醒耗电的问题

1.Modern Standby睡眠模式介绍

部分Windows 10系统机台 搭载的Modern Standby功能能让电脑和智能手机一样待机,进入"S0 low power idle model"的睡眠状态。此时,机台依旧在联网,除了音乐播放、提醒和通知等应用,大部分应用程序处于暂停的状态,只需轻按任意键即可登录电脑并进入工作状态。但是这种模式在多数情况下会导致笔记本电脑无法设置各类电源设置,导致在合上盖子之后鼠标或者键盘稍微操作一下,电脑就会从睡眠中唤醒,甚至在电脑包中放置时,仍旧在工作,导致电池发热、电量下降等问题,严重时影像电池和笔记本电脑的使用寿命。

2.ThinkPad X1 Carbon(2021)关闭Modern Standby

偶然阅读到一个帖子对于联想的Thinkpad机型的睡眠模式介绍:Thinkpad恢复传统睡眠。Modern Standby(现代待机)其目的,是为了能够从熄屏状态下迅速唤醒,就跟手机的熄屏唤醒一样。电脑里的现代待机,除了显示屏不供电外,其余部件均供电,所以这才造成了,唤醒之后耗电极高。任何一个新技术都是有代价的,如果选择了迅速唤醒,那么必然要以耗电为代价作为交换条件。以2021款的ThinkPad X1 Carbon为例,关闭Modern Standby模式后可以进行各类电源的设置,从而防止在不知情的情况下导致电脑从睡眠中异常唤醒。本教程也只在2021款机型中做过实验,其他机型参考机型相关教程修改。
ThinkPad对于Modern Standby新待机技术,以及传统S3睡眠模式的人群,特地在BIOS中提供了一个选项,能够在Modern Standby和传统S3模式无缝切换:
在这里插入图片描述
默认选项是“Windows 10”,代表Modern Standby,另外一个选项是“Linux”,代表传统S3
当切换到传统S3模式后,可以看到在电源高级选项中 重新恢复了过去我们常见的这些控制选项:
在这里插入图片描述

3.后续设置

后续可根据需要参考如下教程进行设置:
(1)关闭睡眠时USB供电,防止无线鼠标异常唤醒:关闭USB供电
(2)关闭可能会自动唤醒的设备:关闭唤起设备
通过以上设置亲测可实现大幅的续航增加,解决笔记本电脑睡眠异常唤醒的问题。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 要进入睡眠模式,可以调用hal库中的相关函数。首先,需要通过hal库的初始化函数将硬件初始化,并设置好相关的参数。接下来,使用hal库提供的睡眠模式设置函数,比如`hal_sleep_mode_set()`函数,将睡眠模式设置为所需的模式。 在设置睡眠模式之前,需要确保系统中所有的任务和进程完成并关闭,将所有需要保存的数据保存到持久存储器中。然后,调用`hal_sleep_mode_set()`函数,将所需的睡眠模式作为参数传入,比如`HAL_SLEEP_MODE_STANDBY`表示待机模式。 接下来,可以调用hal库提供的函数来进入睡眠模式。比如,使用`hal_enter_sleep_mode()`函数来将系统进入睡眠模式。在进入睡眠模式之前,可以做一些必要的准备工作,比如关闭无关的外设、降低系统时钟频率等。 进入睡眠模式后,系统会停止执行,并且处于低功耗状态,直到外部触发了唤醒事件,比如按下一个特定的按键或通过定时器触发等。一旦唤醒事件发生,hal库会相应地处理唤醒事件,并开启系统,从而使各个任务和进程继续运行。 总之,要进入睡眠模式,可以使用hal库提供的相关函数来设置和进入睡眠模式,具体的步骤包括初始化hal库、设置睡眠模式关闭外设并降低功耗、进入睡眠模式等。 ### 回答2: 在HAL库中,可以使用以下步骤进入睡眠模式: 1. 首先,需要在代码中包含HAL库的头文件,通常是通过添加`#include <hal.h>`来实现。 2. 然后,通过调用`hal_core_pm_sleep()`函数进入睡眠模式。该函数需要传入一个参数,指定睡眠模式的类型。睡眠模式的类型通常有几种选项,比如低功耗睡眠模式、深度睡眠模式等。可以根据具体需求选择适当的睡眠模式。 3. 然后,程序将进入睡眠模式,并且代码将会在此处暂停执行,直到发生某些事件,例如外部中断或定时器触发,才会唤醒系统并继续执行。 需要注意的是,在进入睡眠模式之前,可能需要进行一些设置以确保系统在睡眠期间能够正确地工作。例如,需要禁止一些模块或外设,以减少功耗。需要根据具体的硬件和需求来进行这些设置。 此外,为了正确地进入睡眠模式唤醒系统,可能还需要进行一些中断和时钟的配置。这些配置将根据具体的平台和芯片而有所不同。 总而言之,使用HAL库进入睡眠模式需要包含相关头文件、调用`hal_core_pm_sleep()`函数并传入适当的睡眠模式参数,同时进行必要的系统设置和配置。 ### 回答3: 在HAL库中,要进入睡眠模式,可以使用以下步骤: 1. 引入头文件:首先,在代码中引入对应的HAL库头文件,常用的是"stm32f4xx_hal.h"。 2. 配置系统时钟:在进入睡眠模式之前,需要确保系统时钟已经配置正确。通常使用HAL库提供的函数“SystemClock_Config”来配置系统时钟。 3. 配置睡眠模式:使用HAL库提供的函数来配置所需的睡眠模式。通过调用“HAL_PWR_EnterSleepMode”函数即可进入睡眠模式。 4. 睡眠模式中的唤醒源:在进入睡眠模式之前,可以配置睡眠唤醒源。可以使用函数“HAL_PWR_EnableWakeUpPin”来配置唤醒源。例如,可以配置某个外部引脚作为唤醒源,并通过中断触发唤醒。 5. 唤醒:在进入睡眠模式之后,通过唤醒源的触发或其他方式,可以唤醒系统。一旦唤醒,系统将继续执行后续的代码。 需要注意的是,在进入睡眠模式之前,应该确保保存了必要的数据或状态,以确保在唤醒后能够正确恢复系统。同时,可以根据需要配置其他的睡眠模式,如低功耗模式或停机模式等。 总而言之,使用HAL库进入睡眠模式的步骤包括:引入头文件、配置系统时钟、配置睡眠模式、配置唤醒源和唤醒。以上是一个基本的示例,具体的操作和函数调用可能会因具体的微控制器型号而有所差异,请根据相关的数据手册和HAL库文档进行具体的配置和实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

驯龙高手_追风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值