https://github.com/ryood/TDA1543/tree/master/PSoC/I2S_Test/PrototypingKit_DDS.cydsn
前回、DDSで波形を生成したとき10kHzのサイン波がブレブレだったのはDMAの転送元のバッファの書き換えがI2Sの送信に追いついていないのが原因だったようだ。
バッファを2ch分でなく同一のものを参照するようにしたらブレはなくなった。
10kHz
100kHz
129.8kHz
LPFを入れていないのでガタガタはあいかわらずですが。
I2Sのクロックは9MHzにしたのでサンプリングレートは9MHz/32(bit)=281.25kHzだが、PSoC 5LPの内蔵クロックの誤差を測定してSampling Rateを279658Hzに設定した。
129.8kHzの測定はこのサンプリングレートの1/2の周波数をDDSで出力したもので矩形波になっている。
このままTDA1543でLPFを入れるか、PCM5102AにするかわからないがDDSで波形を生成する方向でやってみようと思う。
0 件のコメント:
コメントを投稿