電子工作入門プログラミング入門-基礎1今回から今まで説明した内容の補足説明です。補足記事この基礎編パート1では、プログラミングに必要な最低限の知識を説明しました。実際にプログラミングをする場合、もう少し補足の知識が必要になります。そこで、これから何回かに分けて、今まで説明した内容の補足をしていきます。第15回の記事で、#defineの使い方を説明しました。キッチンタイマーの秒を表現するLEDがありますが、このLEDをつけている時間は以下のように#defineで定義しています。50このように#defineすると、例えばスケッチに以下のように書いた場合、50ms時間待ちをします。IDEは、スケッチをArduinoボードに送るときに、裏で以下のように「BYOU_ON」を「50」に置き換えます。delay(50);これだけを見ると特に何か問題がある、というわけではないですよね。ところで、「BYOU_ON」を以下のように定義する場合を考えてみます。100」に置き換えてくれます。これだけだと特に問題はなさそうですよね。先ほどと同じように、時間待ちをするために以下のようにdelay関数を書いたとします。100」に置き換えます。150、ということで、150ms時間待ちをするわけです。次に、この2倍の時間待ちをする場合を考えます。300msの時間待ちをしたいわけです。2倍するには、「BYOU_ON」を2倍すればいいわけですから、以下のようにスケッチに書けばよさそうですよね。2);実は、これが問題を引き起こします。IDEの裏の作業を確認してみましょう。100」に置き換えます。