マイコン工作実験日記

Microcontroller を用いての工作、実験記録

FreemasterでScope表示してみる

2015-02-22 09:46:44 | FRDM
FRDM-KL25Zには3軸加速度センサーとしてMMA8451Qが実装されており、同センサーを用いた実験を簡単に行うことができます。センサーを用いてイベントを検出するには割り込みを発生させるための加速度閾値の設定などが必要となることもしばしばありますが、それらの設定値を求めるには検出したいイベントに対応する加速度出力値の変化を把握しておくことが重要です。そのため、センサーの出力値をモニタしてグラフ表示してくれるツールがあると便利です。以前MMA8452Qを実験した際には、いったんフラッシュに記録したデータを読みだしてExcelを使ってグラフを表示していました。今回、FreescaleがFreemasterというツールを提供していることを知ったので、これを使ってみました。下図のグラフはFreemasterを使って取得したものです。




Freemasterのおおまかな機能や使い方については、次のページが参考になりました。
わたしなりに説明させてもらうと、Freemasterはデバッガの変数Watch機能を独立したアプリとして仕立てて、その値のリアルタイムな変化をグラフ表示する機能を付け加えたものです。アプリのシンボル情報から指定された変数のアドレスを求め、デバック用インターフェースを介して、その値を定期的に読み取って表示してくれます。ターゲットとのデバックインタフェースは用意されているプラグインから選択することができ、次のような種類がサポートされています。



わたしはOpenSDAをJ-Link化しているのでJ-Linkを選択していますが、BDM Communication を選択すればもともとのOpenSDA Debugインターフェイスも使えるようです。またCMSIS-DAPに対応しているので多くのマイコンボードでも利用可能なんじゃないでしょうか。RS232シリアルも使えますが、この場合にはターゲット側で対応ドライバのコードを組み込むことが必要となるようです。

シンボル情報は、ELFファイルから取得できます。したがって、Freemasterを使うために特別な作業は必要ありません。ただし、アドレスを確定させるために、表示したい変数はグローバル変数でなければなりません。シンボル情報から自分が表示したい変数を選択して設定しますが、その手順の説明は省略。上述の参考リンクを参照してください。

実験には単純に800Hzでサンプリングした3軸加速度データをXout, Yout, Zoutという変数に格納するだけのアプリを作成しました。ビルドしたELFファイルデータをFRDM-KL25に書き込んだら、今度はFreemasterを立ち上げて上述のようにシンボル情報を読み込みます。値を表示したい変数を選択して、Freemasterとターゲットとを接続するボタンを押せば動き始めます。



手でボードを持って、Z軸方向に何度か振ってみた場合の動作時画です。右下のウィンドウに選択した変数 Xout, Yout, Zoutの値が表示されています。記事の最初に載せたグラフはHigh pass filterを有効にした際のものですが、こちらの例では無効にしています。そのためZoutの値が1024(1g)程度になっています。



X-Yモードでも表示もできます。この例ではボードを手に持ちほぼ平らな状態にしてから、X軸方向に +/-90ずつ回転、その後Y軸方向も同じように+/-90度回転させてみました。Z方向を横軸にとり、X, Y方向の重力加速度の変化が軌跡として表示されています。

このようにFreemasterを使うと簡単にデータを表示、視覚化することができます。
  • プログラム側では単にデータをグローバル変数として持てば良いだけであり、それ以外の準備は何もいりません。
  • 上記の例ではターゲットとしてFRDM-KL25Zを使っていますが、J-Link, CMSIS-DAPというJTAGインターフェイスに対応しているので、実際のところターゲットのマイコンはFreescaleのKinetisに限らず、なんでもいいことになります。これらのJ-TAGではFreemasterの持つコマンド送信機能などは使えないのですが、スコープ表示はできます。
  • LPCXpressoなどが生成するaxfファイルはそのままではFreemasterでは開けませんが、elfにrenameすれば開くことができます。
  • シンボル数が多かったり、おおきな配列がある場合に、シンボルの選択操作が使いにくいのが難点ではあります。最大の問題はWindowsでしか動かないということでしょうか。

手軽に使えて重宝しそうなツールです。お試しあれ。

最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。