GR-ROSE(7)-ソフトウェア割り込み

前回は、GR-ROSEを使用して、AD変換、DA変換を行いたいと思いました。前回の内容は下記のサイトを参考にしてください。

GR-ROSE(6)-AD変換、DA変換

今回はGR-ROSEを使用して、ソフトウェア割り込みを行いたいと思います。使用するハードウェアはGR-ROSEです。下記のような構成になります。

機能の概要は下記のようになります。

  • 1secタイマを作成します。
  • 1secタイマの割り込みが発生すると、ソフトウェア割り込み1を発生させます。
  • ソフトウェア割り込み1が発生すると、LED1の点灯状態を反転させます。その後、ソフトウェア割り込み2を発生させます。
  • ソフトウェア割り込み2が発生すると、LED2の点灯消灯を反転させます。

これらの処理を行うことで、LED1とLED2を1秒間隔で点滅させます。それでは、ソフトウェア割り込みを使用した機能を構築したいと思います。今回も開発環境はe2studioを使用します。

まずは、新規プロジェクトを作成します。新規プロジェクトの作成方法は、下記のページを参考にしてください。ターゲット・デバイスは、「R5F565NEHDFP」なので、「R5F565NEHxFP」に設定してください。

RX(3)-RS232通信

プロジェクト・エクスプローラーに新規プロジェクトが追加されました。中央には、スマート・コンフィグレータが開かれると思います。まずはクロックの設定を行っていきます。クロックの設定は、下記のサイトを参考にしてください。

GR-ROSE(5)-RS232通信

クロックの設定が完了したら、コンポーネントを追加していきます。まずは、PORTの設定をします。PORTの設定は、記のページを参考にして下さい。

RX(3)-RS232通信

GR-ROSE(6)-AD変換、DA変換

前回は、GR-ROSEとFTDIのICを接続して、RS232通信の機能を構築しました。前回の内容は下記のサイトを参考にしてください。

GR-ROSE(5)-RS232通信

今回はGR-ROSEを使用して、AD変換、DA変換を行いたいと思います。また、前回のようにFTDIのICも使用して、RS232通信も行います。下記のような構成になります。

下記の2つのコマンドを用意します。

  • READ
  • WRITE,xxxx

機能の概要は下記のようになります。

  • READコマンドでAD変換した値を読み出します。
  • WRITEコマンドを使用してDA値を設定します。
  • AD変換の入力ピンとDA変換の出力ピンは接続されているので、DA変換で出力した値をAD変換して読み出せるような機能になります。

それでは、AD変換、DA変換、RS232通信を使用した機能を構築したいと思います。今回も開発環境はe2studioを使用します。

まずは、新規プロジェクトを作成します。新規プロジェクトの作成方法は、下記のページを参考にしてください。ターゲット・デバイスは、「R5F565NEHDFP」なので、「R5F565NEHxFP」に設定してください。

RX(3)-RS232通信

プロジェクト・エクスプローラーに新規プロジェクトが追加されました。中央には、スマート・コンフィグレータが開かれると思います。まずはクロックの設定を行っていきます。クロックの設定は、下記のサイトを参考にしてください。

GR-ROSE(5)-RS232通信

クロックの設定が完了したら、コンポーネントを追加していきます。まずは、シリアル通信の設定を行います。シリアル通信の設定は、下記のページを参考にしてください。

RX(3)-RS232通信

次に、D/A コンバータを追加します。コンポーネントの追加画面から、D/A コンバータを選択て、次へボタンを押します。

GR-ROSE(5)-RS232通信

前回は、e2studioで作成したファームウェアをGR-ROSEに書き込んで動作をさせてみました。前回の内容は下記のサイトを参考にしてください。

GR-ROSE(4)-e2studio schetch

今回は、RS232通信の機能を構築したいと思います。下記のようにFTDIのICが搭載されている基板と、GR-ROSEを接続して通信を行います。

下記の4つのコマンドを用意します。

  • L1,ON
  • L1,OFF
  • L2,ON
  • L2,OFF

機能の概要は下記のようになります。

  • L1,ON コマンドを実行するとLED1が点灯します。
  • L1,OFF コマンドを実行するとLED1が消灯します。
  • L2,ON コマンドを実行するとLED2が点灯します。
  • L2,OFF コマンドを実行するとLED1が消灯します。

この機能は、以前、「Renesas Starter Kit+ for RX65N-2MB」を使用して作成してみた機能ですが、もっと小型なGR-ROSEでも動作させてみたいなと思い、再度作成することにしました。

それでは、RS232通信機能を構築したいと思います。今回も開発環境はe2studioを使用します。

