
ALEというと、私の心の中では40年以上前から不動のAddress Latch Enableであります。しかし今回は、Adaptive Line Enhancer、適応線スペクトル強調器なんであります。適応フィルタの応用であります。信号処理素人の私にとっては適応と聞いただけで恐れいってしまうのですが。大丈夫か。
デバイス作る人>>デバイス使う人>>デバイスおたく
前回まではダウンサンプリング処理でした。今回アップサンプリングに入るのですが、新たな実習用のサンプルプログラムはありません。毎度お世話になっているDA変換による出力処理のところで4倍アップサンプリングしてきたからです。仕方がないので珍しくOctaveを取り出してきて4倍のアップサンプリング処理をやってお茶を濁した、と。
前回は教科書のプログラムをそのまま実機STM32F446REマイコン上に実装、CICフィルタのON/OFFでどのような特性になるのか観察いたしました。今回はそのCICフィルタの振幅特性をScilabを使って計算してみたいと思います。前回使用したCICフィルタは3段の継続接続であったので、1段から3段まで比較してみます。
前回、白色雑音(ホワイトノイズ)の生成に使うLFSR(Liner Feedback Shift Register)を「わざわざ」ゲートレベルの回路図でシミュレーション。LTspice使う荒業?です。今回は三上先生のプログラムを実機STM32マイコン上で動作させてみます。Cで書けばLFSRなど何ということもない?
前回はブロックダイアグラムをScilab+Xcosでシミュレーションしてみました。確かにIIRフィルタから直交する正弦波(つまりはSIN波とCOS波ですが)が生成されてました。今回は実機STM32F446RE上で確認したいと思います。使用させていただくプログラムは三上先生のプログラムそのままであります。
前回はIIRフィルタを使って正弦波を生成でした。今回はその応用であります。直交する正弦波、要するにSin波とCos波、位相90度ずれた波の生成です。例によって今回はブロックダイアグラムをシミュレーションしてPC上で確認です。実際に三上先生の教科書のコードを実機で動作させるのはまた次回の予定。
前回、IIRフィルタ(簡単なやつ?)のブロックダイアグラムをシミュレーションして正弦波らしきものが生成されることを観察しました。今回は実機で三上先生のサンプルプログラムを動かしてみます。折角なので外付け回路の「想定外」の周波数まで生成周波数を上げてみました。IIR凄い?
前回は正弦波を計算で生成するためにミニマックス近似を使ったFastSin関数を使わせていただきました。12ビットの精度なら十分使えて「速い」と三上先生の御本にはあるのです。しかしどのくらい速いのだか気になります。今回は実機(Arm Cortex-M4F)上でどのくらい速いのだか測定してみたいと思います。
前回は、Weaver変調器による周波数シフタの全体コード(三上先生のコードそのまま)をビルドして実際に周波数シフトが起こっていることを実機上で確認いたしました。今回は、要素部品のうち初段の帯域通過フィルタの特性を実機で確認してみます。処理対象の100Hzから4.5kHzまでの周波数のみを通すもの。