RL78マイコン,MCU:マイコン,LPCマイコン,Kinetisマイコン,STM32マイコン,PSoC/PRoCマイコン,Cortex-M0+コア,Cortex-M0コア,Cortex-M3コア,Cortex-M23コアテンプレート,CC-RLコンパイラ,CS+,IDE,Eclipse,MCU,後方互換,プロジェクト,差分情報,デフォルト,コンパイル・オプション

MCU統合開発環境は、後方互換が重要です。数年前に開発したプロジェクトを改良・改版する際には、最新の開発環境(IDE)でも開発当時と同じ動作が求められるからです。

ベンダー各社もこの点に留意してIDE改版を行っているハズです。ただ、リリースノートにも具体的な互換性説明などは見当たりません。そこで、MCU最新IDEの後方互換性を検証します。

本稿は、ルネサスエレクトロニクス(以下、ルネサス)の最新IDE:CS+に、弊社2015年開発のRL78/G1xテンプレートプロジェクトを適用し、発生するメッセージなどを示し、開発当時と同じ動作をするかを確認します。もちろん、これはあくまでも一例にすぎませんが、開発中にIDE更新に遭遇した際などの安心材料になれば幸いです。

ルネサス統合開発環境CS+

2018年9月最新ルネサスIDE CS+は、Ver.: V7.00.00(2018/07/20リリース)です。CS+は、業界標準のEclipseベースIDEではなくルネサス独自開発のIDEです。

好都合なことにWindows 10 1803をクリーンインストールしたので、まっさらなWindows 10へ最新CS+をインストールした条件で検証ができます(1803クリーンインストール顛末はコチラを参照)。

CS+ダウンロードサイトでカテゴリ:無償評価版を選び、分割ダウンロードか一括、CS+ for CCかCS+ for CA,CX のどれかのパッケージをダウンロード後、実行すれば必要なツール全てがWindowsへインストールされます。

統合開発環境CS+パッケージ
統合開発環境CS+パッケージ(一括ダウンロードの例)

関連投稿:CS+ for CCとCS+ for CA,CXの違い

既存プロジェクトを新しいCS+で開いた時のメッセージ

以下CS+ for CCの例で示しますが、CS+ for CA,CXでも同じです。

既存のプロジェクトを開く
既存のプロジェクトを開く。BB-RL78G13-64.mtpjをクリック。

CS+ for CCを起動し、既存のプロジェクトを開くでRL78/G1xテンプレートプロジェクトのCC-RLを選択すると、最初に警告メッセージが表示され、出力パネルにその内容、プロジェクト開発当時と新しいCS+での「プロジェクトの差分情報」が表示されます。

既存プロジェクトを開いた時に表示されるメッセージとその内容
既存プロジェクトを開いた時に表示されるメッセージとその内容

※“プロジェクト差分情報”は、新規CS+をインストールした時だけでなく、プロジェクト開発中にCS+更新に遭遇した際にも表示されます。

黒字の “デバイス・ファイルが更新……”は、CS+がサポートするMCUデバイスが増えたために発生します。あまり気にする必要はありません。

青字の “プロジェクト差分情報”は、新しいCS+を用いた結果、既存プロジェクトに生じた差分、影響のことです。

例えば、CS+のCC-RLコンパイラが改良・改版され、開発当時のコンパイル・オプションには無かった [間接参照を1バイト単位で行う] 選択肢が発生し、これに関しては、「いいえ」を選択したことなどが解ります。

これらの選択は、基本的に既存プロジェクトに影響が無い(少ない)方をデフォルトとしてCS+が選びます。このデフォルト選択が、CS+の後方互換を実現している鍵です。

後方互換の検証:プロジェクトビルド成功と評価ボードの動作確認

そのままビルド(B)>ビルド・プロジェクト(B)を実行すると、サブプロジェクトを含め全プロジェクトがリビルドされます。出力パネル青字は警告:Warring、赤字はエラー:Errorを示します。

全プロジェクトビルド結果
全プロジェクトビルド結果

出力パネルに赤字が出るのは問題ですが、青字内容に問題がなければ、新規CS+でもプロジェクトが正常にビルドできたことを示します。

