今回はArduino、タクトスイッチ、を使い、スイッチのON、OFFでのHIGH、LOWの見方についてです。ここでは、シリアルモニタを使ってボタンを押し、デジタルピンで値を読み取ります。電子工作初心者の方にとってもとても簡単な内容となってます。
使用するもの
使用するものは下記のリストの物です。購入先はすべて秋月電子通商です。同じもの購入したい方はリストのリンクより購入してください。
- Arduino Uno Rev3
- USBケーブル USB2.0 AオスーBオス 1.5m AーB
- タクトスイッチ(赤色)
- カーボン抵抗(炭素被膜抵抗) 1/2W10kΩ
- ブレッドボード・ジャンパーワイヤー (オス―メス) セット
- ブレッドボード
タクトスイッチの使い方
タクトスイッチの仕組み
以下のようにタクトスイッチには端子が4つあります。(2番の端子は見えませんが存在します)

中の回路はこのようになっているため、1番と2番、3番と4番は中の回路がつながっています。つまりスイッチを押すと1番と2番、3番と4番の間のスイッチがつながる仕組みです。このタクトスイッチの特徴をしっかりと理解していないとスイッチを押していないのに押した反応が出ている状況になります。

タクトスイッチを使った回路
ここで作る回路はタクトスイッチを押したときにシリアルモニタに0(LOW)、押していないときはシリアルモニタに1(HIGH)がプリントされる構成です。
ここでの回路では、Arduino、タクトスイッチ、抵抗(10kΩ)をジャンパー線やブレッドボードを使って回路作成してみてください。ArduinoはGND、D2、5Vを使用しています。

プログラムは以下の通りです。ArduinoIDEにコピペして使用してください。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | int SW_pin = 2; int val; void setup() { pinMode(SW_pin,INPUT); Serial.begin(115200); } void loop() { val = digitalRead(SW_pin); Serial.println(val); delay(100); } |
SW_pinという変数にはボタンを押した際のHIGH、LOWを読み込むピンの番号を代入します。valには、1(HIGH)か0(LOW)が代入されます。pinModeでINPUTとしているのは、デジタルの2ピンを入力のピンとして使用するということです。入力のピンというのは、デジタルだと電圧が加えられると1(HIGH)、電圧が加わらないときは0(LOW)のどちらなのかを読み取ります。ここでは読み取った値をvalに代入しています。delayは指定した時間だけ待つようにします。()内には時間を入れるのですが、単位はms(ミリ秒)ですので注意が必要です。
Serial.beginでは、シリアル通信を使用したい場合に利用します。()の中には、通信速度を指定します。Serial.printlnでは、()内の値をシリアルモニタに表示します。今回はval(変数)を入れているので入力ピンで読み取った値をシリアルモニタに表示します。
シリアルモニタは画面右上の虫メガネのようなマークをクリックし、シリアルモニタの画面右下の通信速度を指定した値にします。


シリアルモニタを表示させると以下のようにボタンを押していないと1、押していると0を表示しています。

最後に
説明した文章の中でわからない言葉があった際は、問い合わせ又はSNSでの連絡してください。
今回の記事を読んで気になった方は下記よりSNSのフォローをよろしくお願いいたします。また、YouTubeにも様々な動画を載せているのでご覧ください!
コメント