テキスト(13432KB) - ルネサス エレクトロニクス - Renesas Electronics

こんなに便利!
統合開発環境e2 studioの機能
本ワークショップで使⽤するプログラムは学習のための参考プログラムであり、品質保証するものではありません。
開発の際には必ず最新のハードウェアマニュアルを参照し、⼗分検証を⾏ってください。
ルネサス エレクトロニクス株式会社
ルネサス半導体トレーニングセンター
Rev. 1.00
東京開催 2015/1/29
東京開催 2015/1/30
名古屋開催 2015/2/4
⼤阪開催 2015/2/9
©2014. Renesas Electronics Corporation, All rights reserved.
⽬次
1.マイコン多機能化による製品開発
の課題と解決策
2.コードの自動生成
3.スマートマニュアル
4.まとめ
何が便利
5.e2 studio
になるの?
コード⽣成って何?
スマートマニュアルって何?
2
©2014. Renesas Electronics Corporation, All rights reserved.
1.マイコン多機能化による製品開発の課題と解決策
3
©2014. Renesas Electronics Corporation, All rights reserved.
お客様からのご要求で製品の機能が⾼まっている
製品への要求
高機能
・多機能並列処理
・高速処理
・電池長持ち
・誤動作厳禁
低消費
マイコンもがんばれ
高信頼
V
Day
4
©2014. Renesas Electronics Corporation, All rights reserved.
マイコンが多機能になったことによる弊害
膨⼤なマニュアル
• 1000ページを越せるマニュアルを読
みこなせますか?
※ 参考: RX111 1244ページ, RX63N 2051ページ
多岐に渡る組み合わせ
• 機能の組み合わせは把握できてい
ますか?
• 使わない機能はどのようにするかを
理解していますか?
5
©2014. Renesas Electronics Corporation, All rights reserved.
実際に考えてみましょう
例えば、LEDを調光するために何が必要でしょうか?
暗い
LEDがマイコンに直接接続されている
PWMでLEDを制御できそうだ
明るい
5000
初期化するためにマニュアルを読もう
1000
でも、どこを読めばいいの?
20%(暗い)
5000
4000
80%(明るい)
6
©2014. Renesas Electronics Corporation, All rights reserved.
ポート初期化?
PWMの初期化?
PWMのデューティ設定?
それだけ?
RX111でPWM出⼒するための設定例
// PWM setting:
//
PWM period : 10ms
//
PCLK : 32MHz
//
10ms = 100Hz = 32MHz * 1/64 * 1/TRGA
//
TGRA/TGRC = 5000‐1
SYSTEM.PRCR.WORD = 0xa502;
SYSTEM.MSTPCRA.BIT.MSTPA9 = 0;
// MSTP(MTU) = 0;
SYSTEM.PRCR.WORD = 0xa500;
MTU.TOER.BIT.OE4A = 1;
MTU4.TCR.BIT.TPSC = 3;
MTU4.TCR.BIT.CKEG = 0;
MTU4.TCR.BIT.CCLR = 1;
MTU4.TMDR.BIT.MD = 2;
MTU4.TIORH.BIT.IOA = 1;
MTU4.TIORH.BIT.IOB = 2;
MTU4.TGRA = 5000‐1;
MTU4.TGRB = 0;
MTUをPWMモード1
TRGAをPWM周期
TRGBでHの時間
TRGA=5000-1
TRGB=0
プロテクトレジスタへの書き込み許可
MTUのモジュールストップを解除
プロテクトレジスタへの書き込み禁⽌
PFSWEレジスタへの書き込み許可
PA0PFSビットへの書き込み許可
PA0の端⼦機能をMTIOC4Aに切り替え
PA0PFSビットへの書き込み禁⽌
PFSWEレジスタへの書き込み許可
MPC.PWPR.BIT.B0WI = 0;
MPC.PWPR.BIT.PFSWE = 1;
MPC.PA0PFS.BIT.PSEL= 1;
MPC.PWPR.BIT.PFSWE = 0;
MPC.PWPR.BIT.B0WI = 1;
PORTA.PMR.BIT.B0 = 1; PA0の端⼦モードを周辺に切り替え
MTU.TSTR.BIT.CST4 = 1; MTUスタート
7
©2014. Renesas Electronics Corporation, All rights reserved.
これらの関連の把握に
時間がかかることは
ありませんか?
発⽣しうる問題(課題)
マニュアルをすべて読むほど余裕がない
サンプルを読むのにも時間がかかる
読み切らずに開発を着手してしまう
全体像が把握できていないため、
制約事項の見落としや
設定漏れが発生する
8
©2014. Renesas Electronics Corporation, All rights reserved.
マニュアルを
読んでいれば
皆様への質問
□
□
□
□
全体像が⾒えず、設定に時間がかかりませんか?
制限事項を⾒落としたことはありませんか?
設定が正しいか不安になりませんか?
サンプルに書かれているレジスタの値を
読むのが⾯倒ではありませんか?
□ サンプル⾃体がないってことはありませんか?
思い当たる点
がひとつでも
あるなら
9
©2014. Renesas Electronics Corporation, All rights reserved.
e2 studioなら(解決策)
 コードの⾃動⽣成
