goo blog サービス終了のお知らせ 

ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

RenesasのRX63Nとe2studio、Peripheral Driver Generatorを使って、組み込みしてきた!

2018-05-03 12:08:59 | Weblog
ルネサスのチップRX63N(GR-SAKURAに入っているのと同じ)の評価ボードと、統合開発環境e2studio(本当は2は上付きらしい)、
デバイスドライバ部分をGUIで設定できるPeripheral Driver Generator2を使って、組み込みチックなプログラムを作成する
セミナーに参加したので、開発方法をメモ

【環境】

・評価ボード:RX63N100ピン(R5F563NBDxFP)を搭載したボード(MTK-RX63N)
  →たぶんGR-SAKURAもこれ積んでる?ただ、セミナーのボードはピンクじゃなかった

・統合開発環境+コンパイラ:e2studio+RXコンパイラ
  →e2studioは無料みたい。RXコンパイラは有償のもの。
   無料で行うにはKPIT GNU Toolsをツールチェーンとして使う。詳しくは、以下のサイト参照
  e2studioの導入~KPIT GNU Tools
https://www.embedded-property.net/2014/02/e2studioの導入%EF%BD%9Ekpit-gnu-tools/

・デバイスドライバ関係:Peripheral Driver Generator2
  →Peripheral Driver Generator2でいろいろ設定すると、ソースを自動生成してくれる。無償。
   実際には、Renesas Peripheral Driver Libraryを利用している。詳しくは、以下のサイト参照
https://www.renesas.com/ja-jp/products/software-tools/software-os-middleware-driver/software-package/renesas-peripheral-driver-library.html


【手順】

(1)e2studioで、以下のことを行う

   (1-1)新規プロジェクトの作成
     メニュー→新規→CProject
     出てきたダイアログで
      プロジェクト名:適当に入力
      デバッグハードウェア:Segger JLink(RX) にしたけど。。。
      ターゲット:RX600→RX63N→RX63N100pin→R5F563NBDxFP)

     いくつかのダイアログを「次へ」で送り、最後のほうのダイアログの一番下
      ハードウェア設定関数の生成: C/C++ソースファイル

 →ここで、ソースコードが自動生成され、プロジェクトができる。とりあえず、ここまで


(2)Peripheral Driver Generator2で、以下のことを行う

   (2-1)新規プロジェクトの作成
     メニュー→「ファイル」→「新規作成」
     出てきたダイアログで
       ディレクトリ: ワークスペースのパス\上記プロジェクト名\src
       シリーズ:RX600
       グループ:RX63N
       型番  :R5F563NBDDFP

   (2-2)各種デバイスの設定を行う
     ・クロック設定(必須):systemタブ→システム→クロック発生回路(左側)
       内部クロップ:PLL
       メイン:12
       VCO:192
      (スクロールして)
       システムクロック 96
       周辺モジュールA 96
       周辺モジュールB 48
       フラッシュIF   48
      →RX63Nの場合。具体的な数値は、それぞれのターゲットによって違う

     ・消費電力:LPCタブ
       消費電力低減機能にチェック
       メインクロック安定化にチェック 1310727サイクル
       PLL安定化にチェック       2097152サイクル

    ※そのほかは、使用するデバイスに応じて必要なら設定する

     ・GPIO:I/Oタブ→ポート 端子P40などの番号の上2桁目(P40ならポート4,PA2ならポートA)
       使う端子をチェック、入力か出力かを設定、プルダウン、高駆動はお好みでチェック

      →GPIOはPDRというレジスタを使う。なので、関数名にPIDR(入力)PODR(出力)が付く

    ・割り込み(IRQ): ICubタブ
        使いたいIRQをチェック、そこの割り込み関数をコーディングすることになる。
       →使いたいピン:接続しているスイッチによって、IRQの番号が決まる

     ・SPI:RSPIタブ RSPI0
        このチャンネルを使用する チェック
        モードはクロック3線式マスターモード等
         →4線式だとSSLアサート設定
        バッファは適当に(128など)、ベースビットレートも適当に
        転送終了まで待ちたい場合は、転送方法にその旨設定

     ・I2C:RIICタブ
        このチャンネルを使用する
        ビットレートは適当に
        受信・送信完了まで待つのであれば、送受信方法のマスタ受信・送信方法をそれぞれ設定


     ・タイマー(CMT):CMTタブ→ユニット0 CMT0
       このチャンネルを使用するにチェック
       カウントソース 内部クロック(PCLK/512)にすると、
       割り込み周期  500 mSecにたしか、なってくれた気が・・・
         それでよければ、そのまま、違ったら設定
       コンペアマッチ 割り込みを使用する と割り込み使える

     ・リアルタイムクロック(RTC):RTCA0タブ
        リアルタイムクロックを使用するにチェック
        周期割り込み 割り込み周期を適当に設定(デフォルト2秒、1秒にしたければ設定変更)


     ・PWM(デューティ値を変化):TPUタブ TPU0
        このチャンネルを使用するにチェック
        動作モード:PWMモード2
        カウンタ要因:TGRDのコンペアマッチ
        カウントソース、タイマー動作の秒数は適当に
       (スクロールして)
        TGRA
          レジスタ初期値:適当に
          アウトプットコンペア TIOCAnの 端子 0 コンペア 1 カウンタ 0
       (スクロールすると)
          波形が出る

     ・A/D変換(S12AD):S12AD0タブ
        このユニットを使用する
        使用するユニットだけチェック
        変換開始トリガ  ソフトウェアトリガ
        割り込み A/D変換終了後にするならチェック

      
   (2-3)以下の操作を行って、デバイスドライバ生成
       メニュー→「ツール」→「ソースの生成」

          メッセージが出たら

       メニュー→「ツール」→「e2studioプロジェクトの設定」

          ここで、セクションから、何かを除け、アドレスを、なんどかD0にしろなどの指示が出る



(3)e2studioに戻って、以下のことを行う

    (3-1)リンカーオプションの設定
       メニュー→プロジェクト→プロパティ

         出てきたダイアログ
       (左)C/C++ビルド→設定→ツール設定→Linker→セクション
        (2-3)で出てきたものの除去、アドレス変更してOK

    (3-2)ソースコードの変更

      hardwareSetup.cの修正:初期化を行う

      プロジェクト名.cの修正:main()の記述

    (3-3)ビルド
       メニュー→プロジェクト→すべてビルド をすると、すべてビルドしてしまうので、
       プロジェクトを右クリック→右メニュー→ビルド
       すればいいかも

   ※ビルドが成功すると、実行できる

(4)ボードを差し込み、e2studioでデバッグ実行

   (4-1)ボードをUSBケーブルでつなぐ
     →もっと前につながないといけないかも?初めからつないでた。

   (4-2)デバッガで実行
     プロジェクトを選択して右クリック→右メニュー→デバッグ→Renesas GDB なんとかかんとか

     パースペクティブ切り替える旨でるのでOK(はい?)

     再開(緑の四角に三角形)ボタンを2回クリック
      →ボードから使えるようになる

     中断ボタン()で中断させて、変数のところにマウス持って行って値見れる

     終了(■)で終了

   (4-3)プログラミングに戻る場合は、右上の「C」のアイコンをクリック
この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« たしかに外国籍の派遣の人、I... | トップ | 古谷徹&三石琴乃ボイスで日... »
最新の画像もっと見る

Weblog」カテゴリの最新記事