まずは、新規プロジェクトを作成します。新規プロジェクトの作成方法は、下記のページを参考にしてください。ターゲット・デバイスは、「R5F565NEHDFP」なので、「R5F565NEHxFP」に設定してください。

RX(3)-RS232通信

RX(23)-TCP/IPプロトコル 通信(noblocking)

前回、TCP/IPを使用した通信機能を構築してみたいと思います。下記のページが前回の内容になります。

RX(22)-TCP/IPプロトコル 通信

前回はは、接続要求や、受信待ちを実施すると、F/Wの処理自体を待ちにするようなF/Wにしました。このような処理でもよいですが、接続要求や受信待ちをするときに、F/Wの処理を待ちにしたくない場合もあると思います。

今回は、F/W処理を止めないようなTCP/IP通信機能を構築したいと思います。構築したF/WはGR-ROSEに書き込み動作させたいと思います。統合開発環境は「e2studio」を使用します。

今回は下記のような機能を構築しようと思います。

  • IPアドレスはDHCP機能で割り当ててもらう
  • 接続要求待ちをするTCPサーバー
  • 文字列を受信すると受信した文字列を相手側に送信する
  • 1を受信するとLEDを点灯する。
  • それ以外を受信するとLEDを消灯する。
  • 2台まで接続できるものとする。

PC側のアプリケーションは、TeraTermで動作確認しました。

それでは、機能を構築していきたいと思います。新規プロジェクトの作成を行います。新規プロジェクトの作成は下記のページを参考にしてください。

RX(3)-RS232通信

上記のページでは、ターゲット・デバイスを「R5F565NEHDFC」に設定しています。今回使用するマイコンは、「R5F565NEHDFP」なので、「R5F565NEHxFP」に設定してください。

RX(22)-TCP/IPプロトコル 通信

今回は、TCP/IPを使用した通信機能を構築してみたいと思います。構築したF/WはGR-ROSEに書き込み動作させたいと思います。統合開発環境は「e2studio」を使用します。

TCPプロトコルは、Ethrenet フレームのデータの部分に保存して、送受信されます。下記のページにてEthrenetフレームの動きを確認していただくと、作業の効率があがると思います。

RX(21)-Ethernetフレーム通信

今回は下記のような機能を構築しようと思います。

  • IPアドレスはDHCP機能で割り当ててもらう
  • 接続要求待ちをするTCPサーバー
  • 文字列を受信すると受信した文字列を相手側に送信する
  • 1を受信するとLEDを点灯する。
  • それ以外を受信するとLEDを消灯する。

PC側のアプリケーションは、TeraTermと以前構築したTCPクライアントのアプリケーションで動作確認しました。

TCPクライアントのアプリケーションに関しては、下記のページを参照してください。

C#言語(3)-TCP通信(クライアント編)

それでは、新規プロジェクトの作成を行います。新規プロジェクトの作成は下記のページを参考にしてください。

RX(3)-RS232通信

上記のページでは、ターゲット・デバイスを「R5F565NEHDFC」に設定しています。今回使用するマイコンは、「R5F565NEHDFP」なので、「R5F565NEHxFP」に設定してください。

RX(21)-Ethernetフレーム通信

今回は、Ethernetフレームを使用した通信機能を構築してみたいと思います。Ethrenet フレームには、DXI規格(Ethrenet V2.0)とIEEE802.3規格があるようです。

DXI規格は、下記のような構成になっています。

IEEE802.3規格は下記のようになります。

物理層では、緑色、青色、オレンジ色の部分が対象となります。データリンク層では、青色とオレンジ色の部分が対象になります。

今回、構築する機能では、DXI規格を使用します。F/W内では、青色の部分(宛先MACアドレス、送信元MACアドレス、タイプ、データ)を設定して、Ethrenet フレームを送信します。

今回は、「RX65N」が搭載されている「GR-ROSE」ボードを使用して機能を構築します。GR-ROSEを2個をLANケーブルで接続して通信します。統合開発環境は「e2studio」を使用します。

下記ののような機能を構築します。

  • 2秒ごとにEthernet フレームを送信します。
  • Ethrenetフレームを受信したらデータをRS232通信でPCに送信します。

それでは、機能を構築していきたいと思います。まずは、新規プロジェクトの作成を行います。新規プロジェクトの作成は下記のページを参考にしてください。

RX(3)-RS232通信

上記のページでは、ターゲット・デバイスを「R5F565NEHDFC」に設定しています。今回使用するマイコンは、「R5F565NEHDFP」なので、「R5F565NEHxFP」に設定してください。

AmazonWebService(7)-ポート 443を使った証明書によるクライアント認証でMQTT接続(GR-ROSE)

