Arduino&GR-KURUMI、GR-SAKURA用メロディー作成ライブラリ
Arduino や GR-SAKURA、GR-KURUMIに標準で搭載されている tone 関数は pwm 機能を利用して周波数と発振時間を変えて単音を発生することが出来ます。
この tone 関数を使って pwm 出力可能なピンに圧電スピーカーを接続して簡単にメロディーを奏でられるライブラリを作成してみました。
楽譜の音程、拍子を設定し、音休符の配列の作成することで簡単なメロディーを作成できるライブラリです。
Arduino、GR-KURUMIと圧電スピーカーを用意すれば手軽に試すことができます。
私が使用した圧電スピカ―は ELEKIT社製の AP-204 (http://www.elekit.co.jp/product/AP-204)です。
キンコーンカンコーンは
unsigned short kinkonkankon[] = { ONP_DO4 , ONP_MI4 , ONP_RE4 , ONP_SO2D, ONP_KU4 , ONP_SO4D, ONP_RE4 , ONP_MI4 , ONP_DO2 , ONP_KU4 , ONP_MI4 , ONP_DO4 , ONP_RE4 , ONP_SO2D, ONP_KU4 , ONP_SO4D, ONP_RE4 , ONP_MI4 , ONP_DO2 , ONP_KU4 , ONP_END };
こんな感じの配列となります。
使用出来る音休符記号は
ONP_oo(x)y(z) || | | | || | | +-->オクターブ || | | 省略 : setOctave関数で指定したオクターブ || | | U : 1オクターブ上 || | | D : 1オクターブ下 || | | || | +----> 音(休)符の種類 || | 1 : 全音(休)符 || | 2 : 2分音(休)符 || | 4 : 4分音(休)符 || | 8 : 8分音(休)符 || | 16 : 16分音(休)符 || | || +------> 半音程 || 省略 : 通常音 || S : シャープ(半音上) || ++--------> 音種 DO : ド RE : レ ME : ミ FA : ファ SO : ソ RA : ラ SI : シ KU : 休み ONP_END ||| +++------> データ配列末尾
となっています。
理解するのは難しくありません。 お試しください。
※このライブラリを作成する際に参考にさせて頂いたサイトは
-
http://mag.switch-science.com/2015/04/29/gwprojact_koinobori/
-
http://www.geocities.jp/zattouka/GarageHouse/micon/Arduino/Melody/Melody.htm
-
http://mathrax.sakura.ne.jp/mathrax_com/ws/page10.html
-
http://qiita.com/tadfmac/items/7fb26596fe6240959c48
です。 ありがとうごさいます。
ARDUINO やGR-KURUMI / GR-SAKURAで利用可能な tone関数を使用したメロディー作成ライブラリです。
MELODY_LIB.ZIP ファイルをダウンロードし、解凍してご利用下さい。
解凍後の README.TXT ファイルに MELODYライブラリの導入方法及びメロディーデータの作成方法、サンプルスケッチの使い方等を記載しています。 是非お読みください。
※プログラムコード同様に、楽譜、曲、詞にも著作権は存在します。 著作権法を順守して楽しみましょう。