メインコンテンツまでスキップ
Knowledgebase
Home
Renesas Electronics Japan - Knowledgebase

Synergyプロジェクトを新規に作成する方法

最終更新日:2017/07/05

Question:

Synergy プロジェクトを新規に作成する方法は?

Answer:

本ガイドでは、統合システム開発環境e2 studioを使用して、Renesas Synergy™ ボード上で動作可能なSynergyプロジェクトを新規に作成する方法を説明します。
Synergy用のプロジェクトの新規作成ごとに、以下の手順を行ってください。
本ガイドの内容を修得することで、Renesas Synergy™ ボード上で動作する基本的なSynergyプロジェクトが作成できるようになります。

手順
プロジェクトの初期設定(コンフィギュレーション)
1.まず初めにe2studio ISDEをオープンして、ワークスペースディレクトリを選択します。
2.File -> New -> Synergy Projectの順に進みます。
3.任意のプロジェクト名を入力し、ツールセット(デフォルト設定はGCC ARM)を選択します。
4.有効なライセンスファイルを選択します。この一覧には、過去に使用したすべてのライセンスファイルの配置場所が記録されています。一覧が空の場合は、Q&Aの「where to get a Synergy Software Package license file」に従ってください。
5. 次に、ターゲットボードを選択する必要があります。特定の開発用途、またはStarter Kit向けに作成されたプロジェクトは、通常、他のボード上で実行することが出来ないため、ご注意ください。ノンカスタムボードが選択された場合、 deviceフィールドは自動入力されます。

6.ツールチェーンの追加オプションも用意されていますが、GCCについては変更しないことを推奨します。
フィールドに何も存在しない場合は、GCC ARM組み込みツールチェーンが正しくインストールされ、登録されたかご確認ください(e2studioインストール中に尋ねられます)。

7.Finalタブでは、お客様のコード作成向けにプロジェクトのテンプレートを選択することができます。また、ほとんどのアプリケーションには、ボードに特化したBoard Support Packageの使用が効果的です。
追加プロジェクトの参考例をSynergyギャラリーからダウンロードされた場合、それらも同様に一覧に表示されます。

Synergyプロジェクトコンフィギュレータを使用する
初期設定により、お客様のプロジェクトの基本的なディレクトリ構造が作成され、Synergyプロジェクトコンフィギュレータが自動的に開きます。

・Summary画面は、選択したソフトウェアコンポーネント、ターゲットボード、およびターゲットデバイスに分かれています。

・BSPタブを使用することにより、別ボードにボードサポートパッケージの別バージョンをリプレースすることが できます。ただし、プロジェクトに含まれているコンポーネントの中には、新しいターゲットボードに対応できないものがあることをご留意ください(グラ フィックLCDプロジェクトをS7からS3のボードに移動する場合など)。
画面下半分にあるPropertiesタブを選択することで、ハードウェアの動きが調整できます。
RTOS(HAL/CommonだけがThreadsタブ内のスレッドではない)を使用される場合は、コンフィギュレーション中でエラーが発生しないように、RTOS being used をThreadXに設定してください。

・Clocks画面では、クロック発生回路モジュールの詳細なコンフィギュレーションが提供されます。ほとんどのプロジェクトでは、これらの設定はデフォルト値のままにしてください。

・Pinsは、端子構成(コンフィグレーション)ファイルを作成するために使用します。チップパッケージの接続部の大部分は、多くのペリフェラルで使用できます。
グラフィックLCDやプッシュボタンスイッチなどの外部ペリフェラルを使用する場合は、端子を接続し、ソースコードから動作およびアドレスを指定できるよう適切な特性(方向、プルアップ、駆動能力、および出力レベル)に設定する必要があります。

JTAG端子は、切り離すとプログラマおよびデバッガがボードにアクセスできなくなりますので、開発中は常時接続されている必要があります。

・Threadsタブは、お客様のプロジェクト内容をコンフィギュレーションする上で中心となる場所です。ここ では、追加スレッドを作成することが可能で(したがって、ThreadX RTOSが有効化される)、その際は、ドライバ、フレームワーク、およびRTOSオブジェクト(キューやイベントフラグなど)が取り込まれます。