分かりづらいレジスタの設定はe2 studioにお任せくだ
さい。e2 studioがあなたに代わってコードを⽣成します
マニュアルを読む時間の短縮
 スマートマニュアル
サンプルや⼈が書いたソースでもe2 studioはレジスタ
を⾒つけてマニュアルを表⽰します
サンプルを読む時間の短縮
※ e2 studio のスマートエディタは、⼊⼒を⼿助けする変数の⾃動
補完、変数や関数の定義を表⽰してくれる機能などもあります。
10
©2014. Renesas Electronics Corporation, All rights reserved.
2.コードの⾃動⽣成
11
©2014. Renesas Electronics Corporation, All rights reserved.
コード⽣成によって⽣成される関数
スタートアップ
r_cg_resetprg.c
void PowerON_Reset(void){} コードを生成する
周辺IOの初期化API
,操作API
r_cg_xxx.c
void R_xxx_Create(void){}
void R_xxx_Create(void){}
void R_xxx_Start(void){}
void R_xxx_Start(void){}
周辺IOの処理から呼び出される
r_cg_xxx_user.c
操作API
void r_xxx_interrupt(void){}
void r_xxx_interrupt(void){}
main関数
r_cg_main.c
void main(void){} APIの詳細は以下を参照
[ヘルプ]→[ヘルプ目次]→[e2 studio コード生成 へルプ]→[コード生成]→[コード生成RX APIリファレンス]
12
©2014. Renesas Electronics Corporation, All rights reserved.
⽣成された関数の関係(抜粋)
スタートアップ
静的変数の初期化
メイン処理
割り込み処理
R_XXX_Create() と呼び出し部を
e2 studioが生成します
クロック初期化
R_CGC_Create(){}
R_PORT_Create(){}
R_CMT0_Create(){}
ポート初期化
CMTタイマ初期化
割り込み許可
メイン処理呼び出し
API関数群
R_CMT2_Start()の呼び出しは
プログラマが記述してください
CMTタイマスタート
R_CMT0_Start(){}
メインループ処理
割り込みとして呼び出される
r_xxx_interrupt()内の処理は
プログラマが記述してください
13
©2014. Renesas Electronics Corporation, All rights reserved.
r_cmt_cmi0_interrup(){}
コード修正時の注意
/* Start user code for global. Do not edit comment generated here */
extern volatile bool F_time;
/* End user code. Do not edit comment generated here */
void main(void)
{
R_MAIN_UserInit();
コメントの間にコードを追加してください。
/* Start user code. Do not edit comment generated here */
while (1U)
コメントの外に書かれたコードはコード
{
生成と同時に消去されてしまいます
if(F_time){
F_time = false;
PORTB.PODR.BIT.B7 ^= 1;
}
}
/* End user code. Do not edit comment generated here */
}
static void r_cmt_cmi0_interrupt(void)
r_cg_cmt_user.c
{
/* Start user code. Do not edit comment generated here */
F_time = true;
例外もありますが、「_user」の
/* End user code. Do not edit comment generated here */
ついたファイルが編集対象です
}
14
©2014. Renesas Electronics Corporation, All rights reserved.
演習1(ex01)
コード⽣成によるプログラム開発の流れ
仕様:
1.
2.
3.
4.
LED0を1s周期で点滅(0.5sでON/OFF)させる
0.5sの時間はCMT0の割り込みで得る
ICLKは24MHz動作とする(OSC=16MHz)
PCLKは24MHz動作とする
RX111(R5F111XXXFM)
LED1
LED0
LED2
OSC=16MHz
ICLK=24MHz
PCLK=24MHz
MTIOC3B/PB7/PC1
MTIOC4A/PA0
MTIOC4B/P54
MTIOC3D/PB6/PC0
RV1
AN000/P40
15
©2014. Renesas Electronics Corporation, All rights reserved.
LED3
void ハードウェアの初期化(void)
{
ICLK/PCLKを24MHzで初期化
PB7を出力で初期化
CMT0を0.5sの割り込みで初期化
}
void main(void)
{
CMT0タイマスタート();
while(1){
;
}
}
void CMT0タイマ割り込み(void)
{
PB7のH/Lを切り替え;
}
演習⼿順

