技術コラム Vol.4

ドライバソフト開発を軽減!RXマイコンFIT活用ガイド

開発部 エンジニア / 大見

公開日:2022/05/20

RXマイコンはルネサス エレクトロニクス社オリジナルのRXv1/RXv2/RXv3コアを搭載した32bit MCUです。
現在、RXファミリとしては、最も高性能なRX700シリーズ、汎用性を重視したRX600シリーズ、低消費電力と性能のバランスを重視したRX200シリーズ、超低消費電力のRX100シリーズの全4シリーズが展開されています。

RXファミリでは、統合開発環境「CS+」や「e2studio」をはじめ、「Firmware Integration Technology(FIT)」など、さまざまな開発用ツールがルネサス エレクトロニクス社より提供されています。

今回は、RXマイコンのソフトウェア開発をはじめる方向けに

  1. 開発環境の準備
  2. FITを利用したユーザープログラムの作成手順

をご紹介いたします。

1. 開発環境の準備

RXマイコンの開発をはじめる場合、以下の機材とソフトウェアを用意する必要があります。

  • 統合開発環境(エディタ、コンパイラ、デバッガ)
  • OS、ソフトウェア、ドライバなど
  • JTAGエミュレータ
  • 内蔵フラッシュ書き込みソフト
  • CPUボード(ターゲットボード)
  • Windows PC

RXマイコンでは、ルネサス エレクトロニクス社から提供されるソフトウェア開発環境のほか、各サードパーティのソフトウェア開発環境も利用できます。

ルネサス エレクトロニクス社が提供する統合開発環境には、「CS+」と「e2studio」の2種類があります。

本コラムでご紹介する「CS+」はルネサス オリジナルの統合開発環境で、RXマイコンのほか、RLマイコンやRX850マイコンなどに対応しています。オリジナルならではの最適化により、直感的で快適な操作が特徴です。

「e2studio」は、Eclipseベースの統合開発環境で、Arm®コアを含む広範なMCUに対応しています。
技術コラム Vol.02 今からはじめるRAマイコン開発」でもご紹介していますので、ぜひご覧ください。

なお、「CS+」と「e2studio」含め、各ソフトウェアツールは無償で使用できます。ただし、コンパイラ部分である「CC-RX」は有償となっていますので、ご注意ください。(60日間の試用期間あり)
詳細は、ルネサス エレクトロニクス社の製品ページをご確認ください。

また、弊社では、CPUボードとエミュレータとコンパイラをセットにした開発キットをご用意していますので、これから導入される方はご検討いただければ幸いです。

RX開発キット製品ページhttps://www.apnet.co.jp/product/rx/index.html#kit

(1)統合開発環境「CS+」の概要とインストール

「CS+」は「エディタ」「コンパイラ」「デバッグコントロール」などをパッケージングした統合開発環境です。マイコン開発に必要な基本ソフトウェアツールがすべて含まれているので、「CS+」をインストールするだけで、ソフトウェア開発をすぐに始めることができます。

「CS+」には、今回使用するRXマイコン・RLマイコン開発向けの「CS+ for CC」のほか、RLマイコン・RH850マイコン向けの「CS+ for CA, CX」の2種類がありますので、ご注意ください。

1. インストーラのダウンロード

以下のサイトより、RX用CS+版のインストーラをダウンロードします。
https://www.renesas.com/jp/ja/software-tool/cs

リリース情報

2. インストールの実行

ダウンロードしたインストーラを実行します。
複雑な設定は必要なく、起動画面に沿って選択していくだけで簡単にインストールが可能です。

CSインストーラ はじめにお読みください

(2)「スマート・コンフィグレータ」の概要とインストール

「スマート・コンフィグレータ」は、ドライバやミドルウェアをマウス操作だけでユーザープログラムに組み込めるGUIソフトウェアです。クロックの設定やピンアサインの設定なども可能です。
「スマート・コンフィグレータ」は、マイコンや開発環境ごとに複数のバージョンが用意されています。

1. インストーラのダウンロード

以下のサイトよりRX用CS+版のインストーラをダウンロードします。
https://www.renesas.com/jp/ja/software-tool/smart-configurator

Renesus RX スマート・コンフィグレータ

2. インストーラの実行

ダウンロードしたインストーラを実行し、表示に従ってインストールします。

