
スイッチ(1)_押しボタン
手持ちの37種パーツセット
の中に押しボタンスイッチがあるんですけど、見ただけで分かった気になって満足して今まで試したことがありませんでした(^_^;) せっかくあるので一度ちゃんと使ってみよう。
VCC,GNDをつないだうえでテスターで確認したところ、OUTはボタンを押さないとき「HIGH」、押すと「LOW」でした。
押したらアクティブブザー(これも上記のパーツセットに入っています。以下の記事参考)が鳴るモールス練習機、みたいな感じにしてみます。
ボタンスイッチのOUTピンをD6に、ブザーのINピンをD8につなぎます。(もちろんVCCは+5V,GNDはGNDにつなぎますよ)
#define I_PIN 6
#define O_PIN 8
void setup() {
pinMode(I_PIN, INPUT);
pinMode(O_PIN, OUTPUT);
}
void loop() {
if(digitalRead(I_PIN) == HIGH){
digitalWrite(O_PIN, LOW);
}else{
digitalWrite(O_PIN, HIGH);
}
}
入力のHIGH,LOWをひっくり返して出力しています。一応これでこんな風
に動いています。
ただ、ループのぶん回しはかっこわるい。割り込み処理とかにしたいな。