NEC ELECTRONICS NEC ELECTRONICS
NEC electronics NEC electronics NEC
ホーム
アプリケーション
製品情報
先端技術
サポート
WEBショップ
ニュース&イベント
会社案内
header
GO
詳細検索機能/特性検索
サイトマップ お問い合わせ

その他全般


目次

    
FAQ-ID = v850-nnn
463: エラー・メッセージ "Ffa01:PC位置の行情報が見つかりませんでした。" が表示されます。
1059: RX850V4使用時、CA850がエラー "E2696: Rtos system call ’ext_tsk’ is already defined, cannot specify ’#pragma rtos_task’" や "E2211: redeclaration of ext_tsk" を返します。
1060: RX850V4使用時、リンカが "__kernel_stk_overflowというシンボルが見つからない" というエラーを返します。
1061: RX850V4 で、システムが暴走します。
1062: サービス・コールを発行しても、期待した動作をしません。

v850
-463
エラー・メッセージ "Ffa01:PC位置の行情報が見つかりませんでした。" が表示されます。
Q
エラー・メッセージ


Ffa01:PC位置の行情報が見つかりませんでした。


が表示されます。


(補足)
ID850 V2.51以上では、メイン・ウインドウのステータス・バーに表示するようになりました。

A
プログラムの停止時にソース・ウインドウが開かれていると、 停止時のプログラム・カウンタ(PC)値に対応するソース・ファイルを表示します。
このエラー・メッセージは、 その時のプログラム・カウンタ(PC)の値に対応するソース・ファイルが見つからない場合に表示されます。


原因として、


(1) ソース・ファイルがソース・パスが通っていない場所に存在する。
(2) ライブラリ、リアルタイムOSのシステム・コールなど、 ソース・ファイルが存在しないところでプログラムを停止した。
(3) プログラムが暴走し、プログラムで使用していないアドレスへ実行が飛んで、 そこで停止した。
(4) デバッグ・モードでビルドしていないために、オブジェクトにデバッグ情報が含まれていない。


などが考えられます。


(1) の場合、ソース・パスは、デフォルトでダウンロードしている ロード・モジュール・ファイルが存在するディレクトリになっています。
それ以外のディレクトリにソースが置いてある場合には、[オプション]メニュー→ [デバッガ・オプション]で、ソース・パスを指定してください。


(2) のように、プログラムの構成上、このメッセージの表示を避けられない場合には、 コンソール・ウインドウを使用してエラー・ダイアログの表示をさせないことが可能です。


[参考] エラー・メッセージをエラー・ダイアログ以外で表示させる方法

この情報はお役にたちましたか?
back to top  
(2007/05)

v850
-1059
RX850V4使用時、CA850がエラー "E2696: Rtos system call ’ext_tsk’ is already defined, cannot specify ’#pragma rtos_task’" や "E2211: redeclaration of ext_tsk" を返します。
Q
RX850V4使用時、CA850がエラー


E2696: Rtos system call ’ext_tsk’ is already defined, cannot specify ’#pragma rtos_task’



E2211: redeclaration of ext_tsk


を返します。

A
コンパイラのオプションへ"__nec__"というマクロを定義する必要があります。
ca850の起動オプションへ"-D__nec__"を追加してください。
この情報はお役にたちましたか?
back to top  
(2007/05)

v850
-1060
RX850V4使用時、リンカが "__kernel_stk_overflowというシンボルが見つからない" というエラーを返します。
Q
RX850V4使用時、リンカが


__kernel_stk_overflowというシンボルが見つからない


というエラーを返します。

A
RX850V4ユーザ・オウン・コーディング部のライブラリ"libusrc.a"をリンクしてください。
このライブラリ内に__kernel_stk_overflowの本体が存在します。


CA850使用時に"libusrc.a"をリンクしてもエラーが解消されない場合、リンカのオプションへ "-rescan"を指定し、ライブラリのシンボル情報を再読み込みするように設定してください。

この情報はお役にたちましたか?
back to top  
(2007/05)

v850
-1061
RX850V4 で、システムが暴走します。
Q
システムが暴走しています。
A
次のような原因が考えられます。
  • タスクのスタック領域、 および割り込みスタック領域 (システム・スタック領域) は十分ありますか?


    リアルタイム OS を使ったアプリケーションで、うまく動作しなくなる原因のほとんどがこれです。
    つまり、タスク・スタックや割り込みスタックが、指定したサイズを突き抜け、 他のタスクのスタックを破壊したり、RX850V4 のシステム管理領域を破壊したりして、 結果的に暴走しています。
    RX850V4 は、アドレス情報を頼りに動くため、 そのアドレスにおかしな値が入っていても疑わずに動作しますので、注意してください。


    なお、RX850V4にはスタック・オーバフローの検出機能があります。
    検出機能の設定はコンフィギュレーションで行います。
    検出機能が有効な場合、サービス・コールや割り込み発生のタイミングでスタック・オーバフローを検出することができます。


  • タスクが無限ループ記述 (for( ; ; )、 while(1)) されていないタスクは、 ext_tsk サービス・コールを発行して終了処理をしていますか?


    タスクが無限ループ記述になっている場合は問題ありませんが、 もしそうでないタスクがある場合、そのタスクは、最後で ext_tsk サービス・コールを発行して終了処理をする必要があります。
    記述されていない場合、RX850V4 はそのタスクが終了したかどうかを判断できません。
    したがって、確実に暴走します。


この情報はお役にたちましたか?
back to top  
(2007/05)

v850
-1062
サービス・コールを発行しても、期待した動作をしません。
Q
サービス・コールを発行しても、期待した動作をしません。

A
次のような原因が考えられます。
  • タスクの優先度によるもの


    待ちを解除するために、サービス・コールを発行したときに、 解除されるタスクの優先度が他のタスクの優先度よりも低かった場合、 すぐに動作を開始しないため、期待した動作をしないことがあります。


  • スタック破壊によるもの


    wai_flg や wai_sem などの待ち系のサービス・コールを発行し、 その待ちを解除しようとしてもうまくいかない場合、 タスク・スタックや割り込みスタックによる領域破壊が原因である可能性があります。
    タスク・スタックや割り込みスタックが設定値より伸び、 それが リアルタイムOS (RXシリーズ) の管理領域を破壊し、 その中の待ち情報などが破壊されていることがあります。


    なお、RX850V4にはスタック・オーバフローの検出機能があります。
    検出機能の設定はコンフィギュレーションで行います。
    検出機能が有効な場合、サービスコールや割り込み発生のタイミングでスタック・オーバフローを検出することができます。

この情報はお役にたちましたか?
back to top  
(2007/05)





















 ご利用にあたって  個人情報保護について  RSS       © 1995-2008  NEC Electronics Corporation