Renesus RX スマート・コンフィグレータインストール画面

(3)「RX Driver Package」の概要

「RX Driver Package」は、RXマイコン共通のソフトウェアプラットフォームです。マイコンの初期化機能からタイマ・UARTなどの各種ドライバ機能、USBなどのミドルウェア機能までパッケージングされています。
「RX Driver Package」のソフトウェアは、「FITモジュール」として提供されます。

(4)Firmware Integration Technology(FIT)の概要

「Firmware Integration Technology(FIT)」は、各周辺機能モジュールドライバをユーザープログラムに組み込むための仕組みです。「FITモジュール」として提供されているドライバやミドルウェアを、スマート・コンフィグレータにより容易にユーザープログラムに組み込むことができるので、ソフトウェア開発の負担を軽減することができます。
また、FITモジュールは共通ルールで作成されているため、ソフトウェア資産の管理が簡素化され、異なるRXマイコンへ移行する場合でも容易に移植することができます。

「FITモジュール」の構成イメージは、以下のようになっています。

ユーザーアプリケーション、FITモジュール、RXマイコンデバイス

FITモジュールがRX72Nでサポートしているデバイスドライバ・ミドルウェアの一例をご紹介します。

RX72N FITモジュール

デバイスドライバ

  • USB
  • GPIO
  • CAN
  • ADC
  • Ethernet
  • SCI
  • SDHI
  • LCDC
  • ...

ミドルウェア

  • 通信
  • ファイルシステム
  • 画像処理
  • オーディオ
  • ...

最新の対応状況は、ルネサス エレクトロニクス社「FITモジュールリスト」で確認できます。
https://www.renesas.com/document/oth/list-fit-modules?r=1169366

(5)JTAGエミュレータ

RXマイコンのプログラムのデバッグおよび書き込みには、JTAGエミュレータを使用します。JTAGデバッガやデバッグプローブとも呼ばれます。JTAGエミュレータは、PC側はUSBポートに接続し、マイコン側はJTAG端子(コネクタ)に接続します。

RXマイコンでは、ルネサス エレクトロニクス社が提供する「E2エミュレータ」、「E2エミュレータLite」が利用できます。

E2エミュレータLite

ルネサス エレクトロニクス社純正のJTAGエミュレータです。
CS+やe2studioなど、ルネサス エレクトロニクス社が提供するツールに最適化されており、RXマイコンのほか、RAマイコンやRLマイコンにも対応しています。上位版としてE2エミュレータがあります。

E2エミュレータLite
「E2エミュレータLite」と「AP-RX72N-0A」の接続

2.FITを利用したユーザープログラムの作成手順

FITを利用すると、ソフトウェア開発の初期段階での負担を大幅に軽減できます。
FITモジュールの設定操作はスマート・コンフィグレータを用いて行います。

スマート・コンフィグレータでは、必要なFITモジュールを設定すると、ドライバ、ミドルウェアを含むCソースコードを自動で生成しますが、最初のうちは設定に戸惑うかもしれません。そのため、まずは設定済みのサンプルをベースに開発をはじめることをお勧めします。

今回は、RX72Nを搭載したCPUボード「AP-RX72N-0A」とサンプルプログラムを使用して、説明します。

  1. (1)スマート・コンフィグレータの設定
  2. (2)FITモジュールの準備
  3. (3)FITモジュールの設定と出力
  4. (4)ユーザーアプリケーションのプログラミング

(1)スマート・コンフィグレータの設定

AP-RX72N-0Aのサンプルプログラムをダウンロードし、サンプルプログラムをCS+で起動します。CS+を起動すると、「My Renesasへログイン」ウィンドウが表示されますので、登録済みのアカウントでログインを行ってください。ログインしない場合、FITモジュールが出力できません。

My Renesasへログイン

サンプルプログラムを開き、「プロジェクト・ツリー」ウィンドウの「スマート・コンフィグレータ(設計ツール)」をダブルクリックしてスマート・コンフィグレータを起動します。

スマート・コンフィグレータを起動

スマート・コンフィグレータが起動すると次のような画面が表示されます。

スマート・コンフィグレータ起動画面

(2)FITモジュールの準備

1.FITモジュールのダウンロード

FITモジュールをインストールするために「コンポーネント」を選択し、「コンポーネントを追加」アイコンをクリックします。

コンポーネントを追加

