こんにちは、強力な StackOverflow.com コミュニティです。
これは私がしばらくの間いじっていた質問です。私は、388 RF トランスミッター/レシーバーのペアを使用して RPi と通信する Arduino 2560 を持っています (持つ予定です)。したがって、実質的にはシリアル通信になります。さらに悪いことに、多くの送信機 (Arduinos) と単一の受信機 (RPi) が存在します。私が答えを見つけることができない2つの質問:
プロトコルは非常に原始的です。そのため、エラー修正が必要な場合は、自分で選択する必要があります。パリティビットのような非常に単純なものを使用して、それがどのように機能するかを確認することを考えました。考え?
プロトコル自体について言えば、データをどのようにエンコードするのでしょうか? 事実上、私が送信しようとしている単一の数値 - 送信機 ID - とブール値のフラグ (センサーのアクティブ/非アクティブ) が一緒に存在します。シリアル RF 送信用にデータをエンコードする最良の方法は何ですか? すべてテキストに?これをバイトのストリームとして送信することもできますが、それがどれだけ大きくても、それ以上の移植は困難になります (ビッグ/リトル エンディアン、ワード サイズなど)。また、Protocol Buffers がどんなに優れていても、NanoPB などのいくつかのエキゾチックを検討しようとしましたが、おそらくこのタスクにはやり過ぎです。ここで私の立場が非常に不安定であることを理解していますので、あなたのアイデアをいただければ幸いです。
最後に、私はそれが不自由に聞こえることを知っていますが、誰かが以前にこれを行ったことがあると確信しており、交換を行うために使用できるある種のクロスプラットフォームライブラリさえあるかもしれません. もしそうなら、それは素晴らしいことです - 私は車輪を再発明する代わりに、私がやりたいことをすることができます.
とにかく、ここに立っています。回答をいただければ幸いです。
皆さん、どうもありがとう!