みなさん、こんにちは。「Arm® Cortex®-Mコア搭載RAファミリ初心者講座」の第3回をお届けします。
この連載は、ルネサスエレクトロニクス(以降、ルネサス)のArm Cortex-M搭載RAファミリ(以降、RAファミリ)について、製品のコンセプトから、各シリーズの特長と強み、開発環境、パートナソリューション、実際の使い方などについて解説して行きます。
今回は「サンプルプログラムでRAファミリを動かしてみよう」です。
はじめに
はじめに、RAファミリ用の統合開発ツールe2studioの起動から、実際のセットアップ、内容、使い方を説明します。
次に、実際の評価キットのEK-RA6M5評価ボードを使って、e2studioのテンプレートの中に準備されている「LED点滅」のサンプルプログラムを動作させる実際の作業を解説します。(FSPライブラリーなどに準備されている他のサンプルプログラムを動作させる場合は、次回以降に解説します。)
e2studioの初めての起動
Windowsのスタートメニューの「Renesas RA v x.y.z」(x,y,zはバージョン)フォルダからe2studioを開きます。(すでにWindows11が公開されていますが、今回はWindows10を使用した手順を説明します。)
ワークスペースのフォルダを指定する画面が出るので、デフォルトか任意のフォルダを入力します。
ログ/使用状況データ収集の画面が出ますので、チェックボックスを2つともオンにして[Apply]をクリックします。
My Renesasログインの画面が現れるので、My Renesasアカウントのメールアドレスとパスワードを入力して、ログインします。
セキュア・ストレージ – パスワードのヒントが必要の画面が出ます。
「A master password was created in Eclipse Secure Storage. If you ever need recover your password, you need a password hint. Do you want to provide a password hint?」は、
「マスターパスワードはEclipse Secure Storageで作成されました。パスワードを回復する必要がある場合は、パスワードのヒントが必要です。パスワードのヒントを提供しますか?」の意味です。[はい]をクリックします。
パスワードのヒントを入力する画面が出ますので、パスワードのヒントを入力します。
Confirm an agreementの画面が出ますので、チェックボックスをオンにして、[Yes]をクリックします。
Welcome to e2studioの画面が表示されたら、画面の右上隅にある[隠す]アイコンを選択して画面を隠します。
プロジェクトを作成する
ここからRenesas RAプロジェクト(RAファミリ用プロジェクト)を作っていきます。
(1)Templatesの起動
メニューバーの「ファイル」→「新規」→「C/C++ Project」→「Renesas RA」のように移行します。
Templates for Renesas RA Projectという新しいウィンドウが表示されます。Renesas RA C/C++ Projectを選択し、[次へ(N)>]をクリックします。
プロジェクトコンフィギュレータが起動します。プロジェクトの名前を入力します。(今回は「test」と入力します。)
Device and Tools Selectionの画面で、ボードを選択します。EK-RA6M5を選択すると、デバイスがR7FA6M5BH3CFCに自動で切り変わります。EK-RA6M5を選択しても、切り変わらない場合は、手動で設定します。ツールチェーンは、「GNU Arm Embedded」を選択します。
(2)e2studioのTrustZoneプロジェクトの選択
Project Type selectionの画面で、TrustZoneプロジェクトか、セキュアでないTrustZone(Flat(Non-TrustZone))プロジェクトかを選択できます。今回は、開発環境をテストしたいだけなので、Flat(Non-TrustZone)プロジェクトを選択します。
Build Artifact and RTOS Selectionの画面では、設定はそのままにして、Build Artifact Selectionで[Executable]を選択し、[RTOS Selection]で[No RTOS]を選択します。FreeRTOS™は、必要に応じてRAコンフィギュレータで後からアクティブにできます。
Project Template Selectionの画面で、[Bare Metal – Blinky]を選択します。[Bare Metal – Blinky]はEK-RA6M5ボード上の3つのLEDを点滅させるサンプルプログラムです。今回はLEDを点滅させるだけが目的ですので、サンプルパッケージを使用すれば十分です。[終了(E)]をクリックします。
もし、自分でプログラムコードを入力したい場合やライブラリーのサンプルプログラムを実行したい場合は[Bare Metal – Minimal]を選択します。こちらの使い方は、次回以降に解説します。
これで、コンフィギュレータに、正しいデバイスとEK-RA6M5ボードのBoard Support Library、およびサンプルプロジェクトを含むテンプレートの情報が登録されます。
(3)FSP Configuration Perspectiveを開く
コンフィギュレータは、必要なファイルをすべて抽出し(少し時間がかかります)、FSP Configurationパースペクティブを開くかどうかを尋ねますので、[パースペクティブを開く]をクリックします。
(4)e2studioのスタンダードパースペクティブ
ここで、簡単にパースペクティブの説明をします。
e2studioのスタンダードパースペクティブで、プログラムの開発やソースコードの編集ができます。デフォルトでは、エディタが中央に開き、Project Explorerビューが左側に開き、プロジェクトを管理できます。
(5)コンフィギュレータ
e2studio内のコンフィギュレータは、RAファミリマイコンの固有のデバイスオプションを介してソフトウェア開発者をグラフィカルにガイドし、その使用方法をアドバイスします。(例:ピンの選択や競合の警告など)また、コンフィギュレータはスタートアップコードを生成したり、プロジェクト内にFSPソフトウェアコンポーネントを配置したりします。
コンフィギュレータにはプロジェクトコンフィギュレータとFSPコンフィギュレータの2つがあります。
①プロジェクトコンフィギュレータ
プロジェクトコンフィギュレータは、新規プロジェクトをゼロから作成するプロセス、またはコンフィギュレータが提供するテンプレートから作成するプロセスを実行します。使用するツールチェーン、使用するデバイスとボード、サンプルプロジェクトを作成するかどうかなど、プロジェクトの設定を選択できます。
この処理の最後に、プロジェクトが自動的に生成され、e2studioのワークベンチに追加されます。最後のコンフィギュレータ画面で[Finish]をクリックすると、すべての設定が完了します。
②FSPコンフィギュレータ
FSPコンフィギュレータがパースペクティブに表示されると、選択したボードとデバイス、使用されているツールチェーンなどのプロジェクトの読み出し専用のサマリが表示されます。プロジェクト内のさまざまなソフトウェアコンポーネントがバージョン番号とともに一覧表示されます。
ページの下部にあるショートカットを使用すると、YouTube™のRenesas FSPプレイリストに素早くアクセスできます。このプレイリストには、RAファミリに関するいくつかの短いビデオ、Renesas.comのRenesas FSP Supportページ、およびFlexible Software Packageのユーザーズマニュアルが含まれています。
(6)プロジェクトの読み込み、書き出し
①プロジェクトの読み込み
インポートウィザードを呼び出すには、プロジェクト・エクスプローラビューで右クリックしてメニュー表示からインポートを選択するか、メニューバーに移動してファイル→インポートを選択して開く方法の2つがあります。
②プロジェクトの書き出し
エクスポートウィザードを呼び出すのにも、2つの方法があります。1つ目は、エクスポートするプロジェクトを右クリックし、エクスポートを選択します。2つ目は、メニューバーに移動し、ファイル→エクスポートを選択する方法です。
(7)コードの生成
コンフィギュレータで、FSPとプロセッサのほとんどのオンチップハードウェアの設定ができますが、今回使用するテンプレートのサンプルプログラム場合、すべてがすでに設定されているので、ウィンドウの右上隅にあるGenerate Project Contentという緑の矢印をクリックすれば、コンフィギュレータは必要な設定ファイルをすべて作成し、プロジェクトに追加します。
サンプルコードをビルドする
(1)プロジェクトのビルド
上部のツールバーの左隅にある小さな「ハンマー」記号をクリックすると、プロジェクトがビルドされます。完了すると、「0 errors , 0 warning(エラー0、警告0)」がステータスとして表示されます。これで、すべてが設定され、プロジェクトを開始する準備が整いました。
(2)EK-RA6M5評価ボード
①EK-RA6M5評価ボード
EK-RA6M5は、RA6M5シリーズ用の評価キットです。176ピン、LQFPパッケージでTrustZone、200MHz Arm Cortex-M33コアを搭載したR7FA6M5BH3CFCが実装されています。
②EK-RA6M5評価ボードとPCの接続
PCとEK-RA6M5評価ボードをUSBケーブルで接続すると、USBから給電されて、ボードが起動します。新品の場合、動作するとすぐに、あらかじめプログラムされたデモプログラムが実行され、1秒間隔で青色のLED1が10%の光度で点滅します。
緑色のLED2は、フル強度で常時オンになり、赤色のLED3はオフになります。ユーザーボタンS1を使用すると、LED1の強度を10%から50%に、90%から10%に切り替えることができます。押しボタンS2を作動させるたびに、LED1の点滅周波数を1Hz→5Hz→10Hzに、そして1Hzに戻すことができます。
この動作が確認できれば、PCとEK-RA6M5評価ボードは正常に接続されていることになります。
③接続エラーの場合
デバッグポート以外のオレンジ色のデバッグLED(LED5)が点滅し続けると、評価キットはJ-Linkドライバを検出できていません。
その場合は、基本的なことですが、まず、USBケーブルをボード右側のデバッグポートJ10に接続されていることを確認してください。左辺のUSB Full SpeedポートJ11に接続されていても、電源が供給されてLEDは同じ動作をしますが、J-Linkがつながりません。
PC側のチェックとしては、デバイスマネージャを開き、Universal Serial Busコントローラツリーを展開して、J-Linkドライバがそこにリストされていることを確認してください。もし、インストールされていない場合は、カスタムインストール機能を使用してプラットフォームインストーラを再実行してください。
デバッグをする
(1)プロジェクトのダウンロード
試行用に作成されたWebサイト(www.renesas.com/ra-book)からプロジェクトをダウンロードして、ワークスペースにインポートします(任意のフォルダでOK)。デバッグ記号の横にある小さな矢印をクリックし、ドロップダウンリストボックスから[デバッグの構成]を選択します。
構成の作成、管理、および実行の画面で、左側のツリービューのRenesas GDB Hardware Debuggingの下のTest Debug_Flatを強調表示します。このプロジェクトの名前(Test)を選択します。
プロジェクトを選択すると、デバッグ構成の新しい画面が表示され、その個々のオプションがすべて表示されます。今回は、何も変更する必要はありません。下部の[デバッグ]をクリックすると、デバッガが起動します。
補足
インターネットのファイアウォールが邪魔をしてGDBサーバーにアクセスできないエラーが発生する場合があります。この場合はインターネットセット「自宅や職場のネットワークなどのプライベートネットワーク」チェックボックスをオンにして、「アクセスを許可」をクリックします。その際、ユーザーアカウント制御ダイアログが表示される場合があります。管理者パスワードを入力して、「はい」をクリックします。さらに、ダイアログボックスが現れることがあります。その場合、[Yes]をクリックしてください。
(2)プログラムの実行
デバッグパースペクティブが開くと、デバッガはプログラムカウンタをプログラムのエントリポイントであるリセットハンドラに設定します。再開ボタンをクリックすると、プログラムはmain()関数内のhal_entry()の呼び出し行で次の停止まで実行されます。
再開ボタンをもう一度クリックすると、プログラムは実行を継続し、評価キットの青色、緑色、赤色のLED(LED 1~3)が1秒間隔で同時に点滅します。
(3)プログラムの停止
プログラムの実行を停止するには、切り離しボタンをクリックしてプログラムの実行を停止し、デバイスをデバッガから切り離します。
これで、RAファミリ用の統合開発ツールe2studioを起動し、セットアップして、実際の評価キットEK-RA6M5評価ボードに実装されたLEDを点滅させるところまでを、テンプレートに準備されているサンプルプログラムを使って確認できました。
ここまで来れば、FSPライブラリーなどで準備されているサンプルプログラムを実行することや、自分でプログラムコードを作成して実行することなどの環境が整ったことになります。
まとめ
1. e2studioを初めて起動する際には、ワークスペースのフォルダを指定する場所やログ/使用状況データ収集の設定などの項目があります。最初に、これらの設定内容について確認しました。
2. e2studioでプロジェクトを作る際に必要なツールやデバイスの選択方法などの設定手順を確認し、Renesas RAプロジェクト(RAファミリ用プロジェクト)を作成する基本操作を確認しました。
3. EK-RA6M5評価用ボードのテンプレートで準備されているサンプルプログラムを使って、実装されている3つのLEDが1秒間隔で点滅動作をすることを確認しました。
次回予告
次回は、センサボード(PMOD™)をEK-RA6M5評価用ボードにつないで、温度と湿度を測定します。
まず、センサボードの種類と機能を紹介し、温度と湿度を測定するサンプルプロジェクトをe2studiにインポートして、そのプログラムの内容を解説し、その後、実際にセンサボードを動作させる手順を解説します。最終的に、ツール上で温度と湿度を確認します。
こちらも是非
“もっと見る” Cortex-M|RAファミリ編
「クイックコネクトIoT」でIoTシステムをサクッと構築してみた
最初にクイックコネクトIoTについて説明し、次に、実際の動作環境、センサ仕様を解説し、その後、実際にRAファミリを動作させる手順を説明します。最後は、実際の評価キットRA6M5評価ボードを使って、ツール上で温度と湿度を確認します。
IoTシステムを素早く構築するための「Flexible Software Package (FSP) 」とは
Flexible Software Packageには、通信やセキュリティのようなドライバやスタックが含まれています。これらのドライバやスタックは、ミドルウェアスタック、個々のユーザーアプリケーション対応のRTOSに依存しないハードウェア抽象化レイヤ(HAL) ドライバで提供されます。
ルネサスの最新Armマイコン「RAファミリ」とは
第1回では、RAファミリの紹介から始めて、従来のルネサス32ビットマイコンRXファミリ、Renesas Synergy™との棲み分けを簡単に説明します。そして、RAファミリの概要と併せて、パートナ企業のサポート内容などを説明し、最後に、各シリーズ(RA2、RA4、RA6、RA8シリーズ)について説明します。