(ツール)
 
 
 PICでメロディ (電子オルゴール)

 
 
 PICを使用して、好きなメロディーを鳴らすことができる「PIC BEEP Ver4」を作成した。
 こんな感じ↓


 サンプル曲 約20秒 wma型式 → 【 ♪A (64.8KB) 】 【 ♪B (58.2KB) 】
 なつかしアニメイントロ3曲 約20秒 wav形式→ 【 ♪C (962KB) 】


 こちらはモニター募集で報告いただいた曲のイントロ部分約10秒。 wav形式 (ビットレート384kbps)
  → 【 ♪1 (470KB) 】 【 ♪2 (471KB) 】 【 ♪3 (468KB) 】 【 ♪4 (469KB) 】 【 ♪5 (468KB) 】


 
 
仕組み

 
     スピーカーに電気を流したり止めたりを、1秒間に何百回も繰り返すとスピーカーコーンが振動して音が鳴る。その繰り返し回数により、ドレミファ…の音階が決まる。
 また、その音階をどれくらいの時間、繰り返し続けるかで音長を決め、それらの組み合わせにより、曲が聞こえる。

 基本的には、それだけのことなので、お気に入りの曲をPICでメロディIC化しようとしたところ、PICのアセンブラプログラムでは、大変なプログラミング作業になった。

 それで、音を鳴らす部分の計算プログラムを固定しておき、音階と音長を羅列するだけでOKというものを作成した。

 僕の場合、音楽は素人だが、楽譜があれば、ほとんどの曲をメロディIC化できるようになった。
 ただし、単調なBEEP音のみで、複雑な音は鳴らせない。

 
 
ハード

 
    簡単回路図

GIF 450x450 8.65KB
   
 
組み立て例1

 
   
JPEG 300x200 13.4KB

 電源は006Pの9V電池を使用しているが、
 3端子レギュレーターを装備しているので、
 6〜15VのACアダプター使用でもOK。

 スピーカーは一般的なもの。
 
 
組み立て例2

 
   
JPEG 300x200 16.0KB

 28ピンのゼロプレッシャーICソケットを付けた状態

 新しい曲を打ち込みするときは、
 PICを頻繁に着脱するので、これを付けると便利。

 また、音量調整用のボリューム抵抗は、
 指でつまめる軸が付いているものを取付た。
 秋月電子通商の「密閉型基板用
 小型ボリューム10KΩB(5個入)100円」
 の軸を短くカットしたもの。
 
 
プリント基板例

 
    プリント基板図 → 【 こちら 】 PDF形式 A6縦サイズ 解像度1200dpi 154KB


部品実装図 → 【 こちら 】 GIF型式 600x400 46.3KB


 
 
ソフト

 
    次の5種類のチップに対応済み。

 12F629 テキストプログラム  B4_s629.txt 17.8 KB  ←【ダウンロード】
 B4_s629.src 17.8 KB  ←【ダウンロード】
アセンブル後  B4_s629.hex 6.14 KB  ←【ダウンロード】
 12F675 テキストプログラム  B4_s675.txt 17.8 KB  ←【ダウンロード】
 B4_s675.src 17.8 KB  ←【ダウンロード】
アセンブル後  B4_s675.hex 6.15 KB  ←【ダウンロード】
 12F683 テキストプログラム  B4_s683.txt 25.3 KB  ←【ダウンロード】
 B4_s683.src 25.3 KB  ←【ダウンロード】
アセンブル後  B4_s683.hex 10.9 KB  ←【ダウンロード】
 16F819 テキストプログラム  B4_s819.txt 17.8 KB  ←【ダウンロード】
 B4_s819.src 17.8 KB  ←【ダウンロード】
アセンブル後  B4_s819.hex 10.2 KB  ←【ダウンロード】
 16F88 テキストプログラム  B4_s88.txt 26.0 KB  ←【ダウンロード】
 B4_s88.src 26.0 KB  ←【ダウンロード】
アセンブル後  B4_s88.hex 10.9 KB  ←【ダウンロード】

 基板他、ハード部が出来上がったら、いずれかのチップに書き込みして装着する。

 電源を接続すると、「マイムマイム」の曲が鳴る。
 電源接続時にチャタリング発生などで鳴らない場合もあるが、その場合はリセットボタンを押して離すと鳴り始める。
 どのプロクラムでも、すべて「マイムマイム」が鳴る。

 基板例の基板では1曲目だけが鳴るようにしてある。

 
 
音符入力

 
   
音符入力説明書 → 【 こちら 】 PDF形式 A4サイズ横で300dpi 46.7 KB

 ※総音符数制限…449音符 (12F629と12F675は221音符まで)

 
 
音符データー集

 
    僕の打ち込み集で、今のところ18種類。

 各チップ
    共用
音符データー集  B4_DATA.txt 34.2 KB  ←【ダウンロード 】
 B4_DATA.src 34.2 KB  ←【ダウンロード 】


モニター募集で報告いただいた曲で、ブルさん 、ryuZoさん、セサミさんより。
 各チップ
    共用
音符データー集
(モニプレ報告)
 B4_MONIP.txt 7.05 KB  ←【ダウンロード 】
 B4_MONIP.src 7.05 KB  ←【ダウンロード 】


 
 
 
 
 
 
