读取任何与PC兼容的赛车方向盘输入

reading any pc compatible racing wheel input

本文关键字:方向盘 输入 任何 PC 读取      更新时间:2023-10-16

我是一名电气工程师专业的学生,目前正在做一个最后一年的项目,建立一个模拟驾驶平台来测试我的睡意检测设备。我目前正在寻找可以检索赛车方向盘输入数据(例如方向盘角度)的方法,因为我需要这些数据来有效操作我的设备。我试图在互联网上查找,但我只找到了这些文件:

https://learn.microsoft.com/en-us/uwp/api/windows.gaming.input.racingwheelreading https://learn.microsoft.com/en-us/windows/uwp/gaming/racing-wheel-and-force-feedback

似乎Windows仅支持与Xbox One或Xbox 360方向盘兼容的设备。由于我们允许的预算有限,我们只能找到一些与PS4/PS3和PC兼容的廉价方向盘。有没有其他方法可以从任何与PC兼容的赛车方向盘读取输入数据,例如转向角?顺便说一下,我正在使用Windows操作系统。

我真的很感激任何帮助。

最有可能的是,如果您的方向盘标记为与PC兼容,它们将在Windows中显示为操纵杆。 可以使用多媒体操纵杆API或DirectInput读取这些设备。

多媒体操纵杆 API 文档如下:https://msdn.microsoft.com/en-us/library/windows/desktop/dd757116(v=vs.85).aspx。 您可以通过调用一系列 C 函数(如joyGetPosEx())来使用此 API,这些函数在 Windows.h 中都可用。

直接输入的设置更复杂,并且使用 COM 工作。 DirectInput 文档在这里:https://msdn.microsoft.com/en-us/library/windows/desktop/ee416842(v=vs.85).aspx

XInput 应该是用于输入设备的下一代 API,但它仅支持具有 Xbox 360 控制器布局(操纵杆、按钮等)的输入设备。

找到的文档适用于Microsoft较新的"通用 Windows 平台",该平台在Microsoft存储区中使用。 UWP 应用无法使用 DirectInput,也可能无法使用旧的游戏杆 API。