我想知道是否可以使用通过 HDMI 连接的计算机来打开/关闭显示器。让我解释一下:
我希望我的电脑在 15 分钟以上不使用(无键盘/鼠标输入)时关闭显示器(非待机模式),并在收到此类输入时恢复供电。我的显示器通过 HDMI 连接,所以我想知道是否可以将 CEC 功能与电脑一起使用。如果可以,那么是否有硬件要求?
我的观点是,我经常离开电脑休息一下,但忘记关闭屏幕,我宁愿完全关闭屏幕,而不是让它们进入待机模式
多谢
答案1
我希望当我超过 15 分钟不使用计算机(没有键盘/鼠标输入)时,计算机关闭显示器(不是待机模式),并在收到此类输入时重新启动。
你想要的正是你想要避免的。
如果显示器实际上完全关闭,则无法通过视频电缆上的信号重新打开。要使其像这样打开,需要某种显示器中的电路保持开启并处于活动状态以监视信号。显示器本身就有这样的电路,但关闭显示器也会关闭该电路。
要使用该电路,您需要在显示器中留一些电,这正是待机功能的作用:它关闭显示器(以及扬声器和其他所有东西),同时保持一个小电路处于活动状态。
对于大多数现代显示器而言,除了电路中的微小低压涓流和前面的 LED 之外,待机模式和完全关闭模式之间基本上没有区别。
我必须支付电费,因此我们总是尽可能地避免使用电,但是,当我使用电脑并需要离开一会儿时,我会将电脑置于待机状态(当我一天的工作完成后,我会将两者都关闭)。
不要让显示器无缘无故地开着 15 分钟,最好效仿我的做法,养成起身离开时关闭显示器的习惯,或者手动将其置于待机模式。我的做法是使用自动热键 脚本下面的命令(如果需要,可以编译为在后台运行的可执行文件)让我每次起床时按⊞ Win+即可让显示器进入睡眠状态。其他选项包括使用M捷径或者程序, 用一个脚本或者程序使用鼠标光标热角来完成此操作,甚至只是将超时时间从 15 分钟减少到 5 分钟左右。
;Monitor Standby Hotkey
;⊞ Win + M puts monitor in standby
#m::
Sleep 1000 ; Pause for 1sec to prevent un-sleeping when key released
SendMessage, 0x112, 0xF170, 2,, Program Manager
; 0x112 is WM_SYSCOMMAND, 0xF170 is SC_MONITORPOWER
; Use 1 in place of 2 to activate the monitor's low-power mode
; Use -1 in place of 2 to turn the monitor on
return
答案2
这HDMI-CEC 规范允许 HDMI 连接的设备作为任何其他连接的 CEC 启用设备的有限遥控器,定义命令System Standby
这将允许“遥控器”将目标切换到待机模式。
据我所知,这是最接近您所想的。它要求目标 HDMI 设备(您的显示器)连接 CEC(这是强制性的根据规格,确实如此)并且设备总体上实现了 CEC,并且具体实现了该命令(这完全是可选的,并且目前还不是很常见)。您的显示器不太可能实现 CEC,但可以从手册或已发布的规范中确认,或者可能更简单地通过 HDMI 连接发送 CEC 命令的设备并查看您的显示器是否响应来进行测试。
答案3
是的,但你不应该。我认为 Synetech 总结得很好,但如果你必须:
具体如何取决于屏幕,但如果它有一个红外接收器,您可以将红外线发射器连接到您的电脑以发出关闭信号(尽管正如 Synetech 指出的那样,如果红外线工作,仍然会消耗电力)。
或者,您可以使用 Arduino 或类似设备来真正关闭显示器的电源。这需要一些工作和一些 DIY 技能 - 但这肯定是可能的。
答案4
让我在 Linux 的背景下回答这个问题。我是dd工具用于控制监视器设置的 Linux 命令行实用程序。
答案是......视情况而定。
任何最新的显示器都会实现显示器控制命令集 (MCCS) 的某个子集,该子集指定了一组虚拟控制面板 (VCP) 功能。功能。此命令集几乎总是使用 DDC/CI 协议通过 I2C 总线进行通信。VCP 功能 xd6(电源模式)定义了一个参数 x05 来关闭显示器。因此,如果您的显示器实现了功能 xd6,并且如果它接受 x05 作为参数,则可以关闭显示器。大多数情况下这是可能的。
再次打开又是另一回事。关闭后,我的 HP2475 可以通过使用其他 x60 参数之一重新打开,但我的 Dell U3011 完全没有反应。
假设您只有一个显示器,以下 ddcutil 命令与打开或关闭显示器有关:
# Show the monitor's declared capabilities.
# But be warned, his is often out of sync with the actual capabilities
ddcutil capabilities
# Show documentation for VCP feature xd6.
# This is no guarantee that feature xd6 is implemented for a
# particular monitor, or that each of the arguments is implemented:
ddcutil vcpinfo d6 --verbose
# Turn of the monitor (assuming everything is implemented)
ddcutil setvcp d6 5
# This typically would turn the monitor back on, but that assumes that
# the monitor is responsive and that argument 1 (DPN On, DPMS Off) is
# implemented
ddcutil setvcp d6 1