先の「Arduino UNO 基本編 — 2外部に付けた LED をスイッチで制御してみる」では、スイッチを押したときだけしか LED が点灯しないので、これを改造し、1 回スイッチを押したら点灯状態を保ち、もう一度スイッチを押したら、LED を消灯するように、改造してみます。
この実験は、Arduino に接続したスイッチの制御方法を学ぶ上でとても有効な基本事項ですね。
回路は同じですが、回路図を書いてみました。
スケッチを改造(修正します)します。元のスケッチは、
// 7番ピンに接続したスイッチが押されている間、12番ピンに接続した LED を点灯する const int LED = 12; // LED が接続されているピン const int BUTTON = 7; // スイッチが接続されているピン int val = 0; // 入力ピンの状態を val に格納する void setup() { pinMode(LED,OUTPUT); // 12番のピンは出力 pinMode(BUTTON,INPUT); // 7 番のピンは入力 } void loop() { val = digitalRead(BUTTON); // 入力を読み取り val に格納 // 入力は HIGH か? if (val == HIGH) { digitalWrite(LED,HIGH); // LED を点灯 } else { digitalWrite(LED,LOW); // LED を消灯 } }
この通りでした。
電子機器が大好きです。
プログラムを書くのをお仕事としていたこともあるので、両方できる PIC や Arduino を使って、いろいろな(役にあんまり立たない)ものを作っています。
実は UNIX 関連のお仕事も長かったので、Raspberry Pi もお手の物なのですけれど、これから触る機会が多くなるのかなぁ。
ボチボチ行きますが、お付き合いください。
若いころの写真なので、現時点では、まだ髪の毛は黒くてありますが、お髭は真っ白になりました。
愛車の国鉄特急カラーのカスタムしたリトルカブで、時々、秋月電子通商の八潮店に出没します。