curious4dev

中国旅行、Arduinoなどを使った電子工作、その他色々。

*

大掃除を終え、aitendoで30円で売ってたタクトスイッチ基板でクリスマス

 

お疲れ様です。高橋です。

aitendoで店頭限定30円だったタクトスイッチ基板を使って、クリスマスっぽい曲を演奏してみました。(曲名は知らないです)

これが出来るまでの道のりは下記の通りです。

大掃除

高橋家では年末に大掃除を行います。窓拭きやら、床拭きやら、色々。大体2日に分けて実施するのですが、今回から新たに荷物整理というタスクが追加されました。今年から始めた電子工作関連の趣味にまつわるモノが非常に多くなってしまい、奥様の逆鱗に触れたのがキッカケです。

電子工作関連物を広げて見てみたのですが、たった1年で随分増えてしまいました。

IMG_6930

秋葉原に1回行く度に少しずつ買ってたのですが、チリも積もれば山となります。

工具類やケーブル類。

IMG_6933

マイコンボードやらブレッドボードやら線材。

IMG_6935

細かい部品群。

IMG_6936

色々整理し、綺麗に格納出来ました。

IMG_6938

掃除中の発掘物

掃除中、少し前にaitendoで店頭限定で30円で売っていたタクトスイッチ基板を発見しました。

IMG_6915

これ、左側の基板は確かに30円だったのですが、いい感じに刺さるケーブルが100円するという、思わず唸ってしまう商法です。

IMG_6916

挿すと、こんな感じ。

IMG_6917

それぞれの線がどういう役割なのか、テスターで確認しました。

IMG_6918

左から、

白 GND
黒 緑色LED
灰 赤色LED
橙 1個目のボタン
緑 2個目のボタン
青 3個目のボタン
茶 4個目のボタン
赤 5個目のボタン

となってました。

これをインターフェイスとした何かを作ってみようと思います。

5音のキーボードにする

ドレミファソが鳴るモノを作ることにします。実体配線図は下記の通り。抵抗は10KΩ。

20151220

スケッチは下記の通り。

#define PIEZO 6
#define BUTTON_1 8
#define BUTTON_2 9
#define BUTTON_3 10
#define BUTTON_4 11
#define BUTTON_5 12

void setup() {
  // put your setup code here, to run once:
  pinMode(PIEZO, OUTPUT);

  pinMode(BUTTON_1, INPUT);
  pinMode(BUTTON_2, INPUT);
  pinMode(BUTTON_3, INPUT);
  pinMode(BUTTON_4, INPUT);
  pinMode(BUTTON_5, INPUT);

}
boolean isPush = false;

void loop() {

  int intButton1Status = digitalRead(BUTTON_1);
  int intButton2Status = digitalRead(BUTTON_2);
  int intButton3Status = digitalRead(BUTTON_3);
  int intButton4Status = digitalRead(BUTTON_4);
  int intButton5Status = digitalRead(BUTTON_5);

  if (intButton1Status == LOW ||
      intButton2Status == LOW ||
      intButton3Status == LOW ||
      intButton4Status == LOW ||
      intButton5Status == LOW) {
    if (intButton1Status == LOW) {
      tone(PIEZO, 261);
    } else 
    if (intButton2Status == LOW) {
      tone(PIEZO, 294);
    } else
    if (intButton3Status == LOW) {
      tone(PIEZO, 329);
    } else
    if (intButton4Status == LOW) {
      tone(PIEZO, 349);
    } else
    if (intButton5Status == LOW) {
      tone(PIEZO, 392);
    }

  } else {
    noTone(PIEZO);
  }
}

プルアップ抵抗にしたので、Arduino側では「LOW」を検知するような動きになります。多分。

IMG_6922

IMG_6928

IMG_6925

動作は、冒頭の動画の通りです。

 

 

 

以上、よろしくお願い致します。

 - 電子工作

  関連記事

YMZ294のMIDI音源化と、YMZのピン数圧縮

お疲れ様です。高橋です。 YMZで使うピン数を11本から6本に減らす事によって、 …

上司離着席検知システムの開発

お疲れ様です。高橋です。 下記、フィクションでイメージです。 背景 何かしらの相 …

USBカメラ+Raspberry Pi

お疲れ様です。高橋です。 USBカメラをRaspberryPiに装着し、ストリー …

赤外線リモコンをケースに格納

お疲れ様です。高橋です。 先日作ったATtiny13Aの赤外線リモコンを、ケース …

音階に合わせてLEDを光らせてみた。

お疲れ様です。高橋です。 主旋律に合わせてLEDを光らせてみる実験を行いました。 …

bluetoothモジュールHC-06とAndroid

お疲れ様です。高橋です。 先日AliExpressで購入したbluetoothモ …

【完成】ArduinoIDE1.6.4+ATTiny13Aで赤外線リモコン

お疲れ様です。高橋です。 苦戦していたArduinoIDE1.6.4を使ったAT …

音階LED実装 #1

お疲れ様です。高橋です。 今日の進捗 音階LEDの半田付け 1日目です。 ICソ …

ブレッドボード上のYMZ294をユニバーサル基板化してみたが。

お疲れ様です。高橋です。 ArduinoからYMZを鳴らしているブレッドボードが …

音階LEDの再設計

お疲れ様です。高橋です。 本日帰宅途中に電車をぼーっと待っている時、ふと、音階L …