goo blog サービス終了のお知らせ 

ず~っと母島

小笠原旅行と趣味(オーディオ,カメラ,自転車)

Seeed XIAO RP2040(pico互換)で64fs I2S出力成功

2022-06-29 22:32:00 | オーディオ
Seeed XIAO RP2040(ラズパイpico互換)にてI2Sを出力する件
無理矢理64fs化して出力成功

具体的にはaudio_i2s.pioで16回繰り返すとこを32回繰り返すようにし、受け取ったデータの16個以降はsetコマンドでゼロを埋めるようにしました
あと、audio_i2s.cで、周波数を倍にするためにdividerを0.5掛け



さて、何が悪かったのか
ヘッドホンでモニタしても音が聴こえず、TDA1543がI2Sを認識していないと思い込みました
しかし、ふと最大ボリュームにしたらかすかに音が聴こえます!
ん? ボリュームミニマムにコントロールされてね? とソースを疑います

追いかけるとUSBパケットでボリューム制御信号を拾ってビット演算してる様子


ふとM1をみるとボリュームがゼロだったので最大の100にする



音が出たー!
ということで、音源設定のせいでした m(__)m

従い、オリジナルソースもたかじんさんソースもきちんと動作し、音が出ています

しかしながら、ときたま途切れるような挙動がありますので実用まではまだまだ
多分クロックの分周計算あたりで無理があるんじゃないかな?と推測
そして、TDA1543には64fs不要なので無駄なことをしました

32fsでいいなら、たかじんさんソースを少しいじってみることにしましょう


bckが途切れる件で対策したエレホビカさんのページを参考にしてみましょう


というわけで、続く!
コメント    この記事についてブログを書く
« ラズパイ初代のI2S波形 | トップ | 猛暑の中、粋な一生さんで味... »
最新の画像もっと見る

コメントを投稿