PICkit2使用によるISP(ユーザー基板に割り込んで書き込み)

 
     書込器PICkit2を購入したので、ISPを使用して、より手軽に曲の打ち込みができるようにする。

 今までの曲打ち込み方法は、ある程度のデーターを入力したところで、アセンブルし、PICに書込んで、PICを基板に装着して聴いてみる。
 ところが、「あれっ、音が外れているところがある!」という入力ミスがよくある。
 その場合、データーを打ち直し、再アセンブルし、PICに書き込んで…を 何回も繰り返して完成する。


 
 
作成した基板

 
    書込器とB4基板を一体にすると、PICを付け替える手間が省けて便利。
また、PICkit2には、アセンブルしたことを検出し、自動で書込、自動でプログラム実行する機能もある。

 
   
JPEG 300x300 20.3KB

 チップ部品を多用し、小さくまとめた。
 (左写真上の006P9V電池は大きさ比較用)

 選曲はショートピンを使用することにより、
 3曲まで選べるようにた。

 スピーカーはφ20mmだが、音程確認には十分。

 PICは12F683のSNパッケージを使用。
 ハンダ付けしてあるので、取り外しは簡単ではない。
 そのため、曲の打ち込みデーターが正しいかの
 確認専用ユニットとなる。
 
 
ハード

 
 
 ISPといっても、
特別な細工はない。
 
 
選曲

 このユニットの製作目的は、曲の打ち込みが正しいかの確認用なので、選曲は必要ないが、せっかくなので付けておいた。

 その選曲用のピンはGP4とGP5とした。3曲または4曲選択までとる。(00、01、10、11)

 チップ内部から弱プルアップし、何も接続しなければ、両ピン共"1"のビットになる。
 GNDにショートさせると"0"ビットになる。

 
 
プリント基板例

 
    プリント基板図 → 【 こちら 】 PDF形式 A6横サイズ 解像度1200dpi 72.4KB

部品実装図 → 【 こちら 】 GIF型式 450x200 25.4KB

 ほとんどの部品は、「秋月電子通商」から通販購入したものだが、アルミ電解コンデンサとスピーカーは「サトー電気」から通販購入したもの 。

 
 
ソフト

 
   

 PICKit2
ISP簡易B4
専用

テキストプログラム  B4_ISP.txt 22.3 KB  ←【ダウンロード 】
 B4_ISP.src 22.3 KB  ←【ダウンロード 】
アセンブル後  B4_ISP.hex 8.09 KB  ←【ダウンロード 】

 
 
使用方法

 
    PIC Kit2に作成した基板ユニットを差し込んで、パソコンのUSBに接続し、PIC Kit2 Programmerを起動さる。


GIF 400x460 45.3KB
 
   
@ "On"にチェックを付けると、
   ISP簡易B4ユニットに電源が供給されるので、ISP簡易B4ユニット上の青LEDが点灯する。

A "/MCLR"にチェックを付けると、
   MCLRに電圧は供給されない。すなわちプログラムは実行されない。
   チェックを外すとMCLRに電圧がかかり、プログラムが実行されるので、曲が鳴り始める。

B ISP簡易B4ユニットに供給する電圧を変更することができる。
   5.0〜2.5Vまで0.1V間隔で調整できる。電圧を下げていくと、音量とLEDの明るさが下がる。
   (2.5Vでも正常動作した。)
   ただし、PICに書込するときは、低い電圧設定だとエラーになり、書込できなかった。
   書込時は5Vにしておく必要があるようだ。

C 押しボタンになっていて、オン(押した状態)にしておくと、
   アセンブルを自動検知して、自動書込してくれる。
   具体的に詳しく説明すると、まず最初にボタンを押すとアセンブルするファイルを尋ねてくるので、
   たとえば"B4_ISP.Hex"を指定するとPICに書き込まる。鳴らしてみて
   データーに打ち込みミスがあったとして、プログラムファイルを修正し、再アセンブルしたとすると、
   アセンブルが終わった瞬間に、自動的にPICへの書込が始まる。
   @にチェックがあり、Aにチェックがなければ、書込終了後ただちにプログラムが実行され曲が鳴る。
   余談だが、DOS窓でアセンブルする場合、キーボードの"ファンクションの3"ボタンを押すと、
   前回打ち込んだ文字列が入るので、あとはエンターキーを押すだけになり便利である。

 
 
まとめ

 
    スピーカーカバーを製作して取付けた。

JPEG 270x180 10.7KB
 僕がPIC Kit2 を知ったのは、雨宿りの軒下 掲示板で ryuZoさんがモニプレ報告写真を掲載してくれたのがきっかけだった。

 おかげで未完成だった"森のクマさん"は容易に打ち込みすることができ、多少のアレンジをしてまーまー気に入ったものを完成することができた。

 今後もちょっとしたメロディを打ち込むのに便利に使っていこうと思っている。
 
               
 それから、ISP方式がとても便利であることが分かったし、PIC Kit2を通常の書き込み器として使用する場合でも、優れていることが分かった。

 
                             
 
 
  バイクでフローターフィッシングとキャンプ > ツール > PIC(ワンチップマイコン) > 電子オルゴール

 
  << トップページへ

   
inserted by FC2 system