各項目にはそれぞれ独自の設定がありますが、それらは画面下半分に表示されているパネル内のPropertiesタブで調整することができます。
プロジェクトにコンポーネントを追加することでも、Componentsタブは有効になります。
プロパティの一部は、ICUタブの設定項目に影響しますます。

・ICUセクションを使って割り込みコントローラを調整することにより、一部のシステムハードウェアイベントに対応することが可能になります。
所定のドライバまたはフレームワーク向けプロパティのコンフィギュレーションを行う際は、Threadsタブでも同様に行えます(ただし割り込み能力がある場合のみ)。

・Componentsペインには、インストールされているSynergyサポートパッケージで利用可能なすべてのモジュールの一覧が表示されます。
異なるバージョンのSSPを2つ以上インストールすると、所定のモジュールを2つのバージョンのSSPの中から選択できるようになります。
選択ボックスはプロジェクトに機能を組み込むために使用しますが、ThreadsタブのModulesセクションに同じエントリを読み込むと、この組み込みは自動実行されます。

プロジェクトを設定後は、プロジェクト設定をエクスポートしてコンパイル可能なCコードに変換するため、Generate Project Contentボタンを押してください。

Synergyプロジェクトのディレクトリ構造を理解する
プロジェクトのコンテンツは、その種類と目的に応じて別々のフォルダに分類されます。
・srcフォルダ:システムを起動して動作させると、実行用のユーザコードが格納されます。
synergy_genフォルダ:Synergyプロジェクトコンフィギュレータで生成されたファイルが格納されます。このファイルには、変更を行う度にコンフィギュレータの出力が上書きされますので、このファイルの編集は行わないようにしてください。
通常、このソースコードには選択したモジュールのAPIインスタンスおよび割り込み関数のプロトタイプを定義します。

hal_entry.cファイルは、起動プロシージャの最後に呼び出されるhal_entry関数の存在を特徴としています。
この関数はThreadX起動中には呼び出されないため、該当するのはRTOSを使用しないプロジェクトになります(1スレッドのみ:コンフィギュレータのThreadsタブ内のHAL/Common)。

new_thread_entry.cおよびその他の_entry.cファイルは、コンフィギュレータにより作成されたスレッドの内部で実行されたユーザコードを保存します。
hal_entryファイルと同様に、この関数は最後に達すると終了しますので、連続して実行される場合は、その関数内の永久ループにコードを配置することを推奨します。

・synergyディレクトリには、選択したSSPコンポーネント(HALドライバとフレームワークを含む)と同様に、ターゲットデバイス向けボードサポートパッケージ全体が保存されます。
通常、Synergyコンフィギュレータに対して変更を行うと、このフォルダのコンテンツに反映されます。

・scriptは、ターゲットデバイスのメモリ空間の事前設定に使用したリンカスクリプトファイルを保持します。このファイルは、所定のボードに対して常に同じです。

・synergy_cfgフォルダには、端子、割り込み、クロック設定ファイルなどの、ローレベルのボード設定が格納されます。
これらはコンフィギュレータで生成されますので、手動による編集は推奨されません。

・configuration.xmlは、Synergyコンフィギュレータファイルです。

・.pincfgファイルは、実際の端子設定ファイル(bsp_pin_cfg.h)を生成するためにISDEで使用されます。
各Synergyプロジェクトは、デフォルトの端子設定で作成されます。デフォルトの端子設定は、Synergyコンフィギュレータで変更可能です。

・.launch and .jlinkファイルにはプロジェクトのデバッグおよびランタイム設定が保存されますが、ユーザによる編集は、基本的に推奨されません。

以上の方法により、Synergyプロジェクトの作成が可能になります。本ガイドを繰り返しご覧いただき、e2studio ISDEの内容をご確認ください。

これでプロジェクト開発を開始する準備が整いました。Renesas Synergy組み込みプラットフォームでリアルタイムオペレーティングシステムを使用するにあたり、Running Threaded Blinky on the Synergy Platformガイドから始めることをお奨めします。

適用製品

Renesas Synergy™ プラットフォーム
Renesas Synergy™ ソフトウェア