そこで、ターゲット評価ボードへビルド出力をダウンロード、既存プロジェクト開発当時の動作確認ができ、最新CS+で後方互換が検証できました。

CS+の便利機能

ルネサスCS+には、プロジェクトと開発ツールをパックして保存する便利な機能があります。

CS+の便利機能
CS+の便利機能。プロジェクト開発時の環境を丸ごとそのまま保存できる。

この開発ツールとは、使用中の統合開発環境のことで、文字通りプロジェクトとCS+、デバイス・ファイル情報などのプロジェクト開発時の環境を丸ごとそのまま保存し、復元もできます。
但し、当然OS:Windowsまでは保存しなので、年2回の大規模OS更新やWindows 7サービス終了などには開発者自ら対応する必要があります。

後方互換とプロジェクト開発方針

IDEの後方互換は、開発者にとっては当然のことです。ただし、改良・改版された最新コンパイラ性能を、既存プロジェクトで最大限引き出しているかは疑問を持つ方もいるでしょう。個人的には、この点について以下のように考えます。

  • プロジェクト開発時、使用する統合開発環境のコンパイル・オプションは、最適化も含めてデフォルト設定で開発。
  • サイズ優先や速度優先の設定は、開発の最終段階で必要性がある時にのみ最小限設定し、その設定をソースに明記。

例えば、弊社マイコンテンプレートは、1つを除いて全て上記方針で開発しています。除いた1点とは、NXPのLPC8xxテンプレートのLPC810(ROM 4KB/RAM 1KB)の小ROMデバイスの1段最適化のみです。テンプレート(ひな形)の性質上、いろいろなプロジェクトへの適応性が高いのもこの方針の理由です。また、デフォルト設定と最小限設定なので、結果的に最新統合開発環境への後方互換も取りやすいと言えます。

経験上、コンパイル・オプションを操作して開発したトリッキーなプロジェクトは、設計段階(MCU選択やプログラム構成)の失敗だと考えています。個人的には、デフォルト設定で十分余裕(50%程度)がある設計がお勧めです。これを確かめるためにも、プロトタイプ開発は重要だというのが私の考えです。

MCU統合開発環境、後方互換のまとめ

MCU統合開発環境(IDE)とWindows環境の年間メジャー更新スケジュールは下図です(2018年7月9日投稿の再掲)。

主要開発環境の年間更新スケジュール
主要開発環境の年間更新スケジュール

プロジェクト開発中にこれら更新に遭遇することは少なくないでしょう。本稿は、ルネサスCS+を例に最新IDEの後方互換性を確認しました。EclipseベースのIDEでも同様です。まとめると、

  • IDE更新後、最初に既存プロジェクトを開く時の差分情報で、プロジェクトに生じた差分、影響を分析し、後方互換を検証
  • コンパイル・オプションはデフォルト設定が、更新された統合開発環境の後方互換を取りやすい

ことを示しました。

RL78マイコン,MCU:マイコンRL78/G13,RL78/G14,CC-RLコンパイラ,RL78/G10,CS+,RL78/G1x

Runesas RL78開発者の方々へ読んでほしい記事、「ARMコアの普及:前後編」を紹介します。

記事概要

ARMコア普及の背景、理由、MCUベンダーメリット、開発者メリットなどが解り易く記載されています。

Runesas RL78開発者の方々は、日々忙しい開発スケジュールに追われ、課題解決のために情報収集などを行っていると思います。RL78情報は、日本語資料やかふぇルネによるコニュニティーサポートも充実しているので、日本人開発者にとってRL78は便利です。

但し、別MCUの状況を知ることも大切です。RL78は優れたMCUです。しかし、良いMCUや技術が生き残るかは、全く別問題です。開発者は、現状に拘らず、バックアップ技術も習得しておくことが大切です。

このバックアップ技術の候補を考えるうえで、上記記事は示唆に富んだ方向性を示してくれると思います。


CS+ V6更新後のウイルス対策ソフトAvastとの相性問題

先日RunesasのCS+がV6に更新されました。弊社マイコンテンプレート動作を、この最新CS+で確認しました。

