Arduinoと実際のギターを使って、ギターヒーローのようなゲームを統一して作成しています。
私の問題は、arduinoからの戻り値を常にチェックしなければならないことです。
常に値を送信すると、読み取り値が十分に正確でなくなり、ギターからの入力を受信したときにのみデータを送信するようにArduinoのコードを記述すると、ユニティプログラムがフリーズします。応答を待ち続けているように見えるため、Arduinoコードに固執しました。これを回避する方法はありますか?
あなたの基本的な質問は次のとおりです。
Q: Arduino を Windows で実行されている C# アプリケーションに接続したいと考えています。
A: 次の 2 つの方法があります。
ポーリング
イベント
ポーリングは悪いです:)
正しい方法は、可能であればイベントを使用することです。
C# シリアル インターフェイスを使用できると仮定すると、DataReceived にイベントを割り当てることができます。
これを正確に説明している記事は次のとおりです。
http://www.johnciacia.com/2010/06/03/interacting-with-the-arduino-with-c/
探す:
serialPort1.DataReceived +=
new System.IO.Ports.SerialDataReceivedEventHandler(serialPort1_DataReceived);
ここに別のリンクがあります: 「Scrobby4」がいくつかのサンプルコードを投稿したようです: