2

我实际上只是有一个相当小的问题,但我最难找到有关它的信息。

对于我正在编写的应用程序,将有一个通过 USB 连接到 Windows XP 计算机的 3 轴操纵杆,它由 directx 处理。然后,该信息将被发送到其他地方到嵌入式控制器。我不需要知道directx如何处理它的太多复杂性,但我想知道,轴的数据是如何格式化的?

最近我可以说,现在大多数操纵杆都有 12 位分辨率,那么数据输出是 12 位 2 的补码数吗?在那之后,当它从directx捕获时,它是否表示为一个有符号的16位整数?

我想知道这一点,所以我知道我将如何在嵌入式平台端处理数据,例如如何格式化将数据发送到嵌入式端的数据包,以及如何在嵌入式平台上使用信息边。

4

1 回答 1

2

驱动程序的一个大问题是它意味着设备可以向您提供数据,无论它喜欢什么。例如,没有什么可以阻止它通过 USB 发送数字的字符串表示形式(尽管我承认这不太可能)。只要驱动程序将数据重新解释成窗体窗口(或任何操作系统)都可以理解就没有问题。

你最好选择一个设备子集,看看数据是如何通过原始的,并在设备和系统之间编写你自己的抽象。如果它是一个未知的设备,您可以“猜测”数据的格式并尝试使其工作,但我怀疑您是否会管理一个捕获所有系统,因为某个地方的一些虫子会以奇怪的方式做事(即以他们自己的方式)。

于 2010-03-26T19:32:25.393 回答