0

最初の行に単語を入力すると、最初の文字が 2 行目に保存され、最初の行には何も保存されません。この問題を解決するにはどうすればよいですか?

コードは次のとおりです。http://pastebin.com/sXLjAvns

4

2 に答える 2

1

Serial.read() は単一の文字のみを返すため、次のようになります。

while (Serial.available() == 0);
firstLine[16] = Serial.read();
Serial.println(firstLine);

次のようなものに変更する必要があります。

#define LEN   16
#define CR    13

int i=0;
char incoming;

while ((incoming!= CR) & (i<LEN-1))
{
   if (Serial.available())
   {
       incoming = Serial.read();
       firstline[i]=incoming;
       i++;
   }
}
firstline[i]=0;
Serial.println(firstLine);
于 2012-09-18T01:05:01.373 に答える
1

私は実際にこれを友人と一緒に考えました。新しいソースは次のとおりです。http://pastebin.com/GDxJwXxd

for次の文字を繰り返し保存して文字列に保存するループで修正しました。次に、別のforループを使用して、文字列の各文字を出力します。

于 2012-09-19T02:27:44.633 に答える