2018年3月22日木曜日

【Arduino】タクトスイッチでLEDの点灯

休みの時にしっかりできるといいんだけどね~
休みの日は休みの日で何もしたくなくなる。
水曜日はそんな感じだった。

今回はタクトスイッチ。
LEDだけだと定期的にするだけでしたけど、
スイッチ辺りが入ってくるとボタンが押されたかとかで制御できて
ぐっとなんかシステムっぽくなる…気がしない?




タクトスイッチは「押されいるorいない」の判定で、
この時に電流が0Vで来たか、5Vで来たか、みたいな判定をします。
んで、0Vの時は基本的にGNDからのを使えばいいらしいんですけど、

組み込み機器っていうのは常にどっかで電流が流れているらしく、
それに気を使わないと値が安定しない時があるとかないとか、
そんなんで抵抗をつけなきゃいけないそうです。
今回のは0Vの時に抵抗をつけるのでプルダウン抵抗、というらしい…?

今回のコードはこんなの

const int define_PIN_INPUT = 10;
const int define_PIN_OUTPUT = 3;
void setup() {
  pinMode( define_PIN_INPUT, INPUT );
  pinMode( define_PIN_OUTPUT, OUTPUT );
}
void loop() {
  if ( digitalRead( define_PIN_INPUT ) == HIGH ) {
    digitalWrite( define_PIN_OUTPUT, HIGH );
  } else {
    digitalWrite( define_PIN_OUTPUT, LOW );
  }
}

3番ピンが出力するピン、10番ピンが入力するピンですね。
10番ピンから来た信号はスイッチのON/OFFでHigh/Lowになるので、
これでLEDの点滅を制御する形です。

プルダウン抵抗のもそうだけど、
コードだけだと後で自分が見返したときに困りそうですね…















こんな感じで押した時だけLEDが光るようになってます。
入力ピンはセンサー類とかでも使うんで、この辺は大事かも。

抵抗値の見方が分からず適当な抵抗を使用しているのは本当は良くないですが、
今回はまあ、この辺にしといたる。

んではでは。

0 件のコメント:

コメントを投稿