3

Arduino Duemilanove を使用していくつかのテストを実行しています。シリアルポート経由でarduinoと通信しています。私がやろうとしているのは、いくつかの int を読み取ることだけです。単純にするために parseInt() 関数を使用しています。

私の質問は、入力された各文字を parseInt() 関数を使用しながらエコーバックするように ardunino をプログラムする方法はありますか?

通常、端末クライアントでローカル エコーをオンにするオプションがあることは知っていますが、これらに依存したくありません。

私が使用しているコードは次のとおりです。

    unsigned int timeTotal;
    Serial.print("Enter Total Time of Period (ms): "); 
    while (!Serial.available()) {   ;   }    //wait for input
    while (Serial.available() > 0) {
        //Serial.write(Serial.peek());
        timeTotal = Serial.parseInt();      //read int
        Serial.read();              //discard newline char at end of input
        Serial.println();
        Serial.print("Total Time: ");
        Serial.println(timeTotal, DEC);
    }

ご覧のとおり、peek() を使用しようとしていましたが、1 文字しか取得できません....

前もって感謝します !!!

4

1 に答える 1

1

区切り文字がヒットするまで、文字を文字列に読み込むことができます(文字列をエコーし​​ます)。次に、文字列を。で変換しますatoi()。ソースを見なくても、これはとにかくparseIntが行うことだと確信しています。

于 2012-05-26T01:27:36.810 に答える