但し、動作確認終了後、約1時間した後に、ウイルス対策ソフトAvast 17.5.2303から下記ワーニングが発生しました。CS+は、既に動作終了しています。

CS+とAvast相性問題
CS+とAvast相性問題

動作終了したCS+が原因だと気が付かずに、うっかり動作を阻止すると、CS+の今後の動作に支障が発生する可能性もありますので、私は、除外リストへCS+の当該処理を加えました(以前も同様のワーニング発生で同じ対処でトラブル回避しました)。

同じようなワーニングが発生した場合には、 参考にしてください。

RL78マイコン,MCU:マイコンテンプレート,アプリケーション,CC-RLコンパイラ,CS+,RL78/G1x

2017年1月にCS+パッケージバージョンV5.00.00  [05 Dec 2016]がリリースされました。確かバージョンV4から追加された3種のスマート・ユーティリティのうち、スマート・ブラウザーを説明します。

スマート・ユーティリティ
スマート・ユーティリティ

スマート・ブラウザー

組込マイコン:MCU開発を上手く効率的にする手法は、今風に言うと“サンプルソフトファースト”です。

分厚いユーザーズ・マニュアルを、初心者が読んでも眠くなるだけで時間のムダです。開発事案に近い例や使用する周辺回路が記載されたサンプルソフト=アプリケーション・ノートを先ず読んで、不明な箇所をユーザーズ・マニュアルの目次から拾い読みすれば十分です。

この開発例や周辺回路のサンプルソフトを見つけるのに便利なのが、CS+に追加されたスマート・ブラウザーです。

スマート・ブラウザー
スマート・ブラウザー

アプリケーション・ノートタブを選び、タイトルや機能で並び替えするとクイックにサンプルソフトが選定できます。ルネサスサイトでもアプリノート検索はできますが、CS+のスマート・ブラウザーの方が使い易く検索も高速です。

アプリノートは、ユーザーズ・マニュアルと比べると、一般的に内容をサラッと記述します。詳しくくどく書くこともできますが、読まれることを重視するとこの書き方になるのだと思います。サンプルソフトの読み方は、コチラも参照してください。

アプリノートの次に登場するのがユーザーズ・マニュアルです。こちらは、丁寧に記述されていますので、アプリノートの不明点を明確にし、その箇所を読めば時間節約ができます。近頃の開発は、1からディスクリートで着手する(≒オートクチュール)よりも、既にある既成品を上手く組み合わせて早期に開発する方(≒プレタポルテ)が好ましいと思います。これは、ハード/ソフトともに言えることです。

いかに既製品、この場合はアプリノートを見つけ、それを破綻なく組み合わせて顧客へ提供するのも1つの開発技術です。

複数アプリノートを簡単に組み合わせるマイコンテンプレート

1つのアプリノート流用で開発完了することは、稀です。大抵は、複数のアプリノートの部分利用、応用が必要となります。アプリノートは、内容をサラッと記述するために、初期設定+無限ループの2構成が殆どです。複数アプリを流用するには、アプリノート記載の無限ループ内処理の取り込み方が問題です。

そこで登場するのが弊社マイコンテンプレートです。マイコンテンプレートは、1個の無限ループ内に複数の時分割アプリランチャーを備えています。そこで、このランチャーに必要となるアプリノート処理を組み込めば、簡単に複数アプリノート処理をテンプレートで起動できます。しかも、低電力動作SleepやHaltの機能も追加しています。

マイコンテンプレートの詳細は、コチラを参照してください。

MCU開発は、開発完了が見極め難い性質があります。なるべく早く1次開発物を顧客に見せ、そのうえで2次開発へと進む段階を追った開発、いわゆるプロトタイピング開発もこの性質対応の1方策です。
このプロトタイピング開発の際には、是非マイコンテンプレートを活用し早期に、しかも拡張性や応用性もある開発物提供に役立ててください。

RL78マイコン,MCU:マイコンRL78/G13,RL78/G14,RL78/I1D,CC-RLコンパイラ,RL78/G10,CS+,RL78/G1x

2016年9月の記事で、ルネサスRL78消費電流シミュレータのキャンペーンを紹介しました。2016年12月にこのシミュレータの解説ガイトがリリースされましたので、紹介します。

