ルネサス製RL78をCS+でRAM(パラメータ・変数ウォッチ)のリアルタイム表示機能「はい」にすると動作が異常に

CS+RAMリアルタイム表示

ルネサスエレクトロニクス製RL78マイコンのファームウェアのデバッグ時の話。

統合開発環境 C S +上で、自分で宣言したグローバル変数(RAM・パラメータ)をリアルタイムで表示する機能ってすっごく便利。

パラメータをリアルタイムに表示させて、どういう動きをしているのかを見たい時、

プログラムの中にデバッグ用の Logを埋め込んでおかなくてもいいし、

UARTなどのシリアル通信でPC側に送信する仕組みもいらないからです。

でも、調子に乗っていつもいつも使っていると、思わぬ落とし穴に。。。

よく読むと、

「実行中のメモリアクセス」

実行を一瞬停止してアクセスする

って書いてあります。

これを頭の片隅においておかないと、痛い目にあうことがあります。

ほんの一瞬かもしれないけれども、プログラムの実行を一瞬止めてメモリをリアルタイム表示させています。

だから、この機能をONしているときと、OFFにしている時って、どうしても微妙に動作が変わってきます。

私が使っている時に、実際に大きく挙動が変わってしまったことがあったので、

ここにも書いておきました。

スポンサーリンク

CS+でRAM(パラメータ・変数ウォッチ)のリアルタイム表示機能を常時「はい」にした時だけ動作が異常に

「何かプログラムの動きがおかしいな」

「あれ?昨日まで問題なく動作していたのに、急に動作がおかしくなった」

っていう時、ファームウェアとか使っているボードのせいではく、

実は、統合開発環境(デバッガ)側の設定の問題っていうこともあるんです。

冒頭に載せた画像にも書いてあるように、

例えば、表示更新間隔は500msecとなっています。

すくなくとも、500msecに1回はCPUを停止して、RAMをリアルタイム表示させる処理を行っていると思います。

私のケースでは、

約100μsec周期で、割り込み処理を伴う大きな処理を繰り返し行うファームウェアを

実行させている時に、想定外の異常な挙動をする現象が発生しました。

で、何が原因だろう?

って色々動作確認をして、問題の切り分けをしていったところ、

なんと、CS+のデバッグ設定の

「実行中のメモリアクセス」

実行を一瞬停止してアクセスする

に「はい」を設定していたら異常動作が起き、

「いいえ」に設定したとたんに異常動作が起きなくなったのです。

まさかのまさか、デバッグ環境の設定が悪さしていたなんて。

でも、こういうトラブルにはまって、丸1日つぶしたりって、結構多くの人が経験しているんじゃないかと思います。

スポンサーリンク

CS+でRAM(パラメータ・変数ウォッチ)のリアルタイム表示機能の設定を確認する方法

CS+RAMリアルタイム表示設定方法

上記画像の赤枠で囲んだところをたどれば設定の確認ができます。

「デバッグツール」

「デバッグ・ツール設定」

「実行中のメモリ・アクセス」

「実行を一瞬停止してアクセスする」

デフォルト設定では、「いいえ」

になっているはず。

でも、意図せず、PCのマウス操作やキーボード操作ミスで、知らないうちに、

「はい」

の設定になっているとかあるかもしれません。

または、自分以外の共同開発者のプロジェクトファイルをそのままコピーして使う場合、

その共同開発者が

「はい」

の設定のままにしていたりとかすることもあるかもしれません。

一度、チェックした方がいいです。

ちなみに、ネットで検索しても、

「CS+でパラメータのリアルタイム表示機能を使うと動作がバグった」

って感じの記述がなんにも出てこないんですよね。

めったに出ない異常現象なのかも。

スポンサーリンク

まとめ

あくまで私の予想ですが、

多分、プログラムの処理時間がカツカツで、時間に余裕がないシビアなファームウェアになっている場合に、

RAMのリアルタイム表示機能を使うと、意図しない異常な動作が発生しやすいのではないか?

と思っています。

あくまで、パラメータのリアルタイム表示機能は、

必要な時だけ、デバッグのオプション、補助的なツールとして使うくらいの心持ちの方が

よいと思いました。

--------------
エンジニアの職場は、30代、40代でも彼女いない、結婚していない方がたくさんいます。

個人の自由なので、別によいのですが、

「いい奴なんだけどなー。奥手だから女性と会話するのも難しいだけ。彼女いないのがもったいない」

という人が結構います。

そんな恋愛経験が少ない人向けの婚活サイトがあります。↓

恋愛経験が少ない男女専門の結婚相談所・お見合い・婚活サービスは【ピュア婚】

私の身近な職場の周りでも、結婚相談所を利用して結婚した男性が2人いますし、

結婚相談所で女性を見つけるのは全然ありだと思います。



選択肢は1つでも多く
 
エンジニア職の働き方の選択肢として、頭に入れておいて損はないです↓
 
エンジニア職で関西(大阪)に戻って転職して仕事を見つけたい・単身赴任を終えるもう1つの選択肢

関西向けの記事ですが、東京の方も同じです。

-------------------

「デキル人になりたい」

そう思いながら何年も経っているなら、

そろそろ無料体験をしてみてもいい時期かもしれません↓




スポンサーリンク



スポンサーリンク




シェアする

  • このエントリーをはてなブックマークに追加

フォローする