2012年3月14日水曜日

mbed+VS1002(VS1033D)+☆Bord・OrangeでMP3再生

mbed+VS1002+☆Bord・OrangeでSDカード内のMP3ファイルを再生してみました。
プログラムはこれです↓
http://mbed.org/users/nameless129/programs/MP3_player_on_Orange/m6vq1p

Arduino MP3プレイヤーシールド向けのプログラムを利用しました。
MP3のデコードはmbed単体では不可能なのでVS1002を利用しています。
これは何かというと、MP3ファイルをデコードしてくれるICです。
SDカードのMP3ファイルのデータを転送するだけで勝手にオーディオ信号にデコードしてくれます。
今回は千石で購入したVS1033Dを利用していますが、VS1002と互換性があるので特にプログラムの
変更はありません。
(とはいえVS1002の勉強用にコードを集めただけなので詳しいことはしっかり理解できていません...

プログラムの動作としてはルートフォルダ内のMP3ファイルを最大25個まで連続で再生します。
半角英数のファイル名をつけたMP3で再生ができることを確認しています。
2バイト文字が含まれるMP3ファイルは実験していないので不明ですが、再生できない可能性があります。

2012年3月11日日曜日

mbed+☆board Orange+SDでwavファイル再生

ずっと放置してました。サーセン
PICでSDからデータ読みだしてwavファイル再生できるものを作成していたんですが、
昨日Pickit3が壊れてしまったのでmbedで遊んでました。

んで、日本語で書かれた解説があまりなかったのでwav再生に関するまとめです。
プロジェクト一式がこれ↓
http://mbed.org/users/nameless129/programs/wav_pleyer_on_Orange/m6p2a9

☆board Orangeの評価用プログラムとwave_playerを使わせてもらっています。
sdカードに保存されているtest.wavを再生するだけのプログラムですね。

ただ、wave_playerで対応しているwavファイルの形式がよくわからないです。
ソースコードを見るかぎり22kHzでサンプリングしているwavファイルなら再生できそう?
だったので実験してみました。
結果は以下のとおり



ビット数


8bit 16bit 32bit
サンプ

ング周波数
44.1kHz × - -
32kHz × -
22kHz × ×
16kHz ×
8kHz ×
評価基準としては音楽のスピードが正しく再生されているかどうかです。
音質は基準にしていないです。
結果から考えると、どうやらデータ転送が間に合わなくなるみたいです。
音質はあまりよろしくないですね。

次はMP3デコードICも手元にあるので、MP3再生に挑戦するかもしれないです。

2011年2月19日土曜日

自作モータドライバプロジェクト:その2

昨日に引き続き自作モータドライバプロジェクトですよ。

昨日から部品の選定やっていたのですが、当初使う予定であった秋月の
フォトカプラ(TLP521-4)の立下り時間が25usと結構長いことが判明。
同じく秋月にてTLP351を発見。立上がり・立下り共に50nsで
しかもMOSFET向けとGOODなんですが、1つのMOSFETしか
制御できないのと1つ100円と少々お高いなーと。

なのでトランジスタアレイ(TD62083AP)を使おうかなと。
立下り0.2usとフォトカプラより早いんで十分かな?
以下回路図

http://srd.s43.xrea.com/circuit_learning/motordrive.shtml
を参考にさせていただきました。

回路図ではNchをドライブするトランジスタをプルアップしていますけど、
書いてる途中で意味ないじゃんってことに気付いたんでナシです。

ちなみにまだブレッドボードとかで実験していません。
これ作ってみたらFETバーニングしたぞとかなっても俺は知りません。

2011年2月18日金曜日

自作モータドライバプロジェクト:その1

うちの部活ではDCモータをH8マイコンで制御しているんです。
普通はTOSHIBA TA8429Hを使っています、
しかし、走行用モータや大電流を消費するモータでは定格の3Aを超えてしまい、
ちゃんとモータ動かなかったり、めちゃくちゃ発熱してそのうちドライバがダメになったり。

そこでマイコンカーラリーのモータードライバ基板のFETスイッチング信号を、
別な基板に取り付けているパワーMOSFETにつないで使うというちょっと強引な使い方しています。^^;
が、モータードライバ基板が1枚2500円と安くなく、基板から引き出す信号線が振動で断線してしまい、
FETがバーニングしちゃったり。(1年の頃に2回経験。すげぇ怖い((((('A`;))))) )

そこで卒業する前に自作ドライブ基板を作ろうというわけです。
構想としては、モータードライバの遅延回路も含めた働きをPICに置き換えることです。
PICに置き換えることにより・・・
・部品点数少なくなるので組み立てが楽・コストも安くなる
・故障した場合でも原因特定しやすくなる(はず)
・I2Cやシリアル通信させれば配線が少なくなる

こんなことができればいいなーっていう妄想半分なんですけどねー。
部品の検討はまた今度。
その2に続く

2011年1月12日水曜日

STM32 Primer2で遊んでみた



秋月にてSTM32 Primer2なるプロトタイピングツールを買ってみました。
こういう液晶とか組み込んである物をいじるのは初めてだったりするので
なにができるかwktkしておりますw

とりあえず標準で入っているプログラムについてメモ
・Maze
ほぼパッ○マン
傾けて移動させたりできるが、マップの判定が厳しく、T路地を曲がれなかったり

・Breakout
ブロック崩し
こちらも傾けてバーを移動できる

・Sol8air
ソリティア・フリーセルができる

・MP3 Play
microSDに保存されているmp3もしくはwavファイルを再生できる
ヘッドホンジャックからの出力のみ
手持ちのmp3ではなぜか再生できなかったがLIFEにて再エンコしたら再生可能に

・Tuner
内蔵マイクから拾った音のコードを表示したりオシロスコープとスペクトルアナライザの
波形を表示する

・Rec.Wav
そのまんま
内蔵マイクでmicroSDに音をwav形式で録音

・gobang
五目並べができるが、操作方法が本体を傾けてカーソルを移動させるだけなのでやり辛い

・Square
ピンクのブロックを傾けて移動させて赤いブロックに当たらないよう移動しつつ
小さいピンクと黒のブロックを集めてポイントを稼ぐゲーム

・Graphics
図形描画のデモ

・Kaleidos
傾けると万華鏡を再現するように絵柄が変わる

・Laby2d
迷路ゲーム
傾けて迷路を進んでいくが、63X56マスなんて小さすぎてとてもじゃないができない

・Chess
そのまんま

・MOUSE
Primer2をマウスとして使えるアプリ
本体を傾けることでマウスカーソルを移動できる

・Cubic-4
本体の傾き具合を表示するアプリ

・Mandel
画像表示アプリ?

・NRGMeter
万歩計・・・?
振りまくるとコップの水っぽいのがどんどん増えていく
下に出てるのは歩いたときの消費カロリー?

・Chart
X・Y軸と温度のグラフを表示

・COMMTEST
自己診断機能っぽい

・EchoIrDA
赤外線通信のチェックっぽい
TVリモコン向けてボタン押すとなにかしら受信している

2011年1月1日土曜日

新年明けましておめでとうございます

なんもないブログですが今年もよろしくお願いいたします
今年の抱負としては4月に神奈川へ引越し一人暮らしになるので
上手に生活できるようになればいいな~とw

今後の予定としては・・・
STM32 Primer2とH8LANボード(共に秋月)にて買ったのでなにか使おうかなーと
しかし使い道も考えずに買っちゃったもんでネタがありませぬ
誰か授けてくださいましorz