2種類の消費電流シミュレータ

解説ガイトから抜粋の2種類の消費電流シミュレータ比較結果を示します(本家サイト全検索も綺麗な表が見つかりませんので、低解像度はご勘弁を)。

Current Simulator Comparison
消費電流シミュレータの比較(記事より)

比較表上側:消費電源計算ツールが9月で紹介したWebシミュレータです。弊社9月記事で懸念したシミュレータの精度は、あくまで参考値だそうです。低消費電力が売りのRL78/G10、G13、G14、G1Dで対応品種が多く、Webで手軽に使えるツールなので、どの程度の参考になるかをもう少し具体的に、技術的に示してほしいです。

もう1つの実測値の±10%程度の精度がでるシミュレータ:比較表下側は、RL78/G10とG13に対応中で、e2 studioのプラグインで機能提供するものです。将来的には、こちらもクラウド対応にする計画があるとガイドに記載されています。シミュレータで10%誤差なら、結果に十分説得力があります。

CS+で使える消費電流シミュレータは?

気になるのは、この2番目のツールが、RL78/G1x開発では圧倒的に使い易いIDE CS+を差し置いて、e2 studioでのみ提供中である点です。ルネサスはe2 studioへIDEを一元化したいのでしょうか? それとも、CS+よりもe2 studioユーザが多い(あくまで推測ですが、その)結果が反映されたのでしょうか? CS+ユーザの私には非常に気になりました。

RL78マイコン,MCU:マイコンRL78/G13,RL78/G14,テンプレート,RL78/I1D,RL78/G1G,CC-RLコンパイラ,RL78/G1F,RL78/G10,RL78/G1x

2016年7月16日号RUNESAS TOOL NEWSで、RL78ファミリ用CコンパイラパッケージV1.03.00のリビジョンアップが通知されました。7月21日からCS+アップデートの確認、または、アップデート・マネジャーで更新可能です。

弊社RL78/G1xテンプレートは、2015年7月4日にRL78-S1/S2/S3コア全てに対応のVer5を発売して以降、変更を加えていません。そこで、RL78/G1xテンプレートVer5の上記CコンパイラV1.03.00対応状況を報告します。

CS+出力パネル

アップデート・マネジャーでCコンパイラアップデートを実行後、最初にCS+を起動すると、警告(W0202005)ダイアログが表示されますのでOKをクリックします。この警告は、更新など何らかの変更がCS+に加わった時に注意喚起を促すダイアログで、出力パネルに下記のような詳細内容が表示されます。

CS+出力パネル警告
CS+出力パネル警告

青字が変更箇所です。黒字は、お使いの環境設定により異なりますので、無視してください。

さて、今回のCコンパイラリビジョンアップで、RL78/G1xテンプレートVer5を再コンパイルします。方法は、ビルド(B)>クリーン・プロジェクト(C)を実行後、リビルド・プロジェクト(R)を実行します。出力パネルに下記結果が表示されます。

CS+出力パネル0エラー
CS+出力パネル0エラー

私のCS+は、評価版インストール後かなり経過していますので評価期間切れの警告が表示されますが、無視してください。

0エラーですので、今回のCコンパイラパッケージリビジョンアップに対して、RL78/G1xテンプレート付属の下記6プロジェクトに対して問題なく動作します。動作確認評価ボードは、コチラに一覧写真があります。

RL78/G1xテンプレートVer5のプロジェクトとRL78コア、評価ボード
CS+プロジェクト名 RL78対応コア 動作確認評価ボード
BB-RL78G13-64(プロジェクト) RL78-S2コア BlueBoard-RL78G13-64
RL78G13-PB(サブプロジェクト) RL78-S2コア G13スタータキット:RL78G13-Stick
RL78G14-PB(サブプロジェクト) RL78-S3コア G14スタータキット:RL78G14-Stick
QB-R5F100LE-TB(サブプロジェクト) RL78-S2コア QB-R5F100LE-TB
QB-R5F104LE-TB(サブプロジェクト) RL78-S3コア QB-R5F104LE-TB
QB-R5F10Y16-TB(サブプロジェクト) RL78-S1コア QB-R5F10Y16-TB

