私は自分のプロジェクトについてNIサポートフォーラムでスレッドを開始しましたが、現在の問題は、LabVIEWでドライバーが書くだけではありません。USBUARTブリッジを使用してコンピューターとインターフェイスする風速計があります。私は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には少しあるように見えるので、ケルビンまたは摂氏からの変換が必要になる理由はわかりません。また、いくつかのフィールドについて文書化されているものとは完全に異なる値を取得するという事実も注目に値します。そのため、私が何か間違ったものを読んでいるか、文書化が間違っています。プロトコルについてメーカーからこれ以上回答を得ることができなかったので、なぜ私のデータが期待されたものに半分しか似ていないのかわかりません。