「さ~ボード」プロジェクト(4)ー オーディオスペアナ用チップの応用

複数チャンネルのバンドパスフィルタを簡単に扱う方法がないか、考えるうち思いついたのがオーディオ用のスペクトラムアナライザでした。かつてステレオコンポやカラオケ機に装備されていた、音程ごとの音量を棒グラフのように表示するあれです。

あれはオーディオ信号を一定の周波数幅ごとにフィルタで分離して、既定の周波数の信号レベルを出力しているはずです。たぶん専用のチップがあるのではないか、とググってみたところMSGEQ7というチップがヒットしました。スイッチサイエンスさんで扱っているので入手も簡単そうです。データシートによれば7チャンネルのフィルタがあり、特性も良さそうに見えます。

https://www.switch-science.com/catalog/585/

同じくデータシートにあるリファレンスの回路図を見ると、周辺部品の点数も少なく、わずかな部品で7チャンネルのフィルタが作れ、今回のアイデアにはうってつけのチップのように思えます。

このチップには出力が1端子しかありません。7チャンネル分の信号レベルを出力するためマルチプレクサで多重化し、一定の間隔で1~7チャンネルの信号レベルを順番に出力する仕様です。

100nS以上のパルス幅のリセット信号に続いて、18μS以上の幅のストローブ信号を72μS以上の周期で与えると、出力からはストローブ信号と同じ周期で、1~7チャンネルの信号レベルが順番に出力されます。

データシートによると、入力のオーディオ信号レベル0~0.3Vppに対して、出力信号は0~+4Vの範囲で変化します。ArduinoやAVRマイコンのアナログ入力は0~+5Vの範囲で使用できますので、別にアンプを用意する必要もありません。これもうってつけです。

ストローブやリセット信号もマイコンで生成してやる必要がありそうです。さらにググってみますと、まさにこのチップでオーディオスペアナを自作された方がおられましたので、ストローブ生成のタイミングなどを参考にさせて頂きました。

http://neocat.hatenablog.com/entry/20110919/1316387225