今回はWT32とTLV320AIC3253をつなげるプロジェクトなんですが、ちょっと寄り道して、W-SIMとTLV320AIC3253をつなげることができるかどうかを実験してみたくなりました。
W-SIMからの音声信号はu-Lawで圧縮されているため、、これをリニアPCMに変換しないと通常のオーディオCODECとつなげることはできません。一方、ML7041のようなCODECは電話機用に設計されたものなので、u-LawとのEncode/Decode機能を内蔵しておりW-SIMと直接接続することができます。今回利用するTLV320AIC3253にはminiDSPが内蔵されていますので、このminiDSPをプログラムしてやることでu-LawのEncode/Decode機能を持たせることが可能なようです。
実験のために、ボード上にW-SIMのソケットを載せました。WT32とUARTでの制御信号ならびにI2S信号を共有するため、W-SIMとWT32は排他的にしか使用しないことにします。

ハード的にはこれだけでいいと思うので、後はソフトの準備です。TLV320AIC3253のminiDSPをプログラムするには、PurePath Studioというソフトが用意されているので、これを使ってminiDSPのコードを生成してやります。生成したコードは、I2Cを経由してTLV320AIC2353にダウンロードするという仕組みになっています。PurePath Studioの出力するコードは、基本的にはTIの評価ボードを使うことを想定しているようで、わたしの実験ボードで使用するにためには初期化コードを変更してやる必要がありそうです。現在、どのように変更すればいいのかを調査中です。
W-SIMからの音声信号はu-Lawで圧縮されているため、、これをリニアPCMに変換しないと通常のオーディオCODECとつなげることはできません。一方、ML7041のようなCODECは電話機用に設計されたものなので、u-LawとのEncode/Decode機能を内蔵しておりW-SIMと直接接続することができます。今回利用するTLV320AIC3253にはminiDSPが内蔵されていますので、このminiDSPをプログラムしてやることでu-LawのEncode/Decode機能を持たせることが可能なようです。
実験のために、ボード上にW-SIMのソケットを載せました。WT32とUARTでの制御信号ならびにI2S信号を共有するため、W-SIMとWT32は排他的にしか使用しないことにします。

ハード的にはこれだけでいいと思うので、後はソフトの準備です。TLV320AIC3253のminiDSPをプログラムするには、PurePath Studioというソフトが用意されているので、これを使ってminiDSPのコードを生成してやります。生成したコードは、I2Cを経由してTLV320AIC2353にダウンロードするという仕組みになっています。PurePath Studioの出力するコードは、基本的にはTIの評価ボードを使うことを想定しているようで、わたしの実験ボードで使用するにためには初期化コードを変更してやる必要がありそうです。現在、どのように変更すればいいのかを調査中です。