我在 NI 支持论坛上创建了一个关于我的项目的帖子,但我目前的问题比在 labview 中编写驱动程序更广泛。我有一个风速计,它使用 USB UART 桥接器与计算机连接。我向 Extech 索要任何类型的文档,但只收到了以下通信协议。
我在处理这个问题时遇到了几个问题,所以我使用了风速计附带的软件并使用 portmon 来嗅探往返的命令,这就是它变得更糟的地方。为了尽可能简化问题,我只读取了环境温度读数。以下是我使用制造商的软件连接到仪器时 portmon 捕获的内容:
(这是上述协议文档中的“上传协议”)
AA 61 64 6A 67 08 40 00 40 00 01 00 00 C6 41 00 00 00 00 00 3C 1C C6 9A 19 99 42 00 3C 1C C6 00 00
AA 61 64 6A 67 08 40 10 40 00 01 7D 0C C6 41 00 00 00 00 00 3C 1C C6 39 1F 99 42 00 3C 1C C6 00 00
AA 61 64 6A 67 08 40 10 40 00 01 00 00 C6 41 00 00 00 00 00 3C 1C C6 9A 19 99 42 00 3C 1C C6 00 00
AA 61 64 6A 67 08 40 10 40 00 01 83 F3 C5 41 00 00 00 00 00 3C 1C C6 FB 13 99 42 00 3C 1C C6 00 00
这被稍微截断了,但重要的部分应该在那里。当时的环境温度读数约为 76.5F。所以根据文档,这应该在第 10-13 位,所以我相信:
0000c641
7d0cc641
0000c641
83f3c541
成为记录的环境温度,但我不知道如何阅读。我认为没有理由需要从开尔文或摄氏度进行转换,因为在 F1 中似乎有一点。另外值得注意的是,我得到的值与几个字段记录的任何值完全不同,所以要么我读错了,要么文档就是错误的。我无法从制造商那里得到更多关于协议的答案,所以我不知道为什么我的数据只有一半与预期的相似。