プロジェクト内容やマイコンテンプレート概要等は、マイコンテンプレートサイトからPDFダウンロードができますので参照ください。

RL78マイコン,MCU:マイコン,LPCマイコン,Kinetisマイコン,PSoC/PRoCマイコン,Cortex-M0+コア,Cortex-M0コアテンプレート,アプリケーション,LPC8xx,ARMマイコン,Cortex-M0,LPC111x,Kinetis Design Studio,IoTマイコン,Kinetis L,CC-RLコンパイラ,LPCXpresso,CS+

扱うMCUデバイスの追加、WindowsやiOSなどのOS変更、Eclipseそのものの変更、バグ修正など様々な要因によりマイコン開発環境:IDEの更新は発生します。今回は、マイコンIDE更新について解説します。

更新通知と更新理由

マイコンアプリケーションソフト開発中ならば、リスクが増える可能性もあるIDE更新は避けたいものです。
このため「開発者が更新をするか否かを選択」できるのがマイコンIDEの特徴です。Windowsと大きく異なる点ですね。

更新判断には、「更新が発生」したか、「更新の理由」は何か、この2つを知る必要があります。この情報をIDEのWelcome画面のWebリンクで教えてくれるのがEclipseベースのIDEです。NXPのLPCXpressoの例を示します。

LPCXpresso Welcome page
LPCXpresso Welcome page

赤矢印のリンク先をみると、最新版IDEと、変更内容などが解ります。使用中のIDEと版数が異なる場合には、この内容を読んで更新判断ができます。新旧LPCXpressoは、緑囲いで示した版数毎に別フォルダへインストールされるので、IDE更新リスクがフォルダ内に閉じ込められるので安心です。

また、NXPに買収された旧FreescaleのKinetis Design Studio: KDSの例が下図です。Welcome画面に加え、Help>Check for Updatesで更新確認と新版インストールまでバックグラウンドで可能です。この機能は、LPCXpressoにはありません。

Kinetis Design Studio Check for Updates
Kinetis Design Studio Check for Updates

但し、私の環境では、ベースとなるEclipseのメジャー更新が関係しているのかもしれませんが、KDS V3.1からV3.2への更新ができませんでした。V3.2更新は、別途インストーラで可能です。やはりIDE更新確認ツールがあっても、時々サイトでIDEの最新版確認は、必要だと思いました。

また、CypressのPSoC Creatorは、Update Managerツールで更新確認とインストールができます。旧版はアーカイブ保存されるので、万一最新版にトラブルが発生しても安心です。

Cypress Update Manager
Cypress Update Manager

以上3社のマイコンIDEは、どれもEclipseベースのIDEですが、更新方法や旧版の扱いは各社異なります。

一方、ルネサス独自仕様のIDE:CS+もアップデート・マネジャーツールで更新します。独自仕様なので、細かい更新内容確認や、一部選択更新なども可能です。ツール・ニュースなどで更新、バグ情報を知らせてくれるのも役立ちます。
また、更新前に、「開発ツールをパックして保存(K)…」を実行すると、更新トラブル対策も可能です。

Runesus CS+ Packing tool
Runesus CS+ Packing Tool

マイコンIDE更新を安全にするには

マイコンIDEの更新トラブル回避には、OS起因でない場合は、旧版のIDEへ戻せることが必要です。また、Eclipseのメジャー更新時などは、操作方法が変わることもあるので注意が必要です。
開発案件のキリが良い時期に更新するのが安全策でしょう。

マイコンIDE開発経験を活かすには

弊社マイコンテンプレートで使用中の各社IDE特徴を示します。マイコンIDEは、Eclipseベースに集約されつつあるようです。今回は、同じベースでもIDEの更新方法が異なることを示しました。

これは、EclipseベースのIDEを使う時に覚えておくと役立つのが、各社共通のエディタやデバッグなどのコア機能であることを暗示しています。他社IDE使用時に、この経験が活かせるからです。

MCU IDE Comparison
マイコンIDE比較

