211130 ハーモニカ演奏を音声再生とLED点滅 [2021年11月30日(Tue)]
(追記:LED点滅が3個の豪華限定版も) 【経過】 先日、フルート演奏を音声再生でミント菓子ケースに実装し、演奏者から「おもちゃスピーカには、無伴奏の方が向いている」との評価をいただき、次なる素材も無伴奏でと探していた。 今回のハーモニカ演奏は、ガチャガチャの空きカプセルに入れて試聴してみたが、音量が小さく曲数も少ないので、あまり(タッチセンスの価値がなく)、おもちゃ向きではなかった。 ならば、カプセルをひっくり返してスピーカを天井向きにすれば良いと思ったが、スピーカと電池の重みでコロコロと転がってすぐに元の姿勢に戻ってしまう。 あちこち見回すと、卵プリンの空き容器が目に入り、ピンとひらめいた。 これなら丸いけど転がらないし、中に入れたLED点滅も良く見える。 スイッチ類は容器の底面に集めて、見た目にもスマートに仕上がった。 【技術情報詳細】 おもちゃドクターの技術研修の題材として、一つだけ試作してみた。 複音ハーモニカのソロ演奏から、32ksps、16bit でサンプリングして、wav ファイルに変換後、ツールの wav2hex によりSPI音声データを生成して、W25Q64に、6曲を格納、シングル出力で実装。 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 今回の試作品作成に当たっては、複音ハーモニカ奏者・柳川優子さんの音源を利用させていただきました。(使用許諾済) 【柳川優子 You Tubeチャンネル】 https://www.youtube.com/c/YUKOYANAGAWAOFFICIAL 【複音ハーモニカで童謡・唱歌】 https://www.youtube.com/playlist?list=PLPG4jcd3kGGCaVTZyKbcUM0w1w7hbP8ga 〜〜〜〜〜〜 ご快諾いただき、誠にありがとうございました。 |
タッチSW を使わない分、LEDは 2個 実装できる

W25Q64 までは DIP8 があり、助かっている
-thumbnail2.jpg)
基板上に 2個の LED を直付け、視認性は意外に良好

押しボタンSW は、底面の足高より少し頭が出る形状のもの
-thumbnail2.jpg)
(2021/12/4追記)単3電池×2本なら、LEDを3個、BTL出力でもOK

少し大きめのプリンアラモード容器に入れた、豪華限定版

完成した試作品は、後日、感謝を込めて演奏者にプレゼント


W25Q64 までは DIP8 があり、助かっている
-thumbnail2.jpg)
基板上に 2個の LED を直付け、視認性は意外に良好

押しボタンSW は、底面の足高より少し頭が出る形状のもの
-thumbnail2.jpg)
(2021/12/4追記)単3電池×2本なら、LEDを3個、BTL出力でもOK

少し大きめのプリンアラモード容器に入れた、豪華限定版

完成した試作品は、後日、感謝を込めて演奏者にプレゼント

【ダウンロード】
このプロジェクトは、つつじが丘おもちゃ病院 さんが開発された PIC電子オルゴール+音声再生に、ToyDr.わたなべ が、ハーモニカ用の音源を SPI音声データとして追加したもの
参照元のサンプルプロジェクト名は orgel_1572.X
Dr.大泉院長から、今回もまた基本的なことを教えていただいた

【質問】SPIフラッシュに格納できる音声の
長さが分かれば嬉しいのですが、
計算方法はどうなりますか?
長さが分かれば嬉しいのですが、
計算方法はどうなりますか?
【回答】16kspsでのメモリ消費量は
16kバイト/秒になりますよね。
即返信いただき、ありがとうございます。
量子化ビットが 8bitなら、1サンプル=1Byteに格納されるので、必要なメモリ容量はサンプル数の8倍ということで、あらためて計算してみたら、W25Q64 の場合は 500秒ピッタリで、つまり 8分20秒
64,000,000bit ÷ 8bit ÷ 16,000sample = 500second
当方の新プロジェクトの関連情報は、下記の共有ドライブにて圧縮ファイルを公開中
プロジェクト名は、harmonica_1572.X
harmonica_15325.X ← NEW
音声データは、voice_Harmonica フォルダ内の、W25Q128.hex を使う。
なお、これを小さい容量の SPIに書き込む場合には超過分は無視されることになるが、心配ない。
音声データのインデックスで、SPI容量に応じて適宜に呼出範囲を制限すれば良い。
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;音声データ(SPIフラッシュ)のインデックス
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
voiceS_tbl
vos_mac 0x000000,0x11d264,16000 ;HaruKita.wav
vos_mac 0x11d264,0x1b38a4,16000 ;Yurikago.wav
vos_mac 0x2d0b08,0x108044,16000 ;HaruKoi.wav W25Q32ならココまで
vos_mac 0x3d8b4c,0x0a9b54,16000 ;HaruOgawa.wav
vos_mac 0x4826a0,0x129bec,16000 ;Tulips.wav
vos_mac 0x5ac28c,0x2097c4,16000 ;SoshunFu.wav 同64ならココまで
;vos_mac 0x7b5a50,0x16b424,16000 ;DokokaHaru.wav
;vos_mac 0x920e74,0x1d2ca4,16000 ;ShabonDama.wav
;vos_mac 0xaf3b18,0x184aa4,16000 ;Shojoji.wav
;vos_mac 0xc785bc,0x1d0d84,16000 ;KutsuNaru.wav
;vos_mac 0xe49340,0x118404,16000 ;Aoimeno.wav 同128ならココまで
voiceS_tbl_end
W25Q32 では最大 250秒間で、3曲入り
W25Q64 では最大 500秒間で、6曲入り
W25Q128 では最大 1,000秒間で、11曲を格納できた。
※おもちゃクリニックゆりかごは、糸魚川市・糸魚川市教育委員会後援の「おもちゃリサイクル普及啓発事業」です。
Posted by
ToyDr.わたなべ
at 00:00