ポート8883、ポート8443を使用しましたが、企業のファイアウォールや一部のホームルータは、デフォルトでは、HTTPS の標準ポート 443 以外のすべてのポートで、制限することが多いので、そのような環境では、正しく動作しません。その時に、ポート443を使用します。「RX65N Cloud Kit」を使用して、ポート443を使った証明書によるクライアント認証でMQTT接続を行いました。同様に「GR-ROSE」でもポート443を使った証明書によるクライアント認証でMQTT接続を実施したいと思います。

RX65N Cloud Kitの時は、下記のページのように、ソースコードの追加、修正がありましたが、GR-ROSEに関しては、一行修正すれば、ポート443を使った証明書によるクライアント認証でMQTT接続ができます。

AmazonWebService(5)-ポート 443を使った証明書によるクライアント認証でMQTT接続

それでは、ポート443を使った証明書によるクライアント認証でMQTT接続ができるようにソースコードを修正していきたいと思います。

AmazonWebService(6)-Amazon FreeRTOS動作確認(GR-ROSE)

前回まで、RX65N Cloud Kitに、Amazon FreeRTOSを使用して、AWS(
Amazon Web Service)とデータの送受信をしました。今回は、GR-ROSEに、Amazon FreeRTOSを組み込んで、AWSとデータの送受信をしたいと思います。最初のプロジェクトファイルの読み出し以外は、RX65N Cloud Kitの手順とほぼ同じだと思いますので、下記のページが参考になると思います。

AmazonWebService(4)-Amazon FreeRTOS動作確認

RX65N Cloud KItの時は無線を使用しましたが、GR-ROSEでは、Ethernetを使用してみようと思います。GR-ROSEは無線でもできますが、今回は、Ethernetを使用しようと思います。それでは、まずはプロジェクトを統合開発環境(IDE)にインポートします。IDEは、e2studioを使用します。

e2studioを起動後、[ファイル]→[インポート]を選択して、インポート画面を開きます。既存プロジェクトをワークスペースへを選択して、「次へ」ボタンを押します。

GR-ROSE(4)-e2studio schetch

今回はe2studioで作成したファームウェアをGR-ROSEに書き込んでみたいと思います。出荷時はGR-ROSEのRXマイコンにUSBファームウェアが書き込まれています。リセットボタンを押すことでストレージとなり、binファイルをコピーするとユーザーアプリケーションとして実行されるようになっています。このbinファイルがArduinoライクなスケッチで作成したファイルになります。今回は、このUSBファームウェアをイレースして、別のファームウェアを書き込みたいと思います。

まずは、書き込みファームウェアを作成します。Timerを使用して、LEDを点滅するファームウェアを作成しようと思います。

それでは、新規プロジェクトの作成を行います。新規プロジェクトの作成は下記のページを参考にしてください。

RX(3)-RS232通信

上記のページでは、ターゲット・デバイスを「R5F565NEHDFC」に設定しています。今回使用するマイコンは、「R5F565NEHDFP」なので、「R5F565NEHxFP」に設定してください。

プロジェクト・エクスプローラーに新規プロジェクトが追加されました。中央には、スマート・コンフィグレータが開かれると思いますので、入出力ポートのコンポーネントとタイマーのコンポーネントを追加・設定していきます。追加、設定の方法は下記のページを参考にしてください。

RX(2)-タイマーLED点滅

コンポーネントの追加・設定ができましたら、コード生成ボタンを押します。プロジェクトツリーの中に、コードが生成されました。それでは、main関数、r_Config_TMR0_TMR1_cmia0_interrupt関数にコーディングしていきます。コーディングの内容は、下記のページを参考にしてください。

RX(2)-タイマーLED点滅

コーディングが完了しましたら、書き込みを行います。書き込みは、Renesas Flash Programmerを使用して行います。Renesas Flash Programmerは下記のページよりダウンロードできます。

http:// https://www.renesas.com/jp/ja/products/software-tools/tools/programmer/renesas-flash-programmer-programming-gui.html

GR-ROSE(3)-RS485

今回はGR-ROSEを使用して、RS485通信機能を作成しようと思います。前回(下記のサイト)でも述べましたが、GR-ROSEはさまざまなインターフェイスを搭載しております。

GR-ROSE(1)-動作確認

RS485を搭載している基板を探している時に、GR-ROSEを見つけました。今回は、RS485通信機能を使用して、LEDのON_OFFを実現します。

それでは、IDE for GRの実行して、USBケーブルでPCとGR-ROSEを接続しておきます。

GR-ROSEのスケッチでは、Serial7クラスを使用して、RS485通信を行います。まずは、シリアル通信のボーレート、ポートの設定を行います。シリアル通信のボーレート、ポートの設定は下記のように、beginメソッドを使用します。