コード⽣成を使って周辺機能を初期化
1. [コード⽣成]→[周辺機能]→[クロック発⽣回路]
2. [コード⽣成]→[周辺機能]→[IOポート]→[PortB]
3. [コード⽣成]→[周辺機能]→[コンペアマッチタイマ]→[CMT0]
4. [ファイル]→[保管]
5. [コード⽣成]ボタンを押下

コード⽣成が⽣成したファイルにプログラムを追加
1. 「CMT0割り込み関数 r_cmt_cmi0_interrupt()」の作成
2. 「ユーザ独⾃の初期化処理 R_MAIN_UserInit()」の作成

動作を確認
1. プログラムビルド
2. デバッガの起動
3. プログラム実⾏(再開)
16
©2014. Renesas Electronics Corporation, All rights reserved.
e2 studioの起動
演習では表示されません
キャンセル
[スタート]→[すべてのプログラム]
→[Renesas Electronics e2 studio 3.0]
→[Renesas e2 studio]
Workbench
e2 studio が起動する
17
©2014. Renesas Electronics Corporation, All rights reserved.
プロジェクト作成1/2
[ファイル]→[新規]
[C Project]
ex01
c:¥workspace¥e2studio¥ex01
Executable(Renesas)
Sample Project
Renesas RXC Toolchain
次へ
RX111-64pin
...
RX100
RX111
[R5F5111JAxFM]
次へ
18
©2014. Renesas Electronics Corporation, All rights reserved.
プロジェクト作成2/2
次へ
初期値のまま
[コード⽣成を使⽤する]をチェック
次へ
次へ
次へ
終了
ex01プロジェクトの生成完了
19
©2014. Renesas Electronics Corporation, All rights reserved.
OK
コード⽣成 → 周辺機能 → クロック発⽣回路
ex01
→コード⽣成
周辺機能
→クロック発⽣回路
[動作]をチェック
→ x 3 48MHz
PLL回路
x 1/2 24MHz
x 1/2 24MHz
x 1/2 24MHz
x 1/2 24MHz
範囲外は
が出ます。
クロック発生回路設定完了
20
©2014. Renesas Electronics Corporation, All rights reserved.
コード⽣成 → 周辺機能 → IOポート → PortB
周辺機能
→I/Oポート
出⼒
1を出⼒
PortB
ポートの設定完了
21
©2014. Renesas Electronics Corporation, All rights reserved.
コード⽣成 → 周辺機能 → コンペアマッチタイマ → CMT0
使⽤する
PCLK/512
500ms
周辺機能
→コンペアマッチタイマ
→CMT0
CMTの設定完了
22
©2014. Renesas Electronics Corporation, All rights reserved.
コード⽣成
[ファイル]→[保管]
コードを⽣成する
ex01¥src¥cg_src
の下に生成されます
コードの生成完了
23
©2014. Renesas Electronics Corporation, All rights reserved.
メインプログラムの作成
r_cg_main.c
ex01¥src¥cg_src¥r_cg_main.c
void main(void)
{
R_MAIN_UserInit();
/* Start user code. Do not edit comment generated here */
while (1U)
{
}
/* End user code. Do not edit comment generated here */
} void R_MAIN_UserInit(void)
{
/* Start user code. Do not edit comment generated here */
R_CMT0_Start();
/* End user code. Do not edit comment generated here */
}
ソース画面を
広げる
24
©2014. Renesas Electronics Corporation, All rights reserved.
CMTは停止状態なので
CMTをスタートするAPI
を作成してください
cmt割り込みプログラムの作成
※ 自動で表示されない
ときにはCTRL-スペース
ex01¥src¥cg_src¥r_cg_cmt_user.c
PORTB.
static void r_cmt_cmi0_interrupt(void) r_cg_cmt_user.c
{
/* Start user code. Do not edit comment generated here */
PORTB.PODR.BIT.B7 ^= 1;
/* End user code. Do not edit comment generated here */
}
25
ポートの出力を反転するプログラム
を作成してください
©2014. Renesas Electronics Corporation, All rights reserved.
汎用入出力ポートのレジスタ
ポート方向レジスタ(PDR)
1:出力 0:入力
ポート出力データレジスタ(PODR)
1:Hレベル 0:Lレベル
ポート入力データレジスタ(PIDR)
1:Hレベル 0:Lレベル
ポートモードレジスタ(PMR)
1:周辺機能 0:汎用入出力ポート
スマートエディタの機能(参考)
 関数や変数がグレーアウトしているときにF3を押すと定義位置が表⽰されます
F3
戻る
 コメントや関数は + / - で閉じれます
+
-
 キーワード、関数や変数は、タイプ途中でもCTRL+スぺースで補完されます
