0

そこで、USBポートから2桁の数字を取り出し、その数字と一致するピンの状態を確認してから、ピンのオン/オフを切り替えるスケッチを作成しています。

ソースをのぞいてみましょう

何らかの理由で、Arduinoシリアルモニターを介して13を送信すると、次のメッセージが返されます。 Pin number is greater than 14, details: 490 51 541

IDEが奇妙な番号を送信しているか、Arduinoがそれらを間違って処理していることを意味します。なぜこれが正しく機能しないのかについて問題を感じている人はいますか?

4

1 に答える 1

1

ASCII文字 "1" と "3"を入力すると、 Serial.read()49 と 51 が返されます。これは、ASCII文字テーブルで "1" と "3" がそれぞれ 49 と 51 という数字で表されるためです。ユーザーが入力した数値を見つけたい場合は、それをASCIIから変換する必要があります。

私は Arduino 言語にあまり詳しくありませんが、C に似ていると仮定すると、ここで必要な変更を見つけることができます。

私は別の方法でプログラムを書き直しまし

ソースで使用されている '0' は、単に「文字 '0' を表すために使用される数字」の別の言い方です。つまり、48'0' == 48です'1' == 49

于 2008-12-27T01:10:27.880 に答える