マイコンIDE習得のコツやTipsは、コチラのページにもまとめています。参考にしてください。

RL78マイコン,MCU:マイコンRL78/G13,RL78/G14,テンプレート,アプリケーション,RL78/I1D,RL78/G1G,CC-RLコンパイラ,RL78/G1F,RL78/G10

2月1日発行のルネサスツールニュースで、RL78/G1xの「CA78K0Rコンパイラ V1.71の回避不能なバグ」が報告されています。

RL78/G1xテンプレートVer5のCA78K0Rコンパイラ版でも、報告記載の「volatile」や「前置インクリメント」を使っていますが、こられバグに該当しませんので安心してください。
但し、テンプレートを使ってアプリを開発された方は、ニュース内容に目を通し確認することをお勧めします。

RL78_G1xテンプレートの動作コンパイラP3より抜粋
RL78_G1xテンプレートの動作コンパイラP3より抜粋

ニュース最後に、「次期バージョンで改修する予定」と記載されていますので、ディスコンを懸念したCA78K0Rも改版されるかもしれません。しかし個人的には、CC-RLコンパイラへの乗換えをお勧めします。

RL78マイコン,MCU:マイコンRL78/G13,RL78/G14,テンプレート,RL78/I1D,RL78/G1G,CC-RLコンパイラ,RL78/G1F,RL78/G10,RL78/G1x

ルネサスサポート情報 Vol.273 2016/1/28で、RL78統合開発環境CS+ for CCからe2 studioへの移行ガイドが示されました。

このガイドは、CC-RLでコンパイルしたCS+プロジェクトを、e2 studioプロジェクトへ変換(インポート)し、インポートしたe2 studioプロジェクトとE1デバッガを接続する方法が示されています。

CA78K0R → CC-RL → e2 studio

RL78アプリノート/サンプルコードの機能をクリックして「置き換え」の欄を視ると、CA78K0RからCC-RLプロジェクト変換方法はありますが、CA78K0Rからe2 studioへの移行ガイドはありません。

RL78アプリケーションノート/サンプルコード(機能)
RL78アプリケーションノート/サンプルコード(機能)

つまり、今回RL78開発環境CS+のCA78K0R → CC-RL → e2 studioへの道筋が示された訳です。

ルネサスのIDE

HewからCS+、そしてe2 studioが追加されたルネサスIDEの状況が、統合開発環境ページに示されています。CS+とe2 studio間は、「両方向の矢印」ですが、これが今後「e2 studioへの片方向」へ変わるかが気になります。

ルネサス統合開発環境の移行
ルネサス統合開発環境の移行

なにせ、CS+のようなユニークな独自IDEを開発、サポートするだけでも結構大変なことだからです。e2 studioは、Eclipse IDEを日本語化しルネサスの各種ツールを組込めますが、これだけでも手間がかかるでしょう。

テンプレートのe2 studioサポート

現状は、「CC-RLとCA78K0R両方サポート」のRL78/G1xテンプレートですが、e2 studio動作のテンプレートも必要と考えています。

E1でデバッグする評価ボードは、移行ガイドに従えば問題なさそうですが、EZ Emulatorで接続するRL78G13/G14-Stickボードがe2 studioでデバッグできるか否かが不明です。近々にこの調査結果を掲載予定です。

※e2 studioでE1は勿論ですが、EZ Emulatorも接続できることが確認できました。

RL78マイコン,MCU:マイコンRL78/G13,RL78/G14,テンプレート,RL78/I1D,RL78/G1G,CC-RLコンパイラ,RL78/G1F,RL78/G10,RL78/G1x

ルネサスサポート情報 Vol.272 2016/1/21に、RL78ファミリ用Cコンパイラ CC-RLコーディングテクニックが紹介されています。

CC-RLコーディングテクニック

RL78/G1xテンプレートでも使っている「CC-RLコンパイラの上手い使い方」がまとまっています。
e2 studioとCS+ for CC(RL78, RX, RH850)両方のIDEについて、従来あまり解説されなかった「変数/関数情報ファイル」に関しての利用方法も少し記載されています。

e2 studioの説明がCS+と同じ資料に含まれているのは、これまで見たことがありません。e2 studioの日本人ユーザが増加しつつあるからでしょうか?