「コンポーネントの追加」ウィンドウが表示されたら「最新版のFITドライバとミドルウェアをダウンロードする」をクリックします。

最新版のFITドライバとミドルウェアをダウンロードする

必要なFITモジュールが含まれる「RX Driver Package」のバージョンを選択してダウンロードしてください。

RX Driver Packageダウンロード

リスト中に目的のバージョンなどの FITモジュールがない場合、手動でFITモジュールをダウンロードして、スマート・コンフィグレータに追加することもできます。

2.FITモジュールの展開と格納

今回のサンプルではV1.26を使用しています。「FITモジュールのダウンロード」の選択リストにないため、別途ダウンロードして、手動でインストールします。FITモジュールはルネサス エレクトロニクス社「RX Driver Package」のページに公開されていますので、必要なバージョンを選択してダウンロードしてください。
https://www.renesas.com/jp/ja/software-tool/rx-driver-package

ルネサス エレクトロニクス社「RX Driver Package」旧バージョン情報 過去のRX Driver Packageをダウンロード

FITモジュールをスマート・コンフィグレータの参照パスに格納します。
スマート・コンフィグレータのFITモジュールダウンロード画面にある「モジュール・フォルダー・パス」を確認します。

モジュール・フォルダー・パス

エクスプローラーで確認した「モジュール・フォルダー・パス」をエクスプローラーで開き、あらかじめ展開したFITモジュールのファイルをコピーします。

ファイルコピー

3.スマート・コンフィグレータの再起動

最新の状態に更新するため、スマート・コンフィグレータを再起動します。
再起動後、「コンポーネントの追加」ウィンドウにて手動でコピーしたFITモジュールのバージョンが表示されていれば成功です。

FITモジュール BSPVer5_52のデータ

(3)FITモジュールの設定・出力

1.FITモジュールの設定

必要なFITモジュールがインストールできれば、あとはユーザープログラムに必要なデバイスドライバ・ミドルウェアを設定・出力するだけです。「コンポーネントの追加」ウィンドウにて必要なドライバを選択して、「次へ」ボタンまたは「終了」ボタンを押します。(追加するドライバによってどのボタンが有効になるかが変わります。)

ソフトウェアコンポーネントの選択

スマート・コンフィグレータ画面上にデバイスドライバが追加されたら、コンポーネントタブ内で詳細の設定を行います。

ソフトウェアコンポーネント設定

2.コードの生成

設定がすべて完了したら、「コードの生成」ボタンを押します。ユーザープログラムにデバイスドライバやミドルウェアが出力されます。

コードの生成

サンプルプログラムではプロジェクト・ツリーウィンドウの「Smart Configurator」下にデバイスドライバやミドルウェアが追加されます。

プロジェクト・ツリーウィンドウ

以上で、サンプルプログラムをベースにユーザープログラムのひな型が完成します。

(4)ユーザーアプリケーションのプログラミング

ユーザープログラムのひな型が完成したら、必要なアプリケーション部分を作成します。アプリケーションからFITモジュールのAPIを呼び出すことで、デバイスドライバやミドルウェアが機能します。

CMTドライバの初期化、SCIドライバの初期化

コーディング完了後は、ツールバーにある「ビルドボタン」でビルドを実行できます。

ビルドボタン

ビルドが終わったら、「ダウンロードボタン」を押して、CPUボードへプログラムのダウンロードを開始します。

ダウンロードボタン

プログラムダウンロード後は、CS+上のデバッグ画面を操作して、プログラムが仕様通りに動作しているか確認します。

動作確認
デバッグ画面

本コラムではFITモジュールにフォーカスして説明してきましたが、スマート・コンフィグレータではCPUのピン設定やクロック設定などもGUIで設定することができます。ぜひお試しください。

スマート・コンフィグレータ クロック設定
クロック設定画面
スマート・コンフィグレータ 端子設定
端子設定画面

製品のご案内

本コラム以外にも開発にお役立ていただける技術情報をアプリケーションノートとして公開しております。
ご興味のある方は、ぜひ製品をご利用ください。

  • ※ArmおよびCortexは、米国および/またはその他の地域におけるArm Limited(またはその子会社)の登録商標です。
  • ※記載されている会社名、製品名は、各社の登録商標または商標です。
  • ※記載の内容は改良のため、予告なく変更する場合がございます。