ユーザ用ツール

サイト用ツール


e2studio設定メモ

e2studio設定メモ

いくつかの設定をする必要がある。

重要な情報

e2studioでC++プロジェクトを最初に作るとマイコン用の内部ヘッダファイル等が生成されないため、一度Cプロジェクトをダミーで 作成すること

設定項目

e2studioのバージョンは5.4.0を想定(6.3.0で試したがうまくいかなかった)

  • マイコンの型番を設定 R5F571MLCDFP
  • ツールチェインバージョンの設定
  • 最適化レベルの設定
  • スタックサイズの変更
  • コンパイラオプションの追加 -std=c++11
  • インクルードパスの設定
  • reset_program.asmファイルの編集 スーパーバイザーモードで常に動作するように変更
  • stdを使ったときのエラー抑制

ツールチェインバージョンの設定

ちょっと古いが 4.8.0.201602 が安定して使えている。 どのバージョンか忘れたが、これよりさらに古いバージョンだとマイナス演算の結果が正しく計算できないバグがある。

最適化レベルの設定

現状結構最適化は利かせて動かしている。 通常、最適化を利かせることで動かなくなることが多いが、今回は最適化を切ってしまうと、 逆に動かなくなるのでちょっと困っている。

スタックサイズの変更

  • .text プログラムの実行コードROM領域
  • .data 変数の初期値 ROM領域
  • .bss 未初期化のデータを格納する RAM領域
  • .rodata 文字列定数やconstがついた変数を格納する
  • .istack 割り込みスタック
  • .ustack ユーザースタック

0x100 = 256byte, 0x1000 = 4096byte

コンパイラオプションの追加

C++の新しい機能が使いたいので、コンパイラオプションに以下を追加。

reset_program.asmファイルの編集

途中のスーパーバイザーモードからユーザーモードへの移行部分をコメントアウトする。 これは、ツールチェインをRenesas GCC for RXに設定した際、多重割込みを許可するために必要な手順。

ちなみに、多重割込み許可のためには次も必要

割り込み関数の先頭で以下を実行
__builtin_rx_setpsw('I');

参考url https://gcc-renesas.com/rx-download-toolchains/


/* change PSW PM to user-mode */ //変更しているユーザーモードへは以降しない
//    MVFC   PSW,R1
//    OR     #00100000h,R1
//    PUSH.L R1
//    MVFC   PC,R1
//    ADD    #10,R1
//    PUSH.L R1
//    RTE
//    NOP
//    NOP
#ifdef CPPAPP
    mov    #__rx_init,r7
    jsr    r7
#endif    

インクルードパスの設定

自分で作ったディレクトリのパスを設定する。

stdを使ったときのエラー抑制

行番号横の無駄なスペースを消す方法

行番号あたりで右クリックをして、Source Addressを表示をOffにする。

適当なスクショ

e2studio設定メモ.txt · 最終更新: 2018/08/20 21:28 by ganon