HW ISR で実行された set_flg の返り値について

はじめまして。

HW ISR で実行された set_flg の返り値を確認する方法はあるのでしょうか?

もし、無い場合、タスク内で set_flg や wai_flg を実行したときにも

返り値をチェックする必要はないのでしょうか?

Parents
  • tsekさん

    良く分かりませんけれども、pol_flgとかtwai_flgの値を取得することで代用できるでしょうかね?

    一応、中国のセミナー資料を見ると、ハードウェアアクセラレーター内に戻り値レジスタがあるので、関数の戻り値が得られそうですけれども。

    ps  ↑ 中国語のセミナー資料にヒントがありそうです。

Reply
  • tsekさん

    良く分かりませんけれども、pol_flgとかtwai_flgの値を取得することで代用できるでしょうかね?

    一応、中国のセミナー資料を見ると、ハードウェアアクセラレーター内に戻り値レジスタがあるので、関数の戻り値が得られそうですけれども。

    ps  ↑ 中国語のセミナー資料にヒントがありそうです。

Children
  • 割り込みサービスルーチンの中ですとiset_flgを使うと思いますが、iset_flgにもエラーコードは返ってくるので、必要ならば適宜チェックする事になると思います。

  • HWISRって本当にハードウエアで実行してしまうのですか!

  • そうですよ。ハードウェアリソースでITRONのAPIに制限がありますね。もちろん、ソフトウェアITRONを動かすってことも出来ますが、その場合、HW-RTOSの良さは無かったことになります。私はOS使うほどの事してないので単なるARM Cortex-M3+EtherCATとしてしか利用できていませんが・・・

  • 面白いハードウエアですね。

    set_flgのエラーコードとして、E_IDか、E_NOEXS、E_PARがありますが、実際問題それが発生するのか?がポイントになりそうな気がします。

    発生しないのなら、エラーコードのチェックは必要無いですからね。

  • kirin 様

    ご回答ありがとうございます。

    OSドライバのユーザマニュアルにも sample code にもそれっぽいものを見付けられませんでした。

    時間を見付けてサポートに問い合わせてみます。