RTOS: kernel & TI-RTOS

 helloのexampleのkernelベースのテンプレートをインポートして、Runtime Object ViewやExecution Analysisの使い方を一通り実施。

特に、Execution Analysisでは、.cfgのファイルを編集してlogを残すように設定する事で、どのタスクがどのタイミングで実行されるという分析を行った。

もう気が付くが、TI-RTOSのemptyをインポートしてくると、.cfgが含まれない。そのため、Execution Analysisは実行できない。

これらを回避する方法は

How to combine SimpleLink SDK application and kernel projects

に記述があるので、ここではその手順を実行してみる。手順を和訳して残しているだけで起債している事項は同じ内容。原文で対応できる人はそちらを。

Project exploerにおいて、kernelからなるプロジェクト(コピー元)のプロパティをプロジェクトを右クリックして開く


Generalを選択しProductsを表示した際に以下の指定の情報を記録する。

黄色で網がけた部分の情報を記録しておく(メモ帳にでもコピーしておく)

TI-RTOSのkernelでない側のプロジェクトを同じく右クリック。Buildの項目を選択し、一番右のタブのDependencesを開く。そこにあるReferenced Projectを選択してRemoveする。Apply and Closeを押して閉じる

Kernel側にあるXXX.cfgを右クリックしてコピー。非Kenelのプロジェクトを選択しペースとする。 Buildには、XDCtoolsがいりますよと警告が出るが、YESを押しコピーを行う


コピーが完了したら、再度、非Kernel側のプロジェクトを右クリックし、General - Productを選択して先ほど記録した設定と同じする。

XDCtoolsをダブルクリックするとバージョンが選択できるので、記録した通りに設定

同様にSimpleLinkも使っているボードとSDKをダブルクリックしてバージョンが同じか確認。また下の方にあるXDCtools settingの部分も同じ内容にする。

ti.platforms.msp432:MSP432E401Y

release


最後に同じプロパティにおいて、XDCtoolsを選択して展開、Addvanced Optionsを開く。

Additinal compiler optionsの欄に

"${COMPILER_FLAGS} "

を入れる

ビルトしエラーがでなければ、ちゃんとemptyで生成してきたものでも、Execution Analysisのデバッグ作業が可能になる。

最後に、コピーしてきたcfgファイルを編集する。

これは以前やっていてBIOSの欄に、Welcome, System OverviewにならんでRuntimeがあるのでクリック。

中腹にEnable logsがあるのでこれにチェックを入れる。または、
/*
 * Enable logs in the BIOS library.
 *
 * Pick one:
 *  - true (default)
 *      Enables logs for debugging purposes.
 *  - false
 *      Disables logging for reduced code footprint and improved runtime
 *      performance.
 */
BIOS.logsEnabled = true;
//BIOS.logsEnabled = false;
という所を探して、BIOS.logsEnabled = true;のコメントアウトをはずす。

ファイルの末尾に、

var LoggingSetup = xdc.useModule('ti.uia.sysbios.LoggingSetup');
LoggingSetup.sysbiosLoggerSize = 1024;
LoggingSetup.loadLogging = false;
というのを記載する。最後の1行以外は、コメントアウトされているので、はずすだけでOK。これらの記載がないとUIA configがdetectできないというようなメッセージが表示される。たいていこのメッセージの時は、これらの設定がさていないとき。
これで、RTOS: kernel & TI-RTOSの併用が可能になるので、これらをスタートとして開発をはじめるようにすれば、各種のデバッグ昨日が試すことができるようになる。

コメント

このブログの人気の投稿

Attiny85とAQM0802A(LCD)のI2C接続

CH9329で日本語キーボード109で正しく表示する方法