CS+がV3.03.00へ改版

2015年末にCS+がV3.03.00へ更新されました。
更新に伴い、CS+ for CCは、パッケージ・バージョンもV3.03.00へ変わりましたが、CS+ for CA、CXはV3.01.00のままです(CS+ アップデート・マネジャのオプション>更新履歴の表示より)。

RL78マイコンは、前回更新から増加しているハズですので、追加RL78マイコンは、CC-RLコンパイラのみでサポートするのかもしれません。確かに、「新規にCS+ for CA、CXを使うメリットは、無い」と言えますので、しょうがないのかもしれません。CS+ for CA、CXのユーザの方は、ご注意ください。

販売中のRL78/G1xテンプレートVer5は、CS+ for CA、CXとCC-RLの両コンパイラをサポートしております。CA、CXユーザの方で、CC-RL移行をお考えの方も、是非ご検討ください。

RL78/G1xテンプレートも今後は、「CS+ for CC-RLのみをサポート予定」です。但し、ご購入時にご連絡いただければ、Ver5のCS+ for CA、CX版テンプレートも付属いたします。

RL78マイコン,MCU:マイコンRL78/G13,RL78/G14,テンプレート,RL78/I1D,RL78/G1G,CC-RLコンパイラ,RL78/G1F,RL78/G10,RL78/G1x

RL78/G10の初期設定アプリケーションノートがRev.2.00に改版されました(ルネサスサポート情報 Vol.267 2015年11月26日発行)。この改版内容から、RL78/G1xコンパイラの今後を予測します。

汎用マイコンRL78/G1xの特徴

RL78/G1xの解り易い機能比較を示します。
RL78ファミリカタログを観ると、品種が多く機能満載なRL78は解るのですが、弊社テンプレート対象の汎用マイコンRL78/G1xの特徴は、逆に見えなくなるので、この比較図は重宝します。

RL78/G1x機能比較
RL78/G1x機能比較

最初の3列:RL78/G13~G10が、汎用中の汎用マイコン、G1A~G1Eがこれらに、右赤で表記した機能を強化したマイコンという構成です。

RL78/G1Dが、開発中のPSoC 4 BLEテンプレート対抗機です。Bluetooth Low Energyを搭載すると128 – 256KBのフラッシュROMが必要になり、IEEE802.15.4e/g搭載のRL78/G1Hでは、256 – 512KBに増えることが解ります。この容量では、残念ですが64KB制限の無償CS+を使うことができません。

もちろん、以前示したように上手く機能分割すれば無償版での部分開発も可能ですが、BLEや802.15の部分のみで64KBを超えることは、PSoCの例から考えると確実です。
現状の無償版制限がなくならない限りRL78/G1DやG1H開発は、かなりのコストアップになるでしょう。

RL78/G1xのCA78K0RコンパイラとCC-RLコンパイラ

現在のRL78/G1xテンプレートVer5は、CA78K0RとCC-RL両方のコンパイラに対応しています。

しかし、RL78/G10の初期設定アプリケーションノートRev.2.00の改定記録A-1ページを見ると、改定内容のCS+動作確認バージョン表2.1にCA78K0Rは含まれず、CC-RLコンパイラのみとなっています。
これは、新しいアプリケーションノートは、CS+ for CA, CXの「CA78K0Rコンパイラ動作確認はしない」とも読めます。深読みかもしれませんが、安全側の読みをすればこうなります。

RL78/G1xを使った出荷済み製品には、まだCA78K0Rコンパイラ版で開発したプログラム搭載機が多くあると思います。ルネサスからの正式な発表はありませんが、上記の状況を考慮すると、今後製品改良または、新規製品開発には、CC-RLコンパイラの利用が必須と考えます。

これらの事から、弊社RL78/G1xテンプレートも次版からは、「CC-RLコンパイラのみを対象」とする予定です。どうしてもCA78K0Rコンパイラ版が必要な方は、Ver5テンプレートのままですが提供いたします。

RL78/G1xテンプレートVer5は、CA78K0Rコンパイラでの動作確認もしています。ご安心ください。