C-Firstボードは書籍に付録DVDにC言語の開発環境CS+があり,本文でも使い方を紹介しています。このRL78の統合開発環境にはe2 studioがあると説明されていたので,使ってみた状況を紹介します。
e2 studioにはコンパイラとしてルネサスのCC-RLとGNUのGCCが使えます。
今回はGCCの紹介です。GCCを使うメリットは64KBを超える開発ができることとC++が使えることです。
e2 studioはここからダウンロードしておきます。
https://www.renesas.com/ja-jp/products/software-tools/tools/ide/e2studio.html#downloads
e2 studioにはコンパイラが含まれていませんが,インストール時にデフォルトでCC-RLの追加インストールも含まれています。
e2 studioを起動したらワークスペースに適当なフォルダ名を入力します。
「ようこそ」のウィンドウが表示されていますが,閉じてしまいましょう。
Renesasツールチェーンの追加を選びます。表示された中に「GCC for Renesas RL78」が表示されていればOKです。
GCCが見当たらない場合はここからダウンロード,インストールした後に「追加」ボタンでインストールしたフォルダを指定します。
https://gcc-renesas.com/ja/
書籍で紹介されているサンプルは全てCC-RLなので,GCCではコンパイルできません。なので,ソースコードのみをポーティングします。
手順は,土台になる空のプロジェクトを作成して,main関数以降をコピーしてポーティングします。
先ず新規に「C/C++ project」を作成します。
デバイスは「R5F104LE」,デバッガはEZ(RL78)に設定します。
プロジェクトの生成が終了したら空のmain関数があるので,これを編集して使います。
ここではsample1_1.cのmain関数の中身をコピーしてみました。
iodefine.hとiodefine_ext.hをソースに加えます。
ポーティングが完了したらビルドします。このボタンがビルドです。
プロジェクト名を右クリックしてもビルドメニューが表示されます。
エラーが無く「ビルドが完了しました」が表示されてOKです。
次はデバッグです。このボタンがデバッグです。
▼をクリックして「デバッグの構成」を開けて「Renesas GDB Hardware」にプロジェクト名,ここではsample1_1Hardware Debugが表示されていて「Debugger」のタグを開き,EZ(RL78)が設定されていることを確認して,デバッグを開始します。
パースペクティブ(表示されているウィンドウやメニューの並び)をデバッグに適したものに変更するかと言われるので,「はい」とします。
確認できたら実行を停止します。EZエミュレータとの接続解除も行うのはこのボタンです。
以上でGCCにポーティングしたサンプルコードの実行までの作業でした。
設定さえ間違えなければ,意外とすんなりGCCへのポーティングも可能,という印象です。
割り込み処理も空の関数が生成されていますから,中身だけをポーティングすることですぐに動きそうです。
最初に書きましたがGCCはフリーのコンパイラですから,CC-RLのようなサポートは無いものの,C++が使えますし,64Kバイトを超えるサイズも制限がない点は嬉しいですね。