正常動作時
前回まではwavファイルのデータをテキストに変換しCプログラムの配列としてハードコードしていたのだが、この方法は何かと不便だ。何か良い方法は無いか調べたところ、xilffsというドライバを使うとOSのないベアメタル環境でもFATフォーマットのSDカードの読み書きが出来ることが判った。そこで、 wav ファイルをFATフォーマットのSDカードに入れておいて、そこから順次メモリに読み込んで再生するように変更した。
xilffsを使うためには以下のようにBSPを設定する。


xilffsの使い方は、Vivado_SDKのインストールフォルダ下にexampleがある。


これを参考にして以下のようなプログラムにした。

この様にして色々な曲調のデータを再生させてみている。
表示されるスペクトルの変化と音の変化がほぼ完璧に同期している。また、これは思い込みかも知れないけど、スペクトルの変化具合・・・というか絵から受ける印象も曲調に一致しているようで、なかなか面白い。
そんな感じで色々な曲を連続再生して見ていたら問題が見つかった。

0 件のコメント:
コメントを投稿