2022-10-14URLをコピーしました!当記事では、Arduinoでスイッチを使う方法を詳しく解説します。I/O(デジタル入出力)の関数を使ったプログラムで、スイッチの入力状態を読み取ります。その他のArduino関数・ライブラリについては、以下の記事をご覧ください。ライブラリの詳しい解説やサンプルプログラム(サンプルスケッチ)はリンク先の記事を確認し...目次スイッチはどんな電子部品?スイッチは一般家庭でも多く使われており、照明、テレビ、エアコンなどの電化製品で電源の入切、メニューの選択で普段から使っていると思います。スイッチを電子部品として考えると、以下のように「状態が切り替わるスイッチ」と「状態が戻るスイッチ」に大きくわけられます。状態が切り替わるスイッチトグルスイッチスライドスイッチDIPスイッチロータリースイッチ状態が戻るスイッチタクトスイッチ押しボタンスイッチなどつまり、「状態が切り替わるスイッチ」は一度スイッチをONするとONの状態のまま、OFFにすればOFFの状態のままになります。「状態が戻るスイッチ」は、押している間だけONになり、押すのをやめてしまうとOFFになります。当記事では、ブレッドボードにそのまま差し込めて使えるので、タクトスイッチを例にしてスイッチで使用するサンプルプログラムを解説していきます。サンプルプログラム(サンプルスケッチ)サンプルプログラム(サンプルスケッチ)で、ブレッドボードを使います。ブレッドボードの詳しい使い方は、以下の記事をご覧ください。当記事では、ブレッドボードの使い方について詳しく解説します。ブレッドボードを活用すれば、電子回路の実験、試作、評価を簡単に行うことができます。delay(1000);//1000msec待機(1秒待機)}シリアルモニタ例1110001111サンプルプログラムでは、0番ピンに接続されたタクトスイッチの入力状態をシリアルモニタに表示します。スイッチはプルアップされているので、スイッチがOFFの時は「1」、スイッチがONの時は「0」が表示されます。delay(1000);//1000msec待機(1秒待機)}シリアルモニタ例1110001111サンプルプログラムでは、0番ピンに接続されたタクトスイッチの入力状態をシリアルモニタに表示します。INPUT_PULLUP)」とすることで、マイコン内部のプルアップ抵抗を使用することができるので、別途プルアップ抵抗を接続する必要がありません。「スイッチの入力状態を読み取り」のサンプルプログラムと同様、スイッチはプルアップされているので、スイッチがOFFの時は「1」、スイッチがONの時は「0」が表示されます。Unoのボード上のLEDが点灯、消灯します。タクトスイッチを押すとLED点灯、離すとLED消灯になります。回数:1回数:2回数:3回数:4回数:5回数:6回数:7回数:8回数:9回数:10サンプルプログラムは、タクトスイッチを押した回数をシリアルモニタに表示します。delay(10)」を加えています。チャタリングによってスイッチON時にON/OFFが繰り返されるので、時間を遅延させることでチャタリングを回避しています。チャタリング対策のプログラムは他にも色々なやり方があり、チャタリング防止回路を追加することでもチャタリングを回避することがあります。詳しいチャタリング対策の方法については別の記事で詳しく解説する予定です。Unoを使用したサンプルプログラムを解説してきました。Unoと電子部品を組み合わせたキットも存在します。電子工作初心者にとっては、いちいち電子部品を別途購入する必要がないので非常に有用です。Unoを紹介しているので、ぜひご覧ください。Arduinoには20種類以上のエディション(種類)があり、これからArduinoを使って、電子工作を始める初心者にとって、どれを選んだらいいのか迷ってしまうのではないでしょ...また、以下の記事で、安価でWi-Fi/Bluetoothに対応している「ESP32開発ボード」についてもまとめてみました。IDEでソフト開発ができるため、電子工作でIoTを実現したい方におすすめです。ESP32開発ボードは、安価でWi-Fi/Bluetoothに対応しているため、マイコンボードで有名なArduinoボード以上に便利な存在です。