-1

シリアル通信でArduinoに入力してみます。その変数は変数に格納する必要があります。シリアル通信で送信したデータをアナログ入力値と比較し、両方が等しくなった場合に何らかのアクションを実行する必要があります。

シリアル通信で Arduino に送信されるデータは一度だけ送信されます。したがって、プログラムは値を保存し、アナログ入力値と比較する必要があります。文字列または文字列変換のどちらを使用すればよいですか?

4

2 に答える 2

1

analogRead()を使用したアナログ データは、0 ~ 1023 の範囲のintになります (ただし、センサーによっては、それよりもはるかに小さい場合がありますが、それらは最小/最大値です)。したがって、シリアルポート経由で送信されたターゲット値は、 parseInt()を使用してint変数に格納できます。

于 2013-01-31T10:45:03.327 に答える
0

文字列の終わりを決定する必要があります。単一文字のコマンドまたはバイト値を送信している場合は、Serial.read() 値を「int」に単純化できます。あなたがテキスト番号、たとえば「123」または「1」、「2」、3」、「\ n」の文字列を送信していると思われる場合。

char*(string) または String のいずれかが機能します。ただし、serial.read から「文字列」を作成し、文字列の末尾を特定する必要があります。したがって、「\n」の使用に注意してください。または、常に同じ数の文字を期待するようにフレーム化することもできます。例: "0","2",3"

前の議論その他別のものを参照してください

于 2013-01-31T16:25:41.153 に答える