■ 鉄道模型用 MP3 サウンド・ユニットの製作 ■


 鉄道模型の楽しみ方は、町並みや風景を再現してレイアウトを作り、お気に入りの列車を走らせるのが醍醐味ですが、さらにリアリティーを追求すると、警笛や踏切音などのサウンドが欲しくなります。
 メーカー品の、十数万円もするコントローラーには、サウンド機能が付いているようですが、電車でGO! コントローラの製作中に、ゲーム内ではコントローラーのボタンにより警笛が鳴らせるようなので、これを再現してみたくなりました。
 
 また、ちょうどSDカードとMP3再生キットのテストも良好だったので、SDカードに書き込んだ音を、任意のスイッチに割り当てて、鳴らすことができるようにしました。

   電車でGO! コントローラに
   接続して制御できます。


回路の概要
 
1.AVRとクロック
 
 ・SDカードのファイルを読み書きするために、AVR-DOSを使用したので、AVRはATmega644Pを
  選択し、クロックは19.6608MHzのクリスタルを使用しています。
 ・19.6608MHzは、手持ちのボーレイト用クリスタルなので、20MHzでも問題ありません

2.SD/MMCカード接続回路
 
 ・「AVRに SD/MMCカード・スロットを接続」のページを参照して下さい。

3.MP3 モジュール・キット接続回路
 
 ・「AVRに EasyMP3 モジュール・キット(VS1011B) を接続」のページを参照して下さい。

4.キャラクタLCDモジュール
 
 ・秋月電子の、超小型LCDキャラクタディスプレイモジュール(16x2行バックライト・オレンジ) を
  定番の回路構成で使用しています。 [SD1602HUOB(-XA-G-R)]

5.スイッチ及び外部制御端子回路
 
 ・スイッチと外部制御端子は、同じポートに接続し、イネーブル信号によって、読み込みを
  切り換えています。

5.内蔵オーディオアンプ
 
 ・使用していなかった、古いTA8202K 2.9Wx2 ステレオアンプ・キットを使用しました。
 ・内蔵アンプは、スイッチにより電源をオフにできるので、外部オーディオ出力端子に、アンプと
  スピーカーを接続することもできます。

5.電源回路
 
 ・オーディオアンプに9Vの電源が必要なので、9V1.3AのACアダプターと、5Vの3端子
  レギュレータを使用しています。



プログラムについて
 
 ・AVR用BASICコンパイラ、BASCOM-AVR 製品版を使用しています。
 
 ・下記2つのファイルも、プログラムと同じ場所に保存して下さい。
 
SD/MMCカードのピン設定プログラム Config_MMC_EasyMP3.bas
AVR-DOSの設定プログラム CONFIG_AVR-DOS_JP.bas

 
 ・プログラムは、「サウンド・ユニット・モード」、「キー割り当てモード」、「MP3プレーヤー・モード」の
  3つの処理があります。

 ・「サウンド・ユニット・モード」は、押されたキーまたは外部制御端子により、それぞれのキーに
  割り当てられたMP3ファイルを、1つ再生して停止します。
 
 ・「キー割り当てモード」は、それぞれのキーに、再生するMP3ファイルを割り当てます。
 
 ・「MP3プレーヤー・モード」では、鉄道模型用途以外に、SDカードに入れたMP3音楽ファイルを、
  順番に再生することができます。

 ・SDカードのフォーマットは、FAT16とFAT32に対応しています。
 ・MP3のファイル名は、ファイル名 8文字+拡張子MP3 に対応しています。 (XXXXXXXX.MP3)
 
 ・音量調節は、ボリュームがBカーブのため、プログラムで簡易的に自然対数に変換しています。



AVRマイコン ATmega644Pの、ヒューズ ビット書き換え
 
・AVR ATmega644Pのシステム クロックは、工場出荷時に内蔵RC発振器の8MHzで、1/8前置
分周器がONに設定されているので、外部のクリスタルを使用するには、AVRのヒューズ ビットを
書き換える必要があります。
 
・また、JTAGインターフェイスが許可になっているので、無効に書き換えます。

下記ページの書き換え方法 「6.」を、以下の様に変更して、ヒューズ ビットの書き換えを行います。

    ヒューズ ビット書き換え

 6.[ Fusebit C ] の右欄 [ 0:Division by 8 enabled ] をクリックすると、右側にプルダウン
   メニューが現れますから、 [ 1:Division by 8 disabled ] を選択します。
 
   [ Fusebit KLA987 ] の右欄 [ 100010:Int. RC Osc.; Start-up time: 6 CK + 65 ms ] を
   クリックすると、右側にプルダウンメニューが現れますから、
   [ 110111:Full Swing Oscillator; Start-up time: 16K CK + 65 ms; Crystal Osc.;
       slowly rising power
] を選択します。
 
   [ Fusebit High H ] の右欄 [ 0:JTAG enabled[portc.2-portc.5 not usable] ] を
   クリックすると、右側にプルダウンメニューが現れますから、[ 1:JTAG disabled ] を
   選択します。
 


回 路 図  GIF版 NgSUnCir.gif (276KB)  PDF版 NgSUnCir.pdf (353KB)