他にも、関数を選択すると, ユーザに引数の定義が提
⽰されたり、“ . ”や “->”の⼊⼒のあとにメンバを表⽰
してくれるなどの補完機能があります
26
©2014. Renesas Electronics Corporation, All rights reserved.
ビルド
[プロジェクト]
→[プロジェクトのビルド]
Errorがなければビルド成功です
ビルドが終了すると⾃動的に消えます
27
©2014. Renesas Electronics Corporation, All rights reserved.
ビルド完了
パースペクティブ切り替え
デバッグ
デバッグ
デバッグパースペクティブ
に切り替わる
[ex01 HardwareDebug]を選択
→ OK
が表示されていない
ときは以下で表示します
パースペクティブを開く
デバッグ→OK
ボードにプログラムがダウンロードされる
28
©2014. Renesas Electronics Corporation, All rights reserved.
違うデバッグパースペクティブが開かれた場合
ex01 HardwareDebug...ではない
(違うデバッグパースペクティブが
開かれている)
ex01 HardwareDebug...に変更された
の右にある ▼ をクリック
デバッグの構成
Renesas GDB Hardware Debugging
ex01 HardwareDebug...
はい
デバッグ
29
©2014. Renesas Electronics Corporation, All rights reserved.
プログラム実⾏と動作確認
再開を2回
仕様どおりかな?
スタートアップの先頭とmain関数
の先頭で止まります。2度「再開」を
押して実行状態にしてください
LED0の点滅を確認してください
0.0s
RX111
プログラムが実行される
30
©2014. Renesas Electronics Corporation, All rights reserved.
RV1
Power
LED0
LED1
LED2
LED3
E1
SW3 2 1
0.5s
1.0s
1.5s
t
プログラム終了
[ファイル]→[終了]
終了
デバッグ
プログラムを停止するには「中断」を
デバッガと切断するには「終了」を
使います
ステップ・イン
再開
e2studio
31
終了
中断
ステップ・オーバー
HEW
CubeSuite+
デバッグ
デバッグツールへダウンロード
接続→ダウンロード
終了
デバッガとの切断
接続解除
再開
実行
実行
中断
停止
停止
ステップ・オーバー
(同一)
(同一)
ステップ・イン
(同一)
(同一
©2014. Renesas Electronics Corporation, All rights reserved.
演習1の作業を
お願いします
32
©2014. Renesas Electronics Corporation, All rights reserved.
演習2(ex02)
コード⽣成によるPWMの初期化
仕様:
1.
2.
3.
4.
5.
6.
7.
LED1の明るさをRV1(左隅消灯)で調光させる
明るさは8種のPWMディーティ⽐(明るさテーブル)を使⽤する
8種のデューティ⽐は12bitAD変換の上位3bitで選択する
PWMの周期は10msとする
RV1 の変化量は12bitAD(AN000⼊⼒)から得る
void ハードウェアの初期化(void)
{
LED1はMTU4のPWM出⼒(MTIOCA4)で直接制御する
ICLK/PCLKを24MHzで初期化;
RV1の変化量は100ms周期(CMT0)で更新する
RX111(R5F111XXXFM)
LED0
LED1
LED2
OSC=16MHz
ICLK=24MHz
PCLK=24MHz
MTIOC3B/PB7/PC1
MTIOC4A/PA0
MTIOC4B/P54
MTIOC3D/PB6/PC0
AN000/P40
33
RV1
©2014. Renesas Electronics Corporation, All rights reserved.
LED3
CMT0を100msの割り込みで初期化;
12bitADをソフトトリガ/AN000シングルスキャンで初期化;
MTU2をPWM1モード/10ms周期/MTI0C4A出力で初期化;
}
void main(void)
{
MTU2タイマスタート();
CMT0タイマスタート();
while(1){
;
}
}
void CMT0タイマ割り込み(void)
{
AD変換スタート();
}
void AD完了割り込み(void)
{
AD値 = 12bitADの値読み出し();
PWMデューティ = 明るさテーブル[AD値>>9];
}
演習⼿順
 コード⽣成を使って周辺機能を初期化
1. [コード⽣成]→[周辺機能]→[マルチファンクションタイマ2]→[MTU4]
2. [ファイル]→[保管]
3. [コード⽣成]ボタンを押下
※ MTU4以外は全て作成済み
 コード⽣成が⽣成したファイルにプログラムを追加
※ 全て作成済み
 動作を確認
1. プログラムビルド
2. デバッガの起動
3. プログラム実⾏(再開)
34
©2014. Renesas Electronics Corporation, All rights reserved.
PWMによる調光の考え⽅(参考資料)
MTU4のPWMモード1 によるLED調光の考え⽅
・CNTはA点でクリア
・コンペアマッチは以下で設定
初期値
コンペアマッチ
A点
L
L
B点
-
H
CNT
A点
B点
t
B点の時間
A点の時間
A点がPWM周期になる
B点を変更することで明るさが変わる
明るさ最⼤(B点⼤きく = Lが⻑くなる)
明るさ最⼩(B点⼩さく = Lが短くなる)
35
©2014. Renesas Electronics Corporation, All rights reserved.
LED1
コード⽣成 → 周辺機能 → マルチファンクションタイマ2
MTU4
マルチファンクションユニット
PCLK/64
TGRA4コンペアマッチ/...
⼀般設定→MTU4 → PWMモード1
MTIOCA4端⼦初期出⼒は0、コンペアマッチで0出⼒ PA0
MTIOCA4端⼦から1出⼒
10ms
TRGA
TRGB
PWM周期=10ms
この周期によりカウンタクロックが変わります
36
©2014. Renesas Electronics Corporation, All rights reserved.
0
プログラム実⾏と動作確認
再開を2回
仕様どおりかな?
LED1をRV1で調光
できるか確認してください
RV1 LED1
RX111
RV1
37
©2014. Renesas Electronics Corporation, All rights reserved.
Power
LED0
LED1
LED2
LED3
SW3 2 1
E1
演習2の作業を
お願いします
選択問題としています
38
©2014. Renesas Electronics Corporation, All rights reserved.
3.スマートマニュアル
39
©2014. Renesas Electronics Corporation, All rights reserved.
スマートマニュアルビュー表⽰
ハードウェアマニュアルおよびレジスタのキーワード検索が可能
 レジスタ検索: 周辺I/Oレジスタ、ビット情報検索(前⽅⼀致)
 キーワード検索:トピックのキーワードでのマニュアル検索
スマートマニュアルの開き⽅:
[ウィンドウ]→[ビューの表⽰]→[その他]→[e2ソリューション・ツールキット]→[スマート・マ
ニュアル]でスマート・マニュアルビューを表⽰
レジスタ検索ビュー
レジスタ名
40
©2014. Renesas Electronics Corporation, All rights reserved.
キーワード検索ビュー
キーワード
PDF表示
エディタでのスマートマニュアル機能
POERTB.PODR.BIT.BIT.B7 ^= 1;
マウスオーバー
POERTB.PODR.BIT.BIT.B7 ^= 1;
F2
F2
マウスオーバー
周辺IOレジスタへの
マウスオーバーでマニュアルが
表示され、F2(ファンクション-2)
で詳細が表示されます
41
©2014. Renesas Electronics Corporation, All rights reserved.
演習3 (ex03)
「コード⽣成」が⽣成したコードを読んでみる
ex01と同⼀仕様のプログラムが作成されています。周辺IOの初期化部
はスタートアップから呼び出されます。初期化API関数が呼び出される
流れと、ポートの初期化関数のレジスタがどのように初期化されるかを
スマートマニュアルで確認してください。
r_cg_cgc.c
コード生成が生成したファイルです
r_cg_hardware_setup.c
リセット
r_cg_resetprg.c
void PowerON_Reset(void)
{
// 静的変数初期化
HardwareSetup();
// 割り込み許可
main();
brk();
}
42
void HardwareSetup(void)
{
R_Systeminit();
}
void R_Systeminit(void)
{
クロック,未使用ポートなど初期化
R_CGC_Create();
R_PORT_Create();
R_CMT0_Create();
}
©2014. Renesas Electronics Corporation, All rights reserved.
R_CGC_Create()
{
クロックの初期化
}
r_cg_port.c
R_PORT_Create()
{
ポートの初期化
}
r_cg_cmt.c
R_CMT0_Create()
{
CMT0の初期化
}
演習⼿順
 ex03のデバッグ構成に切り替え
 [実⾏]→[デバッグの構成]→[ex03 HardwareDebug]を選択
→デバッグ
 動作確認
 PowerOn_Reset()の流れを確認
 HardwareSetup()の直前までステップオーバー
 ステップインにてR_PORT_Create()まで移動
 R_PORT_Create()内の各種レジスタをスマートマニュアルで確認
 ステップインにて残りのAPI関数の動きを確認
 時間のある⽅は以下も試してください
 各種API関数で表⽰されるレジスタをスマートマニュアルで確認
43
©2014. Renesas Electronics Corporation, All rights reserved.
演習3の作業を
お願いします
44
©2014. Renesas Electronics Corporation, All rights reserved.
演習4 (ex04)
「コード⽣成」が⽣成したコードを読んでみる
速い方のみ
ex02と同⼀仕様のプログラムが作成されています。MTU4
の初期化関数のレジスタがどのように初期化されるかをス
マートマニュアルで確認してください。なお、演習⼿順は演
習3と同じです。
45
©2014. Renesas Electronics Corporation, All rights reserved.
演習4の作業を
お願いします
選択問題としています
46
©2014. Renesas Electronics Corporation, All rights reserved.
4.まとめ
47
©2014. Renesas Electronics Corporation, All rights reserved.
e2 studioが解決します
膨大なマニュアル
コード生成
•
•
•
•
⽅向レジスタの出⼒は1?
タイマの設定範囲は?
PRCキーコードの値は?
プロテクトの順番は?
スマートマニュアル
○
○
○
○
○
○
○
○
○
○
○
ー
ー
ー
多岐に渡る組み合わせ
• 設定に必要なレジスタは?
• どのレジスタが関連する?
• 使⽤しないレジスタは?
48
©2014. Renesas Electronics Corporation, All rights reserved.
演習を振り返って
コード生成を使ってみていかがでしたか?
□ 全体像の把握が必要でしたか?
□ 制限事項を⾒落としそうでしたか?
□ 設定が正しいか不安になりましたか?
スマートマニュアルを使ってみていかがでしたか?
□ レジスタを読むのに時間はかかりましたか?
□ スマートマニュアルを使って、
コード⽣成が作ったコードを
サンプルにできませんか?
49
©2014. Renesas Electronics Corporation, All rights reserved.
まとめ
コード生成によりコードを自動で生成できます
生成されたコードはサンプルとして利用できます
スマートマニュアルを使ってサンプルが簡単に読めます
e2 studioでみなさまの
開発初期から保守まで
快適な開発をサポートします
50
©2014. Renesas Electronics Corporation, All rights reserved.
テクニック
e2 studioは簡単に英語表示に変えられます
e2studio.ini
C:¥Renesas¥e2_studio¥eclipse¥e2studio.ini
:
-Duser.language=en 英語
-Duser.language=en
-Duser.language=ja
日本語
インストール直後はこの行がありません
英語
日本語
51
©2014. Renesas Electronics Corporation, All rights reserved.
英語版のスマートマニュ
アルをインストールして
おけば日本語が不得意
な方も楽々です
メモにお使いください
52
©2014. Renesas Electronics Corporation, All rights reserved.
5.e2 studio
53
©2014. Renesas Electronics Corporation, All rights reserved.
e2 studio概要
 ルネサスマイコンに対応した “Eclipse”ベースの統合開発環境
 グローバルに普及しているオープンソースの統合開発環境“Eclipse”と、C/C++
⾔語開発を可能とするCDTプラグインをベースとし、ルネサス製RXファミリ
(RX100, RX200, RX600)に対応した統合開発環境ツールです。
 ルネサス製ツールの他、 GNUツールやサードパーティツールを含めた、複数の
コンパイラ、デバッグツールを選択できるので、プロジェクト要求に合った環境
を選ぶことができます。
 Eclipse CDT標準の強⼒なエディタ、プロジェクト管理ツールに加え、ルネサス
ツールとしての様々な拡張機能を備えることで、コーディングやシミュレーショ
ン、エミュレータを⽤いたオンチップデバッグなど、開発サイクルに適した環境
を提供します。
注: CDT: C/C++ Development Tooling
54
©2014. Renesas Electronics Corporation, All rights reserved.
Eclipseについて
 Eclipse Foundationが、eclipse.orgのWebサイト(注)で提供する
オープンソースの統合開発環境
 Eclipse Foundation は、オープンソースのEclipse プロジェクトを運営す
る⾮営利団体であり、オープンソースコミュニティと関連製品やサービ
スの発展を⽀援
(注)http://www.eclipse.org/
 オープンソースライセンス
 “EPL(Eclipse Public License)”対象ソフトウェア
http://www.eclipse.org/org/documents/epl-v10.html
※ Eclipseにプラグインを追加することにより、プラグインのライセンス
(ルネサスソフトウェアライセンス、LGPL、サードパーティのライセンスなど)
を考慮するも必要ある
 Java開発環境として開発され、組み込み開発環境としても
グローバルで広く利⽤されている
55
©2014. Renesas Electronics Corporation, All rights reserved.
e2 studioソフトウェア構成
e2 studio
Eclipse 統合環境フレームワーク
Workbench
Online
Updates
ヘルプ
Workspace
CDT(C/C++開発環境)プラグイン
プロジェクト
ヘルプ
エディタ
管理ツール
コード生成
56
エミュレータ制御
プログラム解析
シミュレータ
アップデート
©2014. Renesas Electronics Corporation, All rights reserved.
ルネサス
Cコンパイラ
製品
KPIT
GNU
ツール製品
IAR
ツール製品
デバッガ
©
5 2014 Renesas Electronics
Compiler
パートナー
パートナー
製品
パートナー
製品
製品
コンパイラ対応

e² studio は、下記コンパイラに対応しています。
※各コンパイラは別製品のため、
別途インストールが必要です。

ルネサス:
ルネサス製RXファミリ⽤C/C++コンパイラパッケージ V.2.00.01およびそれ以降
統合開発環境なしのRXファミリ⽤C/C++コンパイラパッケージは開発中です。すぐにお使いになる場合は、統合開発環境
CubeSuite+つき(CubeSuite+ V2.01.00およびそれ以降)のRXファミリ⽤C/C++コンパイラパッケージと組み合わせて
ご使⽤ください。以下のURLから、無償評価版の統合開発環境CubeSuite+つきRXファミリ⽤C/C++コンパイラパッケージ
ダウンロードして使⽤できます。http://japan.renesas.com/e2studio_download

GNU:
KPIT Cummins Infosystems Ltd. 提供 GNUツール GNURX V13.01およびそれ以降
以下のURLから、GNUツールを無償でダウンロードして使⽤できます。
KPIT GNU TOOLS & SUPPORT Webサイト: http://www.kpitgnutools.com/
また、GNUツールに関する技術的な問合せは、同Webサイトにて英語、⽇本語で登録できます。

IAR:
IAR Systems 製IAR Embedded Workbench
IAR Embedded Workbenchについては、IARシステムズ株式会社にお問合せください。
IARシステムズ株式会社Webサイト: http://www.iar.com/jp
57
©2014. Renesas Electronics Corporation, All rights reserved.
e2 studio V3: パートナーツール連携
※⼀部開発計画中
下記パートナーツールとの連携を容易にするため、e2 studioでの使用方法について、
Application Noteに掲載中。
 Subversion(Subclipse, Subversive):
ソースバージョン管理⽀援
 Trac(Mylyn Trac):プロジェクト管理⽀援
 Doxygen(Eclox, Graphviz):
ドキュメント作成⽀援
 AgileReview: コードレビュー⽀援
 Cunit, Unity: 単体テスト⽀援
Subversion
58
Doxygen
©2014. Renesas Electronics Corporation, All rights reserved.
RXファミリ⽤C/C++コンパイラパッケージ V2(統合開発環境なし)
RXマイコンの性能を最大限に引き出すC/C++コンパイラ
~ e2 studio環境で使用する統合開発環境なし製品をリリース ~
 RXマイコンの性能を最⼤限に引き出すコンパイラ、アセンブラ、最適化リンカ
注
統合開発環境、シミュレータは梱包していません。
 RXファミリ⽤C/C++コンパイラパッケージ (統合開発環境つき) V2

(CubeSuite+版)のコンパイラ、アセンブラ、最適化リンカと同仕様

V.1.X(CubeSuite+版、High-performance Embedded Workshop版)との互換性を維持

ANSI規格C89、C99*1準拠 (*1 可変⻑配列を除く)

既存マイコンからの容易なプログラム移⾏が可能
(⾔語仕様の差異を吸収するオプションの設定、固有の拡張仕様のチェック/通知)

組み込み開発に最適な#pragmaなどを⽤意

MISRA-Cチェックオプションによる静的解析が可能
- RXファミリ⽤C/C++コンパイラ V1.02 Release00〜オプション実装
製品型名:RTCRX0000CC02WRR CD有
RTCRX0000CC02WNR CD無
59
©2014. Renesas Electronics Corporation, All rights reserved.
無償評価版ソフトウェア
【無償評価版】 RXファミリ用C/C++コンパイラパッケージ V2(統合開発環境なし)
以下のURLよりC/C++コンパイラの無償評価版を
ダウンロードしていただくことが可能です。
http://japan.renesas.com/tool_evaluation
■評価版ソフトウェア使用に際しての注意事項
評価版ソフトウェアは以下サービス提供の対象外です。
評価版ソフトウェアをご使用の場合はコンタクトセンタへお問合せいただいてもお答え
できない場合がございます。技術サポートが必要な場合は製品版購入をご検討ください。
評価版ソフトウェアに対する不具合改修
技術的なお問い合わせに対するサポート
リビジョンアップ情報などの案内メール送信
■評価版の仕様
試用期限内は、製品版と同じ。
試用期限を過ぎるとリンクサイズ(128kバイト)が制限されます。
試用期限とリンクサイズ制限:
初めて評価版ソフトウェアをインストールした後、最初にビルドを行った日から60日 。
*一度でもビルドを行った場合は評価版ソフトウェアをインストールしなおしても試用期限の延長はできません。
60
©2014. Renesas Electronics Corporation, All rights reserved.
2014.8月
アプリケーションノート
http://japan.renesas.com/
統合開発環境e2 studio アプリケーションノート
e2 studioでのCUnitの使用方法
e2 studioでのUnityの使用方法
開発環境
イベントポイント・デバッグ機能の使用方法
メモリー・デバッグ機能の使用方法
統合開発環境(IDE)
トレース・デバッグ機能の使用方法
C 言語およびアセンブリ言語でのデバッグ
e2 studioでのAgileReviewの使用方法
統合開発環境e2 studio Subversiveを用いた
e2 studioとSubversionの連携
統合開発環境e2 studio Mylyn Tracコネクタを用いた
e2 studioとTracの連携
統合開発環境e2 studio Ecloxを用いた
e2 studioとDoxygenの連携
アプリケーションノート
e2studio
統合開発環境e2 studio ユーザーズマニュアル
e2 studio V.3.0.1.9 リリースノート
e2 studio コード生成ツール ユーザーズマニュアル RX API リファレンス編
e2 studio 統合開発環境 ユーザーズマニュアル入門ガイド
61
©2014. Renesas Electronics Corporation, All rights reserved.
2014.8月
コード⽣成/スマートマニュアル対応表
RX110 (*1)
R5F51101
R5F51103
R5F51104
R5F51105
R5F5110H
R5F5110J
PG,
PG,
PG,
PG,
PG,
PG,
CG
CG
CG
CG
CG
CG
&
&
&
&
&
&
Debug
Debug
Debug
Debug
Debug
Debug
Supported
Supported
Supported
Supported
Supported
Supported
RX111 (*1)
R5F51111
R5F51113
R5F51114
R5F51115
R5F5111J
PG,
PG,
PG,
PG,
PG,
CG
CG
CG
CG
CG
RX210 (*1)
R5F52103
R5F52104
R5F52105
R5F52106
R5F52107
R5F52108
R5F5210A
R5F5210B
PG
PG
PG
PG
PG
PG
PG
PG
&
&
&
&
&
&
&
&
RX21A
R5F521A6
R5F521A7
R5F521A8
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
&
&
&
&
&
Debug
Debug
Debug
Debug
Debug
Debug
Debug
Debug
Debug
Debug
Debug
Debug
Debug
Supported
Supported
Supported
Supported
Supported
Supported
Supported
Supported
Supported
Supported
Supported
Supported
Supported
RX220 (*1)
R5F52201
R5F52203
R5F52205
R5F52206
PG
PG
PG
PG
&
&
&
&
Debug
Debug
Debug
Debug
Supported
Supported
Supported
Supported
RX610
R5F56104
R5F56106
R5F56107
R5F56108
PG
PG
PG
PG
&
&
&
&
Debug
Debug
Debug
Debug
Supported
Supported
Supported
Supported
RX621
R5F56216
R5F56217
R5F56218
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
RX62G (*1)
R5F562G7 PG & Debug Supported
R5F562GA PG & Debug Supported
RX62N
R5F562N7
R5F562N8
PG & Debug Supported
PG & Debug Supported
RX62T (*1)
R5F562T6 PG & Debug Supported
R5F562T7 PG & Debug Supported
R5F562TA PG & Debug Supported
RX630
R5F56307
R5F56308
R5F5630A
R5F5630B
R5F5630D
R5F5630E
PG
PG
PG
PG
PG
PG
RX631 (*1)
R5F56316
R5F56317
R5F56318
R5F5631A
R5F5631B
R5F5631D
R5F5631E
R5F5631F
R5F5631G
R5F5631J
R5F5631K
R5F5631M
R5F5631MF
R5F5631N
R5F5631P
R5F5631PF
R5F5631W
R5F5631Y
R5S56310
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
Debug Support Only
PG & Debug Supported
PG & Debug Supported
Debug Support Only
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
&
&
&
&
&
&
Debug
Debug
Debug
Debug
Debug
Debug
Supported
Supported
Supported
Supported
Supported
Supported
RX63N (*1)
R5F563NA
R5F563NB
R5F563ND
R5F563NE
R5F563NF
R5F563NK
R5F563NW
R5F563NY
PG & Debug
PG & Debug
PG & Debug
PG & Debug
PG & Debug
PG & Debug
PG & Debug
PG & Debug
RX63T (*1)
R5F563T4
R5F563T5
R5F563T6
R5F563TB
R5F563TB_5V
R5F563TC
R5F563TC_5V
R5F563TE
R5F563TE_5V
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
PG & Debug Supported
Debug Support Only
PG & Debug Supported
Debug Support Only
PG & Debug Supported
Debug Support Only
RX64M
R5F564MF
R5F564MG
R5F564MJ
R5F564ML
PG,
PG,
PG,
PG,
CG
CG
CG
CG
&
&
&
&
Supported
Supported
Supported
Supported
Supported
Supported
Supported
Supported
Debug
Debug
Debug
Debug
Supported
Supported
Supported
Supported
PG: プロジェクト生成, CG: コード生成, Debug: デバッガサポート
*1: スマートマニュアル対応
62
©2014. Renesas Electronics Corporation, All rights reserved.
メモにお使いください
63
©2014. Renesas Electronics Corporation, All rights reserved.
ルネサス エレクトロニクス株式会社
©2014. Renesas Electronics Corporation, All rights reserved.