Arduino Mini Console 開発

Arduino と LCD を使用してミニコンソールを作成してみたいと思います。

このLCDモジュールですが、Arduino のライブラリが使用でき、SD カードスロットも搭載しているので、入力ボタンをつけるとミニゲーム機として動作させることができるのではないかと思います。

まず部品を実装します。部品と言ってもタクトスイッチぐらいなのですが、Arduino 用と LCD 用のピンソケットもつけてプロトタイプとして動作できるようにします。

IMG_0909

部品を実装するとこんな感じです。最初はタクトスイッチを Arduino のポートに直結しただけだったのですが、これだとボタンを押していない時にピンが接続されていない状態となり、信号が不安定になるため、10kΩの抵抗を入れて GND と接続しています。

IMG_0910

通電した所、ちゃんとLCDも動作しているみたいです。

IMG_0912

すべてのタクトスイッチの検査をするためにサンプルプログラムを作ってみました。
押したボタンに応じて、Arduino 上のLEDを点滅させます。


#define KEY_UP 1
#define KEY_DOWN 3
#define KEY_LEFT 0
#define KEY_RIGHT 5
#define KEY_A 6
#define KEY_B 14

#define LED 13
#define DELAY 100

void setup() {
pinMode(0, INPUT);
pinMode(1, INPUT);
pinMode(3, INPUT);
pinMode(5, INPUT);
pinMode(6, INPUT);
pinMode(14, INPUT);

pinMode( LED, OUTPUT);
}

void loop() {
int blnFlag = 0;

if ( digitalRead( KEY_LEFT ) == 1 ) {
blnFlag = 1;
}
if ( digitalRead( KEY_UP ) == 1 ) {
blnFlag = 2;
}
if ( digitalRead( KEY_DOWN ) == 1 ) {
blnFlag = 3;
}
if ( digitalRead( KEY_RIGHT ) == 1 ) {
blnFlag = 4;
}
if ( digitalRead( KEY_A ) == 1 ) {
blnFlag = 5;
}
if ( digitalRead( KEY_B ) == 1 ) {
blnFlag = 6;
}

if ( blnFlag > 0 ) {
for ( int intI=0; intI digitalWrite( LED, HIGH);
delay( DELAY );
digitalWrite( LED, LOW);
delay( DELAY );
}
} else {
}
digitalWrite( LED, LOW);
}

キー入力は無事にすべて動作するようになりました。
次はLCDに何か表示してみたいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>