【问题标题】:Accelerometer API for Laptops [closed]笔记本电脑的加速度计 API [关闭]
【发布时间】:2011-02-25 18:00:01
【问题描述】:

大多数 IBM(和一些戴尔)笔记本电脑都内置了加速度计,可以在突然跌倒时停止任何运动部件,但我无法找到一个标准化的 Windows API 来访问这些数据。我假设每个制造商都会提供与传感器接口的驱动程序。

  1. 哪些流行的笔记本电脑品牌标配有可通过 API 访问的加速度计,我应该使用哪些库来访问数据?
  2. 是否存在 API* 来抽象出不同制造商之间的差异?我知道 Windows 7 Sensor API,但我希望支持 XP 和更早版本。

【问题讨论】:

    标签: windows accelerometer


    【解决方案1】:

    如果笔记本电脑意外跌落或突然受到其他物体的撞击(即超过某个加速度阈值时),大多数知名笔记本电脑供应商都有加速计来停放硬盘驱动器磁头。例如,我的惠普有它的“HP 3D DriveGuard”。但是这项技术是嵌入低级的,即使没有加载操作系统,它似乎也可以工作,所以我想它是在 BIOS 中。我想它只是公开了一种启用或禁用此技术的 ACPI 方式。因此,即使在具有标准化传感器 API 的 Windows 7 上,也无法像智能手机那样将其作为标准加速度计进行访问。如果市场需要的话,也许在未来(但我不这么认为)。

    【讨论】:

    • :(我还没有找到通用的解决方案。大多数提供商还没有公开此信息。
    【解决方案2】:

    这不适用于所有制造商,但经过大量搜索(我自己也一直想要这个功能),我找到了wrote a driver wrapper 用于 HP 笔记本电脑中的加速度计的人。如果您的笔记本电脑支持 HP 3d DriveGuard 或 HP ProtectSmart,则此驱动程序应让加速度计显示在 Windows 传感器列表中。

    在我的 HP 笔记本电脑上进行了测试,并且安装顺利。示例程序有效,但响应速度很慢。我认为这不适用于高精度需求(例如游戏),但如果您只需要一些较慢的方向数据,它可能会起作用。

    请注意,这是通过将加速度计暴露给 Windows 传感器 API 来实现的。传感器 API 提供了一种访问任何类型传感器的标准方法,无论安装的实际硬件如何。有更多关于Windows Sensor Platform on MSDN的信息。

    【讨论】:

    • 这似乎不适用于装有 Windows 10 的 HP 2540p。
    • 非HTTPS下载会让我紧张。快速浏览一下,驱动程序没有可用的源代码。从非官方来源安装这样一个特权软件,没有受信任的签名是相当冒险的。
    • 32b版本不可用:The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
    • 示例应用程序+源链接需要注册。论坛帖子中的example application executable-only 链接无需注册即可使用。
    猜你喜欢
    • 1970-01-01
    • 2023-01-21
    • 1970-01-01
    • 2011-04-25
    • 2023-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-28
    相关资源
    最近更新 更多