キーパッド¶
概要¶
このレッスンでは、キーパッドの使用方法を学びます。キーパッドは、携帯電話、ファックス機、電子レンジなど、さまざまな種類のデバイスに適用できます。一般的にユーザー入力に使用されます。
必要なコンポーネント¶
このプロジェクトには、以下のコンポーネントが必要です。
全セットを購入するのが便利です。こちらがリンクです:
名称 |
このキットのアイテム数 |
リンク |
---|---|---|
Elite Explorer Kit |
300+ |
以下のリンクから個別に購入することもできます。
コンポーネント紹介 |
購入リンク |
---|---|
- |
|
配線図¶
回路図¶
コード¶
注釈
ファイル
21-keypad.ino
をelite-explorer-kit-main\basic_project\21-keypad
のパスで直接開くことができます。ライブラリをインストールするには、Arduinoライブラリマネージャーを使用し、 「Adafruit Keypad」 を検索してインストールしてください。
UNOボードにコードをアップロードした後、シリアルモニターで、キーパッドで現在押されているキーの値を確認することができます。
コード解析¶
ライブラリのインクルード
まず、キーパッドと簡単にインターフェースするための
Adafruit_Keypad
ライブラリをインクルードします。#include "Adafruit_Keypad.h"
注釈
ライブラリをインストールするには、Arduinoライブラリマネージャーを使用し、 「Adafruit Keypad」 を検索してインストールしてください。
キーパッドの設定
const byte ROWS = 4; const byte COLS = 4; char keys[ROWS][COLS] = { { '1', '2', '3', 'A' }, { '4', '5', '6', 'B' }, { '7', '8', '9', 'C' }, { '*', '0', '#', 'D' } }; byte rowPins[ROWS] = { 2, 3, 4, 5 }; byte colPins[COLS] = { 8, 9, 10, 11 };
ROWS
およびCOLS
の定数はキーパッドの寸法を定義します。keys
は2次元配列で、キーパッドの各ボタンのラベルを格納しています。rowPins
とcolPins
は、キーパッドの行と列に接続されているArduinoピンを格納する配列です。
キーパッドの初期化
Adafruit_Keypad
のインスタンスをmyKeypad
として作成し、初期化します。Adafruit_Keypad myKeypad = Adafruit_Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
setup()関数
シリアル通信とカスタムキーパッドを初期化します。
void setup() { Serial.begin(9600); myKeypad.begin(); }
メインループ
キーイベントをチェックし、シリアルモニターに表示します。
void loop() { myKeypad.tick(); while (myKeypad.available()) { keypadEvent e = myKeypad.read(); Serial.print((char)e.bit.KEY); if (e.bit.EVENT == KEY_JUST_PRESSED) Serial.println(" pressed"); else if (e.bit.EVENT == KEY_JUST_RELEASED) Serial.println(" released"); } delay(10); }