この二ヶ月ぐらい寝ても覚めても考えていた、やってみたかったAK4490のシリアルモードによる設定と動作
学校で習った16進数と2進数などとっくの昔に忘れ去り不眠症の霞がかった頭を絞りに絞った(笑)
ついに出来た!!マイコン屋さんのように出来る人からみれば下らない事なのかもしれない。
マイコンを使用せずLinuxのシェルレベルからI2S通信でレジスタへの書き込みを行って
音を出して且つ色々な制御をする...理屈では出来るはずだったがやってみると意外に難関であった。
旭化成のカタログを読んでそれらしい?値を書き込んでみても雑音さえしない情けない状態がかなり続いた
だがしかしズルを思いついた。他のシリアルモードで音が出ている状態でのDAC_ICの内部設定が読めればと(笑)
やったことがあればおわかりだと思うがI2Cの仕様でマスターからしか作業はいっさい出来ない様になっている。
I2Cにラズパイを繋いでもディテクト出来ない。..これで悩んでいた。待てよと...音が出た後にマスターになっている
XMOSをそっとはずしてラズパイを繋げるとダンプ出来た!!!それと同じ状態をラズパイのコマンドで書き込んでみると
見事に音が出た!!嬉しい!!知識の有る方に質問してもある方にははぐらかされ、ある方はアンタには分からんとバカにされ
絶対出来るはずとの妄念に突き動かされて音が出るところまで来た。C言語もコンパイルもいらない。
PICも出来なくても大丈夫(笑)
コマンドを打つ事で実現できる。ある程度設定が見えたらシェルスクリプトを書けば終わり!!
画像はDIYINHKのXMOSから切り離してラズパイのI2C通信端子を引っ張り出して繋いだ状態です。
それでも次の段階ではマイコンボード「Arduino Uno R3」を購入してラズパイを組み込まない場合にも
対応出来るようにノウハウを得るつもりです。
DIYINHK製のDAC基板をもう一枚購入すればデュアルモノだって可能になるかも(^_^;)!!!
ラズパイからI2C通信で設定を行う。
もちろんXMOS基板からのI2C通信の配線はしていない(笑)
I2C 設定 通信 AK4490
Comments