部品配置図  GIF版 NgSUnPcb.gif (219KB)
   注意! この図面を使用した、いかなる損害にも責任を負いません。 

プログラム  テキスト形式 ソースファイル  NgSUn101.TXT (32KB)
 BASCOM-AVR用 ソースファイル  NgSUn101.bas (32KB)
 インテルHEX形式 オブジェクトファイル  NgSUn101.HEX (35KB)
 
注意! 著作権は放棄しておりませんので、販売や配布目的での使用は絶対にしないで下さい。




 
 前面

 
 右側面

 
 後面

 
  左側面

 
基板 部品面

 
基板 ハンダ面

 
SD・MP3ユニット

 
基板実装ケース上面

 
ケース内部 上面

 
ケース内部 前面

 
基板実装ケース前面

 
基板実装ケース後面


操作方法
 
1.電源投入
 
  ・電源を入れる前に、必ずSDカードを入れます。
   (SDカードが無い場合は、LCDにエラーメッセージを表示し停止しますので、電源を切ってから
    カードを挿入して下さい)
  ・SDカードのフォーマットは、FAT16とFAT32に対応しています。
 
  ・いずれのキーも押さずに電源を入れると、「サウンド・ユニット・モード」になります。
  ・[停止]キーを押しながら電源を入れると、「MP3プレーヤー・モード」になります。

 
2.「サウンド・ユニット・モード」
 
  ・LCDに、「サウンド・ユニット・モード」のタイトルと、プログラム・バージョンが表示されます。
  ・SDカードにMP3ファイルが無い場合は、LCDにエラーメッセージを表示し、停止します。
 
     

  ・1〜8のキー、または外部制御端子の信号により、割り当てられているMP3ファイルが
   再生されます。
  ・LCDに、押されたキー番号、または外部制御端子名と、割り当てられているファイル名、
   再生時間が表示されます。
 
     

  ・再生中に新たなキーが押されると、再生を中断して、新しいファイルの再生を開始します。
  ・停止キーが押されると、再生を中断します。
 
 
3.「キー割り当てモード」
 
  ・「サウンド・ユニット・モード」の停止中に、[停止]キーを押しながら、[8]キーを押すと、
   「キー割り当てモード」に入り、LCDの右上に「セッテイ」の文字が表示されます。
 
     

  ・[1]〜[8]のキーが、下記の動作に変わります。
 
前Key 1〜8のキー、または外部制御端子の選択を、1つ前に戻します。
次Key 1〜8のキー、または外部制御端子の選択を、1つ進めます。
前曲 キーに割り当てる、SDカード内のファイル名を、1つ前に戻します。
次曲 キーに割り当てる、SDカード内のファイル名を、1つ進めます。
再生 選択されているファイルを、試聴します。
   
停止 試聴を終了します。
   

  ・MP3のファイル名は、ファイル名 8文字+拡張子MP3 に対応しています。 (XXXXXXXX.MP3)
   (8文字以上のファイル名は、省略した形で表示されます)
   (日本語のファイル名は表示できません)
   (拡張子が.MP3以外のファイルは無視されます)

  ・[停止]キーを押すと、「キー割り当てモード」を終了し、「サウンド・ユニット・モード」に戻ります。
  ・終了時に、キーの割り当て情報をSDカードに記録しますので、SDカードを交換しても、
   カードごとに設定されたキーの割り当てが再現されます。

 
4.「MP3プレーヤー・モード」
 
  ・「MP3プレーヤー・モード」に入ると、カード内のMP3ファイルの総数を検索し、3桁で
   「Total:XXX」と表示します。
   (SDカードにMP3ファイルが無い場合は、エラーメッセージを表示し停止しますので、
    電源を切ってから、カードを確認して下さい)
 
     

  ・[1]〜[8]のキーが、下記の動作に変わります。
 
   
   
前曲 停止中は、前曲の曲番号とファイル名が表示されます。
再生中は、前曲の最初から再生が始まります。
次曲 停止中は、次曲の曲番号とファイル名が表示されます。
再生中は、次曲の最初から再生が始まります。
再生 LCDに表示されている、左上の曲番号および2行目のファイル名の曲が
再生されます。
一時停止 再生中に押されると、再生を一時停止し、再度押されると、再生を再開します。
停止 再生を中断し、再生時間表示位置が「STOP」の表示に変わります。
   
 
  ・MP3のファイル名は、ファイル名 8文字+拡張子MP3 に対応しています。 (XXXXXXXX.MP3)
   (8文字以上のファイル名は、省略した形で表示されます)
   (日本語のファイル名は表示できません)
   (拡張子が.MP3以外のファイルは無視されます)

  ・カード内のMP3ファイルは、ディレクトリの並び順に再生されます。
  ・最後の曲の再生が終わると、最初の曲へリピートします。



○パーツの参考資料
 ・基板  「秋月電子」 片面ユニバーサル基板 Eタイプ (138x95mm)
 ・ケース  「リード」  PL−3 W95xD140xH60mm
 ・スピーカー  「秋月電子」 70×40mm スピーカー・ユニット
 ・ACアダプター  「秋月電子」 9V 1.3A


   電子工作の部屋 Top へ 前のページへ戻る