「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



前々から、音声出力回路についていろいろ考えて
いました。

デジタルの音声データをアナログ出力するっていうと
DA変換回路が必要になるわけですが、その中で
お手軽なものっていうとR-2Rラダーとか
重み付け抵抗回路とかが挙がりますが、当然
精度は低く、せいぜい5~6ビット程度まで
というのがいいところでしょう。


一方、音声信号なら、扱う周波数がそんなに高くない
のでPWMで出力できる範疇だし、LPFを通せば
人の耳にはそれなりにちゃんと聞こえるので、
音声をお手軽にDA変換するのにはPWMが便利。

得られる波形も理論上はゼロクロス歪みもほぼ
ゼロ(のはず)だし、リニアリティーも極めて
高いし。クリスタルの発振精度に依存するからね…。

ところが、AVR程度のマイコン、つまり20Mhz
程度のクロックでは、16ビットタイマーを使って
PWM出力させるとせいぜい300sps程度。
つまり150Hz程度しか再生できない計算…
( ̄〆 ̄)

音声データといえば、CD-DAなら16ビット
ですし、その程度の精度が出せれば個人的には
満足なんですが、1ビットDAの専用ICとか
使うのはちょっと癪。

8ビット~9ビット程度の精度にしてしまえば
20Mhz程度のマイコンでも20000hz
程度までは普通に出せるんだけど、それじゃぁ
期待値以下。

TINY861なら内蔵PLLを使って10~11ビット
程度のPWM出力ができるんだけど…うーん、
ちょっと惜しい…


一方、最近流行り(?)のDクラスアンプなど
を見ていると、いわゆるPWMを応用して
歪みの低減やパワーロスの改善をしているっぽい
感じなので、その手のアンプは何か上手い方法を
使っているんだろうな…どんなことしてるんだろう?

っていうのが最近のオイラの素朴な疑問でした。


で、ふと今日あるアイデアを思いつきました。
さっき自転車漕ぎながら頭の中で計算してみた
だけなのでなんともいえないんだけど、
音声信号の16ビット精度程度のDA変換なら
なんとかなるんじゃないかな?と思えて
きました。

あとで紙の上でちゃんと計算しなおしてみよう…
使えると面白いアイデアなんだけどな…。
(例によって、普通に手に入る部品だけで
 その手のことをやっちゃおうっていう
 作戦です)

どうなることやら…

それにしても、市販の1ビットDAコンバータとか
Dクラスアンプとかって、どんな処理してるんだろう?
単純にPWMで40000Hzの16ビットを出そう
とすると2.6Ghzが必要になっちゃうんだけど、
まさかそんなねぇ…



コメント ( 0 )
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする




この間作ったmega128のCPUボード。


まぁ、CPUボードといってもdaisenのピッチ
変換基板を使っただけの簡単なものなので、
見た目どおり外部への端子を1本1本繋がないと
いけない状態。クロック源すら登載してません。

jtag端子を上手い具合にくっつけたいんだけど…
と画策してました。

wsNakのmega128用CPUボード基板はボード上に
ISP端子はあるものの、debugwireでは繋げないから
jtag端子を別途設けないとICEができません。

wsNakのボードっぽいデザインのものを自作しようかと
思ったんだけど、さすがにカメレオンレジストの
片面基板であれこれ機能を盛り込むのはキビシイ…。
何しろ64ピンのCPUだからなぁ…。


ってことで、色々考えた結果、例によって秋月の
連結フレームをまたしても活用しちゃおうって
いうお話。

連結フレームを使って2階建てのボードにしちゃって、
その2階部分にjtag端子などをサクッと載せちゃう
という作戦。

jtag端子だけじゃなくて、発振回路やADコン周りの
ピンなども登載できるようにしたり、さらにはこれを
単独で使うケースだけじゃなく、マザーボードに
このCPUボードを挿して使う様な場合もマザー上に
jtag端子のスペースを載せなくていいように、
色々切り替えが効いて機能間でバッティングしない様な
工夫を検討中。

こうして考えているうちは楽しいんだけど、
出来上がると
  「あぁ、あれも盛り込んでおけば…」
みたいな話は不思議と尽きないんだけどね…。


でもまぁ、現時点の構想ではこのCPUボードより
ひとまわり大きい程度で出来ちゃいそうだから、
あとは回路をちゃんと描いて行くだけだな。

久々にPCBEだな。



コメント ( 0 )
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする




http://headlines.yahoo.co.jp/hl?a=20090629-00000593-san-soci.view-000

ガンダムに引き続き、今度は鉄人28号が原寸大
みたい。

うーん、違うんだよなぁ…

ヤマトの第1艦橋なんだよ。オイラが見たいのは!



コメント ( 0 )
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする




コメを噛めさんのブログから、sa89a.netさん
USB-Blasterもどきというものがあることを知る。

18F2550を1個だけで…こりゃ便利だな。

おいらはこの間パラレル経由のbyteblaster
作っちゃったばかりだからすぐには手を出さない
にしても、そのうち作ってみたいところだな。

そういえば、クロック源はセラロック20Mhzに
なっているけど、USBってセラロックでちゃんと
動くのかな?

速度が少し遅いっぽいことが書かれていますが、
全然気にしません。書き込みに何時間も何日も
かかるっていう訳じゃないんだし。
凄くイイカンジです。

制作費約1000円っていうのもいいですね。


実験に使っているのは、おいらがこの間買ってきた
オプティマイズのMAX2CPLDボードと一緒
ですね。それはなにしろ安心です。


(有)ヒューマンデータさんの実験によると、
ASモードもOKですか。うーん、べんりだな。

この程度の回路ならいちいちプリント基板起こさ
なくても、ユニバーサル基板でもそれほど
苦労しないでしょう。
オプティマイズのMAX2基板とあわせたら、
入門用としてイイカンジかも。



コメント ( 0 )
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする




いつか出てくるだろうと思ってたんだけど、
秋月の通販サイトにATMEGA168P-20PUが登場!

http://akizukidenshi.com/catalog/g/gI-03033/

mega168ではなくピコパワー版のmega168Pなのね…。
まぁ、arduinoとして使う分には特に問題はない
でしょう。なにより300円って言うのはグーだな。

14個なら単価270円か。どうせ使いそうだから、
まとめて買っちゃっても良いかも。

duemilanoveからはmega328に移りつつある感じ
だけど、おいらならmega168でも容量が充分だし、
arduinoに限らず色々使えて便利なパッケージ
だから、たくさん置いておいても困らない
代物だな。


と、似たようなことを考えて以前mega8やmega48
を大量に買いこんだまま道具箱にまだ結構
残っているのは忘れたことにしよう…(^_^;)




コメント ( 0 )
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする



« 前ページ