【问题标题】:Would using an oscillating LED light save power?使用振荡 LED 灯会省电吗?
【发布时间】:2013-04-11 09:27:36
【问题描述】:

如果我的应用程序不只是打开 LED 灯,而是让它像下图所示那样快速闪烁,或者只是保持打开状态,那么我的应用会节省电池吗?

pon.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
poff.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);

while(lightShouldBeOn) {
        try{
                cam.setParameters(pon);
                Thread.sleep(delay);
                cam.setParameters(poff);
                Thread.sleep(delayoff);
        }
}

【问题讨论】:

  • 一个 LED 的功耗肯定比一个旋转线程的功耗要低得多!话虽如此,找出答案的最好方法就是尝试一下。使用这两种技术从完全充电到某个定义的百分比运行,看看哪个需要更长的时间。
  • @Simon:Thread.sleep 应该是省电的。
  • @BenVoigt,但如果是用于手电筒应用程序,则睡眠时间必须非常短 - 我希望它在 setParameters 中花费的时间会比在 sleep 中花费更多的时间...
  • 用户级别的 Android 应用程序不是实时的,所以祝你好运,因为它具有现实 PWM 所需的快速时序。在硬件层面过早的优化。

标签: android performance


【解决方案1】:

脉冲波调制是一种众所周知的 LED 功率控制技术,以及其他设备。另外一个好处是,功率和强度与占空比高度呈线性关系。

通常处理器中会有一个 PWM 外设为您处理快速切换,但这需要驱动程序支持;用户应用程序将无法访问它。这是一个使用驱动程序执行的问题:Set brightness of flash in Android

但这并不是真正的软件问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-30
    • 1970-01-01
    • 2017-04-29
    • 1970-01-01
    • 2019-11-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多