SSM2518 note
AnalogDevices SSM2518 ClassDアンプ
Standaloneモードという名のハードウェアモードがあるから、ワンチャンでマイコン使わなくても行ける?とか思ったんだけどそうでもなかった。
BM64からLRCLKとBCLKとDATA渡せば音が鳴るのかと思ったのだが、出力してる感じがない。
MCLKをなんとかしなといけないのか…
----
やっと音が出た。
BM64のBCLK(=SCLK0)をMCLKに繋ぐ
SSM2518をI2CからMCLKを64×fsにする
NO_BCLKのビット設定しなくてもいい。
MCLKにクロックが来てないと音は出ない。
MCLKがあってないと音が出ない。BM64は64×fs(64×44100=2.822MHz)が出てくる
BM64のデータシートに64×fs/256×fsとあるが、何を言ってるのか分からない。Microchipもデータシートのイミフが多い
1つ問題→解決
BM64がペアリング中~ペアリング後に音が出てない状況で、BM64のBCLKから謎の512KHzのパルスが流れてくる
SSM2518がそいつを受けるとスピーカーからジャーというノイズが出て困る。
どうするべきか…
UITOOL弄ってもなんか改善するものがなさそう。
MCLK/BCLKが2MHz以下ならSSM2518をミュートするしかなさそう?
----
I2Sってそのままシリーズにしても大丈夫なんだな。
そのままマイコンに行っても大丈夫か…たぶん。
---
周波数取得するのにSCT使えるなーと思ってたんだけど、LPC1114持ってないのね。
仕方がないのでLPC812を飛ばして811を載せたEVMを取り出してきた。
今のところSSM2518の初期化しかしてないのに、I2C UART SCT MRTでもう7k近く埋まってて、LPC812にしないと無理かなー。
FLASH32KB使えるLPC824を扱って欲しいです。マルツさん 秋月さん
肝心の周波数取得ですが、SCT複雑すぎて1日使ったけど、仕組みをよく理解できてない。けど、取得も判別もできた。
---
UART周りを触りだして、コネクションのステータス解読してて、BCLK512KHz問題が解決した。
VoiceSRCをEnにして48KHzにアップサンプリングすればいいことに結論づいた。
通話をアップサンプル?いらないでしょと思って切ったんだけども。
頑張ったSCTはサヨナラだ
---
あとやることは、ボリューム操作。
効かないというか、I2Sで出すとBM64のゲイン調整は通らないようなので、UARTでVOL操作を見てSSM2518を叩く。
そうするとボリューム値は、どこに保存するべきか考えないと...
--
UARTのデータ受け取りがどうもうまくいかなくて、詰まってる
マイコン変えなきゃ…
---
UARTがもたもたするのってこっちからACK返してないのが原因だった。
プレイヤーからの音量調整できた。
マイコンも変えて、後はEEPROMを叩く
やること整理
・電源入れたときにペアリングON
・オート電源オフ
・A2DPのSBC/bitpoolがみたい→見れない。設定はできる
BTM_Parameter_Setting (0x07)
・BTのリンク状態を見たい
Read_Linked_Device_Information (0x16)
---
・